MD5 дешифраторы или атака на хеш
Цель:
Рассказать о способах расшифровки.
Научить молодых хакеров узнавать пароли(либо другие данные) зашифрованные алгоритмом MD5(и не только MD5) самим, основываясь на реальных примерах.
Показать пользователям, что нада внимательнее относиться к выбору пароля.
Последовательность:
Будут по-очерёдно рассмотрены методы нахождения пароля от лёгкого(по моему мнению) до сложного(в плане скорости и т.д.).
О MD5:
MD5 (англ. Message Digest 5) — 128-битный алгоритм хеширования, разработанный профессором Рональдом Л. Ривестом из Массачусетского технологического института (Massachusetts Institute of Technlogy, MIT) в 1991 году.
Предназначен для создания «отпечатков» или «дайджестов» сообщений произвольной длины.
О расшифровке:
На самом деле называть это расшифровкой будет некорректно, так как при этой так называемой расшифровке мы(точнее программы) подбираем такой же хэш, начальное значение которого нам известно.
Пример: у нас есть хэш 0575c8d592fb7b088226750aceec2b4e, нам надо узнать начальное его значение, также у нас есть слово tutorial хеш которого 0575c8d592fb7b088226750aceec2b4e, итак, мы берём наш хеш 0575c8d592fb7b088226750aceec2b4e и пытаемся найти такой же, начальное значение которого известно, по совпадению мы получаем ответ,что есть такой хэш и что этому хэшу соответствует значение tutorial.
Имейте ввиду, что чем длиннее по символам начальное значение тем больше времени(кроме словарного перебора) вам(а точнее программе) придётся потратить на его нахождение.
Методы "расшифровки":
Подбор по словарю.
Подбор по радужным таблицам
(http://ru.wikipedia.org/wiki/%D0%A0%D0%B0%D0%B4%D1%83%D0%B6%D0%BD%D0%B0%D1%8F_% D1%82%D0%B0%D0%B1%D0%BB%D0%B8%D1%86%D0%B0).
Брут
(http://ru.wikipedia.org/wiki/%D0%9C%D0%B5%D1%82%D0%BE%D0%B4_%D0%B3%D1%80%D1%83% D0%B1%D0%BE%D0%B9_%D1%81%D0%B8%D0%BB%D1%8B).
Что нам нужно для "расшифровки":
Сайт для проверки на возможное совпадение.
Программа для проверки совпадений, по словарю, радужным таблицам, бруту. Необязательно одна программа, вы поймёте почему.
Словарь, радужная таблица.
Сайты:
http://crackfor.me/ Правда нету простых паролей как на других сервисах, но простые пароли очень быстро можно узнать самим, об этом ещё пойдёт речь.
Итак, для примера заходим на этот сервис и вписываем в поле для хэша наш хэш 0575c8d592fb7b088226750aceec2b4e, жмём поиск и получаем такой ответ: пароль tutorial найден в нашей базе данных!
Было найдено совпадение в базе данных и выведено начальное значение хэша 0575c8d592fb7b088226750aceec2b4e = tutorial.
Программы:
Именно при помощи программ можно получить начальное значение хэша 3 способами.
Способ первый, подборка по радужным таблицам
Радужные таблицы и программа которая будит проверять и сравнивать их чтобы получить начальное значение которое нам нужно.
Итак, что касается таблиц, мы либо скачиваем их, либо генерируем.
Найти где скачать можно в google.
Я использую программу в пакет которой также входит и генератор. Она называется Cain & Abel и скачать её можно от сюда http://www.oxid.it/cain.html
Скачали, установили (при инсталляции спросит, устанавливать ли winpcap, выберите да).
В главной папке програмы есть подпапка с названием Winrtgen, там генератор таблиц, запускаем его. Жмём Add Table, вот тут надо настраивать какие таблицы будим иметь.
На момент написания статьи я генерировал таблицы 4-7 символов, вот мои настройки, поиграйтесь, там есть все данные(я описал на картинке) о вашей будущей таблице, они меняются при разных настройках.
Итак жмём ок, и ещё раз ок, пошла генерация. Кстати вы можете останавливать и продолжать её когда захотите. Вроде всё.
Приступим к нахождению, запускаем программу, идём во вкладку Cracker и слева выбераем MD5 Hashes. Видим пустой список, нажимаем на нём правую кнопку мышки и выбераем Add to list. В открывшемся окне вписываем наш хэш, жмём ок, хэш появился в списке. Жмём правую кнопку на нашем появившимся хэше и выбираем Cryptanalysis Attack via Rainbow Tables. В открывшимся окне жмём Add Table и добавляем наши таблицы. Жмём start, ждём, если в таблице будит нужное значение мы получим ответ.
Второй способ, подборка по словарю
Сойдёт таже программа, только нужны словари, их можно взять от сюда http://www.passwords.ru/dic.php http://www.passwords.ru/dic.php
Некоторые словари с расширением .dic, меняем на .txt
Всё как и в 1 способе, только вместо Cryptanalysis Attack via Rainbow Tables выбираем Dictionary Attack, в открывшемся окне видим пустой список, жмём правую кнопку на нём и Add to list.
Выбираем наши словари. Жмём start, также перед стартом можем поиграться с галочками, они описаны в примерах. Если будет найдено совпадение мы получим интересующий нас ответ.
Последний способ, БРУТ
Для брута также можно использовать Cain & Abel, но это медленно. Я использую barswf, пока что самый быстрый брут MD5 какой я только видил, брутит миллионами хэшей в секунду.
Скачать можно тут http://3.14.by/ru/md5
Используем через CMD.
Пример: C:\>barswf.exe -h 0575c8d592fb7b088226750aceec2b4e -c a
Программа начнёт брутить для хэша 0575c8d592fb7b088226750aceec2b4e только маленькие буквы, чтоб увидеть какие можно задавать параметры с описанием, наберите C:\>barswf.exe
Советую сразу проверять на цифры, а потом на цифры и буквы.
Для практических занятий пробуйте зашифровывать что-нибуть тут http://www.md5encryption.com/ и потом пробовать узнать всеми способами.
Created/Updated: 25.05.2018