МЕНЮ

Как работает симметричное шифрование? Хеширование паролей и примеры атак.Zip File, мамкины хаЦкеры. В прошлом видео мы с вами начали разбиратьтеоретические основы криптографии. Разобрали базовые определения и методы шифрования, а также рассмотрели принципы ассиметричных криптосистем. Нынче, настало время поговорить о симметричной истории, познакомиться с существующими алгоритмами и выяснить для чего так крайне необходима операция по хэшированию. Ну и с грамотным хранением ваших паролей, тоже разумеется разберёмся. Так что если у вас были трудности с домашним заданием по взлому пароля посредством HashCat, обязательно досмотрите данное видео до конца. Погнали.

Симметричное шифрование

Суть симметричного шифрования заключается в том, что у нас есть некий секретный ключ с помощью, которого мы осуществляем шифровку сообщения, которое передаём по незащищённому каналу.

Ну а на той стороне, принимающий абонент с помощью этого же ключа расшифровывает полученное сообщение. Нюанс заключается в том, что этот секретный ключ ещё надо как-то передать и не позволить скомпрометировать.

Преимущества такого способа шифрования в его скорости, простоте реализации и изученности. Т.е. с ним всё просто, понятно и его суть можно объяснить даже маленькому ребёнку.

А главный недостаток, как я уже говорил ранее, заключается в потребности иметь защищённый канал для передачи ключа и необходимости сгенерировать его для каждого абонента в цепочке.

Одни и те же ключи применять нельзя. Т.к. в этом случае все смогут читать сообщения друг-друга, а это, как понимаете, далеко не всегда оправдано. Вернее практически никогда не оправдано и не применимо на практике.

Методы атак

Атаковать эту историю можно, как с помощью уже знакомого нам метода криптоанализа, т.е. с помощью математического метода взлома, так и по сторонним каналам посредством атак на метод реализации алгоритма.

К теоретическим методам криптоанализа на основе текстов относят открытые варианты текста и шифротекст. Это достаточно маленький объём атак, которые на практике применяются крайне редко.

В реальной жизни хаЦкеры применяют брутфорс, бумеранг, атаку посередине связанные ключи и прочие интересные вещи. На сегодняшний день существует множество теоретических атак на симметричные криптосистемы.

Многие из них сложно реализуются на практике или подходят только для устаревших шифров. Однако разработчики новых алгоритмов обязаны учитывать теоретические уязвимости, обусловленные существующими атаками.

Так что база всегда остаётся плюс-минус единой. А ключевыми атаками остаются атаки, связанные с ошибками или особенностями практической реализации.

К атакам по сторонним каналам относят:

● Атаки по времени;

● По ошибкам вычислений;

● По электромагнитному излучению;

● И атаки по энергопотреблению.

Но как показывают научные исследования, большинство уязвимостей в криптографии зафиксированы всё-таки на уровне приложения, когда оно написано без привлечения специалистов по криптографии (так называемые ошибки встраивания).

Более подробно про эти, а также другие популярные уязвимости и способы защиты от них, вы можете узнать, записавшись на курс «Белый хакер» в онлайн-школе SkillFactory.

Белые хакеры или как их ещё называют пентестеры - это специалисты которые тестируют на проникновение сервера, приложения, сайты и базы данных. Находят уязвимости в защите, после чего устраняют их.

Данный курс был разработан специально для тех, кто хочет освоить современную и востребованную IT-специальность, при этом не тратить на обучение несколько лет. Программа разработана с упором на практику.   .

Отработаете навыки взлома и кибератак используя специальные виртуальные стенды имитирующих отдельные компьютеры и телефоны. Поучаствуете в CTF-соревнованиях, это соревнования по спортивному хакингу.

Опыт участия в них крайне ценится работодателями. Помимо этого, у Skillfactory есть карьерный центр, который поможет составить резюме и подобрать подходящие вакансии.

Ну а там и до оффера от серьёзных компаний не далеко. Главное озаботиться созданием крутого портфолио и дело в шляпе. Разумеется белой). Да, кстати. Совсем забыл.

Весь декабрь в Скилфэктори будет действовать новогоднее спецпредложение - а это означает, что вы можете начинать учиться уже сейчас, а первый платеж сделать только через 3 месяца.

За это время можно поучаствовать в командном проекте и получить еще больше опыта. А по промокоду КУРЕЦ вы помимо прочего получите скидку до 60%! Так что не тратьте время зазря.

Переходите по ссылочке в описании и ознакомьтесь со всеми подробностями. Сделай свой шаг к достойному трудоустройству прямо сейчас. Skillfactory учат тех, кого берут на работу. 

Алгоритмы (DES, AES)

Ну что, переходим к самому вкусному, а именно алгоритмам. Начнём с DES. Алгоритм достаточно старый. Суть в том, что берётся исходный текст, бьётся на блоки, затем происходит начальная перестановка и многократное шифрование с помощью ключа.

Далее осуществляется конечная перестановка и в итоге получается шифртекст. Недостатков у алгоритма хватает. Основной заключается в том, что ключ используется слишком короткий и его относительно быстро и просто можно взломать.

Для того, чтобы усилить технологию DES криптографы начали применять комбинацию различных алгоритмов с добавлением дополнительных ключиков. Из этого получился 2DES и 3DES.

Режимов работы у DES достаточно много. Каждый из этих методов применяется для разных технологий и операций. Так, например сцепление блоков шифра CBC выглядит следующим образом.

Есть исходный файл М, который разбивается на блоки. Далее происходит преобразование. Эс ноль у нас — это некий начальный вектор. Он держится в секрете. Между каждым сообщением и вектором делается операция XOR.

Затем происходит операция DES и получается первое сообщение, которое в свою очередь будет являться вектором для следующей итерации. И таким образом алгоритм повторяется.

Аналогичный образом работает обратная связь по шифротексту CFB и обратная связь по выходу OFB. Разница в режимах работы не особа глобальна. Различается лишь область их применения.

ECB больше подходит для шифровки ключей, CBC для аутентификации, а OFB для шифрования спутниковых систем. Помимо этого DES можно использовать для интерактивного шифрования при обмене данными в тонком клиенте. Шифровки криптоключей и даже шифровании файлов передаваемых на землю со спутника.

Хотя тут, я бы лучше использовал минимум AES. Данный алгоритм разработали в 1997 году. Он симметричный, блочный и имеет гораздо большую длину ключей в сравнении с DESкой.

Блоки данных разбиваются на массивы, размер которых зависит от длины блока. В зависимости от этих размеров блока и ключа определяется количество раундов. И после, выполняется целых 4 преобразования подстановки и перестановки.

Короче, для своего времени, это была прямо мощь. Высокая скорость работы, минимальные требования к ресурсам и возможность распараллеливать часть операций, сделали данный алгоритм одних из самых популярных в начале двухтысячных.

Ну а к середине нулевых, уже появился, такой монстр, как RC4, потоковый симметричный алгоритм основанный на использовании гаммирования, операции XOR и генераторе псевдослучайных чисел.

RC4 стал дефакто стандартом для индустрии за счёт своей приближённости к принципам совершенно криптостойного шифра. Его преимущества в высокой скорости работы и переменном ключе, а уязвимости в том, что все ключи так или иначе связаны и один ключевой поток используется не единожды.

Подводя промежуточный вывод, можно сказать, что основной особенностью алгоритмов симметричного шифрования является то, что все они используют ключ относительно небольшой длины и могут быстро шифровать большие объемы данных.

При данном типе, отправитель и получатель используют один и тот же секретный ключ. А при расшифровке происходит аутентификация отправителя и получателя, так как только им одним известен ключ.

Ну и важно помнить, что использование одного ключа для всех абонентов сети недопустимо по соображениям безопасности. Этим последним правилом нельзя пренебрегать не при каких обстоятельствах

Хэш переводится как, рубить в фарш. Соответственно процесс хеширования – это необратимое преобразование информации неограниченной длины в значение фиксированной длины, т.е. хеш.

Иногда результат хеширования ещё называют дайджестом или хеш-значением. Основные свойства, а вернее сказать особенности хеш-функции вы сейчас видите на экране.

Если вкратце, то хеширование можно использовать для контроля целостности и вероятность равенства двух хешей от двух разных файлов крайне мала, но чисто теоретически вполне возможна.

Такая ситуация будет называться коллизией. Сразу скажу, что в своей практике, я подобного явления не встречал. Видов хеш-функций существует довольно много.

Есть даже отечественные разработки аля Стрибог. Из наиболее популярных это семейство MD, все модификации которого на сегодняшний день признаны не безопасными.

Ну и SHA-1, SHA-2. Последний сейчас используется практически повсеместно ввиду отсутствия какой-либо адекватной альтернативы. Хотя может совсем уж упоротые и Стрибога используют. Напишите, если среди вас есть адепты отечественных продуктов.

Хранение паролей

Тема хранения паролей пожалуй наиболее злободневная. Пароли постоянно компрометируют, сливают из базы в базу и есть даже сервисы, где вы можете узнать в скольки именно источниках ваш пароль точно уже засветился.

В 2021 году, в момент когда очень много людей стало работать в удалённом формате, произошла одна из самых больших утечек пассвордов под названием RockYou.

После просмотра видоса можете почитать об этой истории поподробней, если не мониторили в тот момент новости. Вообще хранить пароли, как в открытом, так и в зашифрованном виде – это конечно не лучшая из идей.

Гораздо эффективней с защитой пассвордов работает хранение в виде хеша. Т.е. пользователь создаёт аккаунт на сайте, пароль от его учётки кешируется и сохраняется в базе данных.

Затем при попытке входа пароль снова хешируется и сравнивается с хешем лежащем в БДшке. И если хешики совпадают, доступ пользователю на сайт разрешается.

Понятное дело, что хеши тоже поддаются взлому и различным атакам. Самый простой способ – это сделать хеш базы данных паролей и сравнить результаты с базой данных хешей.

Теоретически, можно использовать коллизии, как второй вариант атаки на хеш, но на практике использовать коллизии для атаки крайне сложно.

Ну и радужные таблицы. Они же заранее подготовленные таблицы, содержащие миллионы значений с часто употребляемыми паролями (имена, даты рождения).

От обычной таблицы они отличаются ускоренным алгоритмом поиска. На хакерских форумах в Дарке их раньше продавали практически даром. Сейчас даже не знаю, остались ли у кого-то подобные базы. 

Если соберёте нормально лайков под этим роликом – могу вытащить их со своего старого жёсткого и выложить в телеграме. Так что жмякайте палец вверх, если испытываете нужду в таких инструментах.

Но честно говоря это не панацея. Для того, чтобы радужная таблица утратила смысл, достаточно изменить в хеше всего один символ, например, просто добавив немного соли впереди функции.

Дополнительно усложнить создание таблицы паролей и их подбор можно с помощью алгоритма Bcrypt. Он характеризуется многократным использованием хеш-функции, а также возможностью замедления алгоритма. 

Чем медленнее хешируется пароль, т.е. чем больше проходит циклов хеширования, тем соответственно больше придется потратить времени на его взлом. Всё максимально логично.

Следующей итерацией алгоритма Bcrypt является Scrypt и в нём уже помимо защиты от FPGAшных и ASIC-чипов уже реализовано противостояние PLD. Это такие логические интегральные схемы, позволяющие относительно лихо вскрывать пароли.

Почему относительно? Да потому что с приходом квантовой криптографии, эти детские погремушки так или иначе уйдут в историю. Осталось, как говорится, немножечко ещё потерпеть и тогда заживём.

Окей, друзья. Нынче мы продолжили тему о криптографии и решаемых ею задачах, а также рассмотрели популярные алгоритмы симметричного шифрования и хеш-фукнции.

Если понравилось видео – то не забудьте отблагодарить меня лайком и написать в комментах о том, какую тему вы бы хотели увидеть в дальнейших сюжетах.

Ну и само-собой не забывайте о выполнении домашних заданий. К каждому ролику из цикла «информационная безопасность с нуля до джуна» на сайте академии матёрых IT-спецов я выкладываю задания, выполняя которые вы можете прокачать себя не только теоретически, но и практически.

Ответы на эти задания проверяю я лично, в индивидуальном порядке, когда находится свободное время. Пока что это бесплатно, но курс практически мной закончен, так что в ближайшее время лавочка с халявой возможно закроется.

Так что не упускайте возможность поучиться, пока кому-то не всё равно на ваше образование. Ну и конечно, не забывайте оформить подписку и прожать колокольчик, если по каким-то причинам ещё не сделали этого ранее.

С вами, как обычно, был Денчик. До новых встреч, мои кайфные друже. Всем пока.

Не можешь понять, куда делись видео по взломам и хакингу? Они переехали в наш уютный паблик в телеге

telegram chanel

Хочешь больше контента? Подписывайся на YouTube-канал!

Курс «Диплом за неделю»

Пособие «Библия вардрайвинга»

Курс Cisco «CCNA: Introduction to Networks»

© 2024. IT-спец. Денис Курец.