Забыли пароль? Как проходил взлом хэшей на PHDays 2012

Забыли пароль? Как проходил взлом хэшей на PHDays 2012

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

Рецепт приготовления неизвестного нам пароля: извлекаем мелко порубленную информацию (хэш) из cookie, дампа БД и т. п., затем обрабатываем хэш различными инструментами — вплоть до получения желанного набора символов. Чтобы время расшифровки не превысило возраст нашей Галактики, необходимо учитывать множество нюансов. Успех зависит от опыта взломщика, от алгоритма шифрования, от наличия «соли», от используемых утилит и аппаратного обеспечения (современным программам для расшифровки хэшей необходимы мощные видеокарты). Как работают с хэшами лучшие хакеры мира, вы узнаете из материала о конкурсе Hash Runner, который проходил на PHDays 2012 .

На подобных соревнованиях сохраняется, как правило, господство ряда отдельных команд: Hashcat , Inside Pro , john-users ... И не удивительно, поскольку это сообщества разработчиков, тестировщиков и пользователей, использующих наиболее популярные инструменты для взлома хэшей. Секрет успеха — не только в огромном опыте, хорошо подготовленных командах и доступе к внушительным вычислительным ресурсам, но и в возможности «на лету» модифицировать инструментарий — в зависимости от текущих потребностей.

Вышеперечисленные команды приняли активное участие в конкурсе Hash Runner на PHDays 2012. Два дня участники сражались за главный приз — видеокарту AMD Radeon HD 7970 (конкурс стартовал 30 мая в 10:00 и закончился 31 мая в 18:00).

Правила

К конкурсу допускался любой интернет-пользователь, и в конечном итоге в соревновании сошлись 19 участников из разных стран.
Конкурсантам предлагался перечень хэш-функций, сгенерированных по различным алгоритмам (MD5, SHA-1, BlowFish, GOST3411 и др.). Очки за каждый взломанный хэш начислялись в зависимости от сложности алгоритма, правил генерации и использованного словаря. Чтобы стать победителем, нужно было набрать как можно больше очков за ограниченное время, обогнав всех конкурентов.

Участники

В конкурсе приняли участие как представители России, так и зарубежные хакеры. Борьба развернулась главным образом между командами InsidePro Team 2012, Teardrop и Xanadrel.

Стратегии

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

  • fayettefayette
  • jeweljewel
  • hamlethamlet

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

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

Xanadrel (Франция), который раньше выступал в составе команды Hashcat, на этот раз решил испытать себя в качестве человека-оркестра и принял участие в конкурсе в одиночку.

Используемое участником аппаратное обеспечение: PC (Intel Core i7 950, 1x AMD Radeon HD5770 и 1x AMDRadeon HD 7970) и Intel Core i5 2300k для 4 LM хэшей.

Софт:

  • Hashcat;
  • oclHashcat-plus;
  • ophcrack;
  • rcracki_mt;
  • passwordspro;
  • maskprocessor.

Взлом паролей производился с помощью атак перебором по словарю с составлением basic/common-правил в Hashcat и passwordspro для GOST-хэшей. За весь конкурс участнику не удалось взломать ни одного хэша DES, phpbb3, ssha или Wordpress (они имели необычную длину и их не удалось взломать с помощью Hashcat).

Уже под конец конкурса Xanadrel вспомнил о брутфорсе и с его помощью добыл парочку паролей вида 6{x#_a или 9Mv)0. Попадались пароли в форме dd<month>yyyy (например, «08march1924»): для таких случаев пришлось создать правила для добавления или удаления года (дня) и отдельный файл с названиями месяцев.

Оригинал райтапа Xanadrel [eng]

В отличие от Xanadrel , который сражался в одиночку, парни из команды Insidepro работали сообща. Их стратегия была проста: пытаться атаковать любой алгоритм при первом удобном случае с использованием любых техник (читай: брутфорс, словари).

Список аппаратного и программного обеспечения, используемого командой:

Описание: C:\Users\alashkov\Desktop\pics\habr_post\hashrunner\insidepro.png

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

Ребята полагались в первую очередь на ПО собственной разработки — InsidePro’s Extreme GPU Bruteforcer и PasswordsPro, поскольку эти утилиты поддерживали хэши Wordpress «без соли» — уже из коробки. Однако один из членов команды прямо в ходе конкурса смог пропатчить JtR для поддержки хэшей «без соли», что дало возможность атаковать подобные хэши еще успешнее.

Подробности прохождения конкурса в райтапе [eng] команды Insidepro .

Еще одним лидером соревнования стала команда Teardrop, которая была образована специально для участия в конкурсе теми участниками команды Hashcat , кто смог принять в нем участие. Для работы ребята использовали следующее ПО:

  • Hashcat;
  • oclHashcat-plus;
  • oclHashcat-plus custom build to crack saltless PHPass and DCC2;
  • Hashcat-utils and Maskprocessor;
  • John the Ripper;
  • rcracki_mt for LM;
  • PasswordsPro for GOST.

В ходе конкурса участникам команды пришлось вносить изменения в код утилит oclHashcat-plus и John the Ripper, чтобы загружались PHPass- и BFcypt-хэши соответственно. Подробности — в посте на форуме команды Hashcat .

Статистика

Немного красивых графиков. Вот так выглядит график прогресса участников конкурса по времени.

Описание: C:\Users\alashkov\Desktop\pics\habr_post\hashrunner\graph.png

Прогресс команд по взломанным хэшам:

Описание: C:\Users\alashkov\Desktop\pics\habr_post\hashrunner\cracked_hashes.png

Типы хэшей, которые лучше всего поддавались участникам:

Описание: C:\Users\alashkov\Desktop\pics\habr_post\hashrunner\most_cracked_hashes.png

Взломанные хэши лучших пяти команд

Teardrop

Описание: C:\Users\alashkov\Desktop\pics\habr_post\hashrunner\tdr.png

InsidePro Team 2012

Описание: C:\Users\alashkov\Desktop\pics\habr_post\hashrunner\insideprograph.png
Xanadrel

Описание: C:\Users\alashkov\Desktop\pics\habr_post\hashrunner\xanadrej.png

John-users

Описание: C:\Users\alashkov\Desktop\pics\habr_post\hashrunner\john.png

Xyzxyz

Описание: C:\Users\alashkov\Desktop\pics\habr_post\hashrunner\xyz.png

Победители

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

Долгое время лидировала команда InsidePro Team 2012, но ребята из Teardrop сумели вырвать победу и оторваться на 11 000 очков. Пьедестал почета выглядит так:

Teardrop (Hashcat)

Стоит отметить, что победители смогли подобрать пароли лишь к 11% всех хэшей соревнования.

Все участники конкурса получили памятные подарки от организаторов форума и спонсоров мероприятия. Специальный приз — видеокарта AMD Radeon HD 7970 — достался чемпионам из Teardrop (Hashcat). Еще раз поздравляем!

P. S. На официальном сайте форума PHDays 2012 размещены ссылки на видео докладов и слайды презентаций.

Если вам нравится играть в опасную игру, присоединитесь к нам - мы научим вас правилам!

Подписаться