Базовое и продвинутое использование oclHashcat (Hashcat) для взлома WPA/WPA2 паролей из хендшейков

Базовое и продвинутое использование oclHashcat (Hashcat) для взлома WPA/WPA2 паролей из хендшейков

Life-Hack [Жизнь-Взлом]/Хакинг

#Обучение

Hashcat поставляется в двух вариантах: 

  •  Hashcat – Инструмент по восстановлению паролей использующий центральный процессор 
  •  oclHashcat – Инструмент использующий графический процессор 

Многие алгоритмы, поддерживаемые Hashcat, могут быть взломаны в более короткое время, при использовании хорошо документированных возможностей GPU. Для этого и предназначена программа oclHashcat, при её использовании достигается значительный прирост в таких алгоритмах как MD5, SHA1 и других. Тем не менее, не все алгоритмы могут быть ускорены использованием GPU. Bcrypt — хороший этому пример. Из-за таких факторов как ветвление зависимостей данных, сериализация и память (упомянуты только некоторые), oclHashcat не является всеобъемлющей заменой для Hashcat.

oclHashcat и Hashcat доступны для Linux, OSX и Windows. Причём если мы говорим о скорости взлома с использованием графического процессора, то скорость перебора хешей на одном компьютере на разных ОС (на Linux и Windows) будут идентичными, поскольку на рабботу GPU система не влияет. 

Hashcat предустановлена в Kali Linux. 

oclHashcat, как скромно замечают сами авторы, это самый быстрый инструмент по восстановлению паролей, использующий графический процессор. Программа бесплатна, хотя она содержит проприетарную кодовую базу. Доступны версии для Linux, OSX и Windows, есть варианты для использования центрального вычислительного процессора и для использования графического процессора. oclHashcat в настоящее время поддерживает огромное количество алгоритмов хеширования, включая Microsoft LM Hashes, MD4, MD5, семейство SHA, форматы Unix Crypt, MySQL, Cisco PIX и многие другие (их там сотни). Чуть меньше, но достаточно много алгоритмов поддерживает Hashcat. 

Типы атак oclHashcat 

Hashcat предлагает множество моделей атак для получения эффективного и комплексного покрытия пространства хешей. Есть следующий режимы: 

  • Атака брут-форсом (перебором) 
  • Комбинаторная атака 
  • Атака по словарю 
  • Атака по отпечаткам 
  • Гибридная атака 
  • Атака по маске 
  • Перестановочная атака 
  • Атака основанная на правиле 
  • Табличная атака 
  • Атака с переключением раскладки 

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

Взлом WPA/WPA2 паролей в oclHashcat (Hashcat) 

Зачем использовать oclHashcat для взлома файлов рукопожатий WPA WPA2? 

 Pyrit самый быстрый, когда нам нужно взломать файлы рукопожатий WPA2 WPA. Так почему мы используем oclHashcat (Hashcat) для взлома файлов рукопожатий WPA2 WPA? 

Потому что мы можем? 

Потому что oclHashcat (Hashcat) позволяет нам настроить атаку с заданными правилами и масками. oclHashcat (Hashcat) позволяет нам использовать встроенные наборы символов для атаки на файл рукопожатия WPA2 WPA. 

Более того, есть сообщения, что в системах с большим количеством видеокарт Pyrit оказывается медленнее чем oclHashcat. Автор отчёта говорит о плохой масштабируемости Pyrit. Я не могу это подтвердить или опровергуть. 

Нам нужно конвертировать файл рукопожатия (.cap), в формат .hccap, который понимает oclHashcat (Hashcat), а перед этим файл нужно очистить. Это нужно сделать обязательно, поскольку иначе ничего не получится. 

Очистка файлов .cap программой wpaclean 

Я буду показывать на примере файла с захваченным рукопожатием Narasu_3E-83-E7-E9-2B-8D.cap. 

Для ручной очистки .cap используйте следующую команду в Kali Linux:

wpaclean <out.cap> <in.cap>

Обратите внимание, что, вопреки логике, сначала идёт выходной файл, а потом входной <out.cap> <in.cap>. Казалось бы, логичнее было <in.cap> <out.cap>. Запомните это, чтобы не терять время на выяснение проблемы. 

В моём случае команда выглядит так: 

wpaclean hs/out.cap hs/Narasu_3E-83-E7-E9-2B-8D.cap

Конвертация файлов .cap в формат .hccap 

Нам нужно конвертировать этот файл в формат, понятный oclHashcat. 

Для его конвертирования в формат .hccap с помощью aircrack-ng нам нужно использовать опцию -J

aircrack-ng <out.cap> -J <out.hccap>

Обратите внимание -J это заглавная J, а не маленькая j. 

В моём случае команда следующая: 

aircrack-ng hs/out.cap -J hs/out

Атака по словарю на рукопожатие:

oclHashcat --force -m 2500 /root/hs/out.hccap /root/rockyou.txt 

Здесь: 

  •  -m 2500 — атака на WPA/WPA2 пароль 
  •  /root/hs/out.hccap — наш файл, который мы получили после очистки и конвертации 
  •  /root/rockyou.txt — словарь, по которому осуществляется перебор. 

Атака брутфорсом на рукопожатие: 

oclHashcat -m 2500 -a 3 /root/hs/out.hccap ?d?d?d?d?d?d?d?d 

Здесь: 

  •  -a 3 — атака брут-форсом 
  •  /root/hs/out.hccap — наш файл, который мы получили после очистки и конвертации 
  •  ?d?d?d?d?d?d?d?d — маска (восемь цифр) 

Продвинутые трюки с oclHashcat 

Проверка множества WPA рукопожатий в oclHashcat за раз 

Формат файла .hccap позволяет иметь множество сетей внутри одного и того же файла .hccap. 

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

Для систем Linux / OSX вам следует использовать команду наподобие этой: 

$office$*2013*100000*256*16*f557b3c23e7223e5d966aced27ad1fd4*54c6c24e58b72353f952b1fe0de746b1*c3db501ad0ac82d88ad4e8664f474eb7077eb2c81636a672aa717cfa93cba7d8:345678
$pdf$2*3*128*-1596*1*16*5692983949d33f4b4ddf6c31bd00e3f4*32*88d671fd4103cc46fc9ac48181e31b5300000000000000000000000000000000*32*6bc706ffd3413af9be7912f5966277f05254b4904513993bea4820386ca60e5f:
$pdf$2*3*128*-3904*1*16*07652f72cd2857abf65708f646ca08fa*32*3352ac091478d852687f11eae257db8400000000000000000000000000000000*32*c730fdb8cf5ff7b59c244b61b745f71ac5ba427b1b9102da468e77127f1e69d6:234567
$pdf$2*3*128*-3904*1*16*07c1fb5b68b1661cf11ade3c2585810d*32*96ef8a8c8437a050236543ceb51d586e00000000000000000000000000000000*32*cccd4459a76caf008768ac15754f5f1869423ea8e0fde12d66fb0631d35acc6d:234567
$pdf$2*3*128*-3904*1*16*516b008c0274e68d88b69562344c20d2*32*a4af4d09fa1621294392016793c1a97900000000000000000000000000000000*32*d6413e32df2e0dfead36ac3600f43a10093ac1e4319df18349417fa789898a1b:
$pdf$2*3*128*-3904*1*16*da6015d029a61a8d9e03f75bd15708c1*32*4c7c8c3f5c924568eb1027577f40031d00000000000000000000000000000000*32*3b0385c9dc4642158ab4e29308152b8868103928aa499af91fdbb48dc84cabd6:4567890
$7z$0$19$0$$8$0a80e901a82740da0000000000000000$3348097732$128$122$e1a779ef1123455b50f903575eebebdcc1dcd8a3e2a3d9e97efd783ccd3e1be06dcec7334f5c7bd21b4ad168694927924be55c96e56fdb3209b3f04244d6d18ea3f691774bc1376b1f2b5291b52988e62b030dbfad3ce36d70bbeb2433eda2a1110cd82e72dbc324a41e45a4959fb958c77a3033899feea67daa06a3fa341c33:234567

Причина этого в том, например, что в противном случае выводной файл (--outfile-o) мог бы содержать вывод одних и тех же идентичных хешей снова и снова (если разные атаки ведут к одинаковым кандидатам в пароли, которые дают совпадающие результаты). 

Это также имеет эффект на взлом хешей с солью. Если oclHashcat замечает, что все взломанные хеши связанны с определённой солью, то безопасно не создавать новые предположение для этой соли. Это означает, например, если вы имеете 2 хеша с различными солями и один взломан, скорость удваивается. Теперь если вы по каким-либо причинам перезапустите сессию, профиль помечает один взломанный хеш в качестве взломанного, а, следовательно, соль помечается как взломанная. Поэтому ваш запуск удвоит скорость угадывания. 

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

Помните, что использование файла .pot весьма различно в зависимости от идеи с которой вы используете --remove. Иметь список хешей с только не взломанными хешами здорово, но с профилем вы можете делать то же самое если вы используете переключать --left. Например, если ваша сессия взлома закончена, и вы хотите иметь список оставшихся (не взломанных), вы можете просто запустить: 

./oclHashcat64.bin --left -o leftlist.txt -m 0 hash.txt 

Теперь вы будете иметь оба: оригинальный список и список оставшихся. 

Также безопасно копировать (или добавлять) данные из одного профиля в другой. 

Я используя файл .pot намного прозаичнее — смотрю там пароли, которые забыл записать/сохранить с предыдущих взломов. 

Как конвертировать файл .hccap в .cap 

Вы можете конвертировать файлы hashcat WPA/WPA2 hccap обратно в файлы (p)cap. В этом нам поможет программа hccap2cap. Официальный её сайт: https://github.com/philsmd/hccap2cap 

Установка hccap2cap 

Зависимости 

  • компилятор gcc 
  • aircrack-ng/wireshark и т. п. Для открытия/тестирования полученного файла .cap 

Клонируем репозиторий: 

git clone https://github.com/philsmd/hccap2cap.git 

Компилируем: 

cd hccap2cap
gcc -o hccap2cap hccap2cap.c 

Использование: 

./hccap2cap <in.hccap> <out.cap> 

Если у вас нет под рукой файл hccap, то можете скачать пример: 

wget http://hashcat.net/misc/example_hashes/hashcat.hccap 

Запуск программы для конвертации файла: 

./hccap2cap hashcat.hccap hashcat_converted.cap 

Проверяем результаты: 

wireshark hashcat_converted.cap

Распределённое вычисление с oclHashcat (Hashcat) 

Справка oclHashcat имеет следующие опции для распределённого (на разных компьютерах) вычисления: 

-s,  --skip=ЧИСЛО                  Пропустить число слов
  -l,  --limit=ЧИСЛО                 Ограничиться числом слов
       --keyspace                    Показать базу пространства ключей (количество слов 
                                     в словаре или количество вариантов для маски)

Не очень много, но, на самом деле, если вы немного умеете писать Bash скрипты и знакомы с SSH, то вы вполне способны реализовать распределённый взлом с oclHashcat. 

Алгоритм следующий: 

  • подключаемся к удалённым компьютерам и проводим бенчмарк по интересующему нас алгоритму 
  • если необходимо использовать файлы (файлы хешей, словари), то закачиваем эти файлы на удалённые машины 
  • запускаем атаку на удалённых машинах, манипулируя опциями -s и -l в соответствии с данными бенчмарков 

Если вы не готовы к самостоятельному программированию, то есть готовые бесплатные решения: 

 polycat 

 PassCrackNet 

 Hashtopus 

Источник

Report Page