Андрей Смирнов
Время чтения: ~5 мин.
Просмотров: 92

Быстрое восстановление пароля по MD5-хешу методом брутфорса

Создать и расшифровать md5 online

MD5 — это алгоритм, позволяющий получить своего рода «отпечаток» исходной строки. Он спроектирован таким образом, чтобы из получившегося отпечатка нельзя было восстановить исходную строку (т.е. зашифровать можно, а расшифровать нет). Алгоритм широко используется при авторизации. Например, сайт может хранить и сравнивать только отпечатки паролей, но не сами пароли в открытом виде. Таким образом, в случае, если злоумышленник украдет базу данных сайта — он не сможет узнать исходный пароль.

В настоящее время MD5 считается устаревшим алгоритмом, т.к. он сравнительно ненадежен.

© 2013-2019 decodeit.ruОбратная связь

Начало

Алгоритм MD5 представляет собой 128-битный алгоритм хеширования. Это значит, что он вычисляет 128-битный хеш для произвольного набора данных, поступающих на его вход. Этот алгоритм разработал профессор Рональд Ривест из Массачусетского технологического института в 1991 году для замены менее надежного предшественника — MD4. Алгоритм был впервые опубликован в апреле 1992 года в RFC 1321. После этого MD5 стал использоваться для решения самых разных задач, от хеширования паролей в CMS до создания электронно-цифровых подписей и SSL-сертификатов.

О том, что алгоритм MD5 можно взломать, впервые заговорили в 1993 году. Исследователи Берт ден Боер и Антон Боссиларис показали, что в алгоритме возможны псевдоколлизии. Через три года, в 1996-м, Ганс Доббертин опубликовал статью, в которой доказал наличие коллизий и описал теоретическую возможность взлома MD5. Это был еще не взлом, но в мире начались разговоры о необходимости перехода на более надежные алгоритмы хеширования, например SHA1 (на момент написания этой статьи уже было доказано, что коллизии имеются и в этом алгоритме, поэтому рекомендую использовать SHA2) или RIPEMD-160.

Для чего применяется MD5

Технология MD5 используется как один из криптографических методов, при помощи которого не только проверяются на целостность различные данные, но и:

  • хранятся онлайн-ключи и пароли;
  • создаются веб-идентификаторы и ЭЦП;
  • выполняется поиск дублирующихся файлов и многое другое.

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

Именно для того, чтобы избежать попадания в руки мошенников, многие данные в сети и передаются в зашифрованном виде. Информации присваивается MD5 = (случайное сочетание символов), например MD5 = 214d9a2575bb130ac5f19a8531e6e5f1. Этот набор символов (после “=”) называется “хэш MD5”, или контрольная сумма исчисляемый результат. Служит данный хэш для проверки передаваемых данных на целостность.

Как это происходит?

  • При передаче массиву информации, целостность которого нужно проконтролировать, присваивается исходный хэш, исчисляемый при помощи алгоритма MD5;
  • результат фиксируется;
  • при регулярной или внеплановой проверке происходит сравнение полученной контрольной суммы с исходной;
  • результаты совпадают – повода для беспокойства нет, если же они различаются, то это говорит о постороннем вмешательстве и изменении данных.
Файлы с хэш-кодом

Свойства хеша

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

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

Хэш-функция должна использовать минимальные вычислительные ресурсы.

Самостоятельное использование MD5

Здесь существует один интересный момент – при помощи данной функции каждый пользователь может самостоятельно проверить на целостность файл, скачанный из Интернета. Для этого нужно воспользоваться специальными сервисами, к примеру, HashTab implbits.com/products/hashtab. Утилита скачивается и встраивается в свойства файла в виде отдельной вкладки. С помощью HashTab можно воспользоваться несколькими алгоритмами хэширования данных, к тому же сервис находится в свободном доступе для пользователей, применяющих ее в личных целях.

HashTab в работе

Немного о криптографии

Современная криптография включает в себя три направления: шифрование с закрытым ключом, шифрование с открытым ключом и хеширование. Сегодня мы поговорим о том, что такое хеширование и с чем его едят. В целом под хешированием понимают преобразование входных данных произвольной длины в выходную битовую строку фиксированной длины. Чаще всего хеш-функции применяют в процессе аутентификации пользователя (в базе данных обычно хранится хеш пароля вместо самого пароля) и для вычисления контрольных сумм файлов, пакетов данных и т. п. Одним из наиболее известных и широко используемых алгоритмов хеширования является MD5.

Для чего используется MD5

Во некоторых CMS этот алгоритм хеширования используется организации хранения паролей, номеров кредитных карт и другой чувствительной информации в базах данных, например MySQL или MongoDB. В случае взлома злоумышленниками этих баз, к ним в руки попадёт только бесполезный набор символов. На данный момент, формат MD5 не рекомендуется использовать для такой информации, так как есть более современные и устойчивые к взлому способы хеширования, такие как SHA512 и bcrypt.

Кроме того, MD5 используется как контрольная сумма для сравнения файлов. Полное совпадение хеша MD5 означает идентичность сравниваемых файлов, то есть у двух различных файлов не может быть одинаковых хешей. Точнее может, но чтобы получить одинаковый хеш МД5 из двух разных файлов потребуется хешировать около 6 миллиардов файлов в секунду в течение 100 лет, что практически не реально. Поэтому алгоритм MD5 часто используется в различных файлообменных сетях, торрентах, архиваторах и при создании бекапов.

Используемые источники:

  • https://decodeit.ru/md5
  • https://xakep.ru/2013/10/13/md5-hack/
  • https://lifehacki.ru/md5-rasshifrovka-onlajn/
  • https://siterost.net/page/md5-online-generator

Рейтинг автора
5
Материал подготовил
Максим Иванов
Наш эксперт
Написано статей
129
Ссылка на основную публикацию
Похожие публикации