Как установить oclhashcat в kali linux

Обновлено: 06.07.2024

В первой части статьи я в общих чертах объяснил технологию взлома паролей и описал свое оборудование, применяемое для этого. В этой же части я углублюсь в программную сторону вопроса. Мы обсудим два основных вида атак: по словарю и методом "грубой силы". Описывая каждый из них, я буду приводить примеры того, как я использовал свое ПО для атаки на phpass - алгоритм хеширования, применяемый в системах, основанных на PHP, таких, как WordPress.

Для этой статьи я создал на своем сервере "учебный" блог на базе WordPress и создал несколько учетных записей: часть со слабыми паролями, а остальные - с паролями, сгенерированными случайно. Затем я извлек из базы данных сайта хеши phpass для каждой учетной записи и записал их в файл такого вида:

Приведенные выше хеши - обычные хеши phpass, созданные из шестисимвольных паролей. Я мог бы сообщить вам сами пароли, но это лишило бы вас всей радости от самостоятельного их взлома.

Проприетарные видеодрайверы

Тех из вас, кто как и я, является приверженцем открытого ПО, этот раздел может немного разочаровать. Чтобы обеспечить аппаратную поддержку ПО для взлома, работающего у вас, вам придется установить проприетарные видеодрайверы, и для AMD, и для NVIDIA. Но если, скажем, вы уже использовали свой компьютер для добычи биткоинов, то у вас уже есть все необходимые драйверы и библиотеки, поэтому вы можете сразу переходить к разделу, посвященному Hashcat. Вообще же можно просто обратиться к HOWTO по добыче биткоинов - там описано, как установить эти самые драйверы и библиотеки.

Многие современные дистрибутивы позволяют относительно просто загрузить и установить проприетарные видеодрайверы. Например, Ubuntu подскажет вам, что эти драйверы доступны как для карт AMD, так и для NVIDIA. Многие другие популярные дистрибутивы также предоставляют возможность установки этих драйверов. В худшем случае вам придется скачать их с официальных сайтов AMD или NVIDIA и установить вручную. Существуют ясные инструкции по установке и ПО для Linux.

Кроме проприетарных драйверов вам понадобятся также AMD APP SDK с библиотеками OpenCL или библиотеки NVIDIA CUDA в зависимости от производителя вашей видеокарты.Скорее всего, вам придется загрузить эти библиотеки напрямую с сайтов AMD или NVIDIA. Установка их также не вызывает затруднений. Я, например, скачал с сайта AMD файл AMD-APP-SDK-v2.5-lnx32.tgz, распаковал его и запустил от имени пользователя root находившийся в архиве скрипт Install-AMD-APP.sh.

Hashcat

  • использует CPU и поэтому работает медленнее;
  • поддерживает самое большое количество алгоритмов хеширования.
  • использует GPU;
  • поддерживает умеренное количество алгоритмов хеширования;
  • имеет встроенную поддержку атак по словарю, по маске и методом "грубой силы".
  • использует GPU;
  • поддерживает наибольшее количество алгоритмов хеширования из всех программ семейства hashcat, использующих GPU;
  • оптимизирована для атак по словарю на многие хеши;
  • поддерживает ввод словаря через конвейер, тем самым делая возможной атаку методом "грубой силы".
  • использует GPU;
  • оптимизирована для атак на одночный хеш;
  • самая быстрая из программ семейства hashcat, но поддерживает минимальное количество алгоритмов хеширования.
  • генерирует словари, основанные на предоставленных вами образцах;
  • сама по себе не является программой взлома, но может передавать свой вывод по конвейеру программе oclHashcat-plus для атак методом "грубой силы".

Но даже имея приведенный список не всегда можно ясно понять, какую именно программу следует использовать. Основными критериями выбора будут тип взламываемого пароля и вид атаки. На страницах с описанием каждой программы приводится список поддерживаемых ею алгоритмов хеширования, а также результаты тестирования с указанием количества операций сравнения в секунду на разных типах оборудования. Зная хеш пароля вы можете обратиться к этим страницам и выяснить, какие программы поддерживают работу с вашим хешем и которая из них работает быстрее. Помимо этого советую использовать oclHashcat для атак по маске или методом "грубой силы" на несколько хешей, oclHashcat-lite - для взлома одиночного хеша или oclHashcat-plus (в моем случае это была единственная программа, использующая GPU и поддерживающая работу с имевшимся у меня хешем).

После того, как вы определитесь, какое именно ПО Hashcat будет применяться, нужно будет установить его. Это просто. Скачайте архив .7z с соответствующим программным пакетом и распакуйте с помощью 7za (этот пакет должен быть установлен в вашей системе). В распакованном каталоге находятся 32- и 64-битные версии программы как для Linux, так и для Windows. Если вы используете оборудование NVIDIA, то вам потребуются файлы, имена которых начинаются с "cuda", в противном случае - файлы, имена которых начинаются с "ocl". В каталоге также содержатся несколько примеров хешей, словарей и образцы скриптов, которые помогут вам проверить наличие всех необходимых драйверов и библиотек. Вот пример использования oclHashcat-plus для взлома хеша phpass на 64-битной системе:

А вот как выглядел вывод команды, запущенной на моей 32-битной тестовой системе:

В данном случае текст пароля был "hash234". Для работы всех команд hashcat достаточно перейти в каталог, куда вы их распаковали и запустить их оттуда. В начале вывода вы сможете увидеть какие GPU поддерживаются данной программой. Если вы имеете несколько GPU, даже если они не объединены, ПО обнаружит их автоматически. Если же GPU не будут обнаружены, вам придется проверить, правильно ли установлены проприетарные драйверы и дополнительные библиотеки.

Атаки по словарю

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

Прежде чем начать атаку по словарю м помощью oclHashcat-plus, запустите программу с ключом "--help". Так вы сможете узнать номер, соответствующий алгоритму хеширования, с помощью которого был создан атакуемый хеш. В случае phpass этот номер равен 400. Затем запустите команду еще раз и укажите номер алгоритма, файл, в который будут выводиться выявленные пароли (с помощью опции "-o"), файл с хешами и файл (или файлы) со словарями. Вот пример атаки по словарю на хеши phpass:

Если имеется несколько словарей, то можно перечислить их все в командной строке или использовать подстановочные символы оболочки. Успех атаки по словарю целиком и полностью зависит от качества словарей, но в Интернете можно найти множество хороших словарей по запросу "password cracking wordlist".

Вычисляем скорость взлома

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

В потоке вывода необходимо обратить внимание на строку, начинающуюся со слова "Speed". Как видно из примера, мой GPU способен выполнять около 350 000 сравнений в секунду и именно это число я возьму для последующих вычислений.

Например, полное количество символов латинского алфавита и цифр (A-Za-z0-9) равно 62. Если бы было нужно взломать пароль из шести символов, то пришлось бы перебрать 6 26 = 57 миллиардов комбинаций.

Перебор 57 миллиардов комбинаций на системе, способной выполнять 350 000 сравнений в секунду, занимает приблизительно 45 часов. Неплохо, но давайте теперь произведем те же подсчеты для пароля длиной в восемь символов: 6 28 = 218 триллионов комбинаций.

Со скоростью 350 000 сравнений в секунду взлом займет приблизительно 7 200 дней или 19 лет. В утешение можно отметить, что еще всего за 250 долларов атака может быть выполнена менее чем за 10 лет! Если же вы добавите еще один символ к длине пароля, то число комбинаций подскочит до 13,5 квадриллионов [в оригинале указано 7,2 квадриллиона - прим. пер.], а время, потребное для взлома - до 652 лет.

Атаки методом "грубой силы"

Итак, вы выяснили, что атака этого типа сможет завершиться еще при вашей жизни, следующим шагом нужно будет запустить maskprocessor и сообщить ему, какой именно список слов сгенерировать:

  • ?d - все цифры (0-9);
  • ?l - буквы в нижнем регистре (a-z);
  • ?u - буквы в верхнем регистре (A-Z);
  • ?s - символы.

Также можно определить собственный набор символов с помощью опции "-1" (или "-2", "-3") и затем использовать "?1" для работы с ним. Например, если необходимо перебрать все пароли, состоящие из трех символов, включающих в себя буквы в нижнем регистре и цифры, нужно выполнить следующую команду:

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

Затем я передал вывод этой команды по конвейеру на ввод oclHashcat-plus:

Как и в случае атаки по словарю, опция "-m" указывает, что взламываться будет хеш phpass, "-o" задает файл, в котором будут сохраняться "вскрытые" пароли и наконец, указывается файл, содержащий взламываемые хеши. Моему оборудованию понадобилось около двух дней для выполнения атаки.

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

Ресурсы

Кайл Рэнкин - системный архитектор, в настоящее время - президент "North Bay Linux Users' Group". Автор книг "The Official Ubuntu Server Book", "Knoppix Hacks", "Knoppix Pocket Reference", "Linux Multimedia Hacks", и "Ubuntu Hacks".

Этичный хакинг и тестирование на проникновение, информационная безопасность

Эта статья является частью цикла, в который входят следующие заметки:

  • Как установить драйвер AMD Catalyst 15.7 (ATI fglrx) на Kali Linux 2
  • Как установить AMD APP SDK в Kali Linux 2
  • Как установить CAL++ в Kali Linux 2
  • Как установить Pyrit в Kali Linux 2
  • Как установить oclHashcat в Kali Linux 2 (данная статья)

Описание oclHashcat и сравнение с Hashcat

oclHashcat — это инструмент для продвинутого восстановления пароля.

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

По сути, oclHashcat — это Hashcat, который использует мощь графического процессора.

В прошлом было много популярных версий: oclHashcat-plus, oclHashcat-lite, clHashcat GPU cracker — все они хорошо себя зарекомендовали, но в настоящее время являются устаревшими. Весь их функционал был слит в oclHashcat.

Установка oclHashcat в Kali Linux

Для работы программы необходимы драйверы графических карт:

  • пользователям NVidia нужен ForceWare 346.59 или более поздний
  • пользователям AMD нужен 14.9 или более поздний

На этом установка закончена. Запускать так

Кстати, программу можно скачать и с официального сайта. Причём в этом есть два больших плюса: а) всегда самая свежая версия, б) в установленном виде занимает в два раза меньше места, поскольку вы скачиваете версию под AMD или под NVidia (при apt-get install oclhashcat ставится всё). На сайте программа уже скомпилирована в исполнимые файлы, достаточно распаковать архив и можно запускать.

Ошибка ATTENTION! Unsupported or incorrect installed GPU driver detected!

После установки драйвера и oclHashcat я попытался запустить бенчмарк, но получил предупреждение:

С драйвером у меня всё впорядке, поэтому мне помогло использование ключа --force:

Справка по oclHashcat

Очень много разнообразного материала по *Hashcat вы сможете найти на этом сайте по тэгу oclHashcat (Hashcat).

Бенчмарки из-под Kali Linux

Установка проприетарных драйверов на Linux иногда наталкивается на сложности. При этом в Windows всегда установлены проприетарные драйвера. Установка, кстати, не вызывает каких-либо сложностей. Поэтому интересно сравнить, будет ли скорость перебора отличаться на Linux и на Windows. Поскольку если результат одинаковый, а проприетарный графический драйвер вам так и не удалось установить на Kali Linux, то для выполнения оффлайн брутфорса хешей и взлома паролей вы можете использовать Windows, поскольку oclHashcat является кроссплатформенной программой.

Бенчмарки проводились на компьютере с процессором Intel(R) Core(TM) i7-3630QM CPU @ 2.40GHz и видеокартой Radeon HD 7870M.

Для Hashcat

Для oclHashcat

Бенчмарки из-под Windows

Для Hashcat

Для oclHashcat

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

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

Если вас заинтересовал перебор хешей с использованием видеокарты под Windows, то пример как это реализовывается вы можете найти в статье "Взлом рукопожатий (handshake) с использованием графического процессора в Windows".

Чтобы не путаться в названиях, сразу определимся, что:

  • Hashcat — программа для перебора (взлома паролей)
  • oclHashcat — то же самое, что и Hashcat, но для ускорения перебора использует графический процессор (видеокарту) AMD
  • cudaHashcat — то же самое, что и Hashcat, но для ускорения перебора использует графический процессор (видеокарту) NVIDIA.

Hashcat уже идёт с Kali «из коробки». oclHashcat и cudaHashcat нужно устанавливать.

3 января стартует курс «SQL-injection Master» © от команды The Codeby

За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

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

Запись на курс до 10 января. Подробнее .

Установка oclHashcat

На самом деле, установка происходит в одну команду:

Программа немаленькая: «Необходимо скачать 172 MБ архивов. После данной операции, объём занятого дискового пространства возрастёт на 470 MB».

Но перед этим уже должны быть установлен драйвер AMD для видеокарты. Как это сделать, прочитайте в статье «Установка проприетарного драйвера AMD ATI fglrx на Kali Linux».

Запуск oclHashcat

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

Другие проверки — бенчмарки fgl_glxgears и pyrit benchmark не выявили каких-либо проблем.

Сравнительные бенчмарки oclHashcat и Hashcat

При использовании oclHashcat я получил следующие значения

А вот какие результаты при использовании Hashcat (без графического ускорителя):

Если я правильно трактую результаты (поправьте, если неправильно), то прирост в скорости составляет в 15-50 раз. Т.е. именно во столько раз будут быстрее перебираться кеши.

1 декабря стартует зимний поток курса " Тестирование Веб-Приложений на проникновение " от команды codeby . Общая теория, подготовка рабочего окружения, пассивный фаззинг и фингерпринт, активный фаззинг, уязвимости, пост-эксплуатация, инструментальные средства, Social Engeneering и многое другое. На курс можно записаться до 10 декабря включительно. Подробнее .

10 thoughts to “oclHashcat на Kali Linux: установка, проблема с «ATTENTION! Unsupported or incorrect installed GPU driver detected!» и сравнительный бенчмарк”

Я вообще немогу запустить выбивает ERROR: clGetPlatformIDs() -1001!в чем проблема?ГПУ от AMD radeon 7600

Hashcat — это самый быстрый в мире восстановитель (взломщик) паролей.

В настоящее время, Hashcat объединила в себе две ранее существовавшие отдельные ветки программы. Одна так и называлась Hashcat, а вторая называлась oclHashcat (а ещё раньше oclHashcat была разделена на собственно oclHashcat и cudaHashcat). В настоящее время абсолютно все версии слиты в одну, которая при восстановлении паролей использует центральный процессор и видеокарту.

  • Самый быстрый в мире взломщик
  • Первый и единственный в мире внутриядерный движок правил
  • Бесплатная
  • Открытый исходный код (лицензия MIT)
  • Мультиплатформенная (Linux, Windows и OSX)
  • Мультиплатформенная (CPU, GPU, DSP, FPGA и т.д., всё, что поставляется со средой выполнения OpenCL)
  • Множество хешей (одновременный взлом множества хешей)
  • Задействует несколько устройств (использует множество устройств на одной системе)
  • Задействует устройства разных типов (использует устройства разных типов на одной системе)
  • Поддержка распределённых систем взлома (с помощью дополнительного сегмента)
  • Интерактивная поддержка паузы / возобновления
  • Поддержка сессий
  • Поддержка восстановления
  • Поддержка чтения кандидатов в пароли из файла и стандартного ввода
  • Поддержка шестнадцатеричных солей и шестнадцатеричных наборов символов
  • Поддержка автоматической тонкой настройки производительности
  • Поддержка автоматического поорядка пространства ключей цепей Маркова
  • Встроенная система бенчмарков
  • Интегрированный тепловой сторож
  • 160+ реализованных с мыслью о производительности типов хешей
  • … и многое другое

Опубликован значительный выпуск программы подбора паролей hashcat 6.0.0, претендующей на звание самой быстрой и функциональной в своей области. Hashcat предоставляет пять режимов подбора и поддерживает более 300 оптимизированных алгоритмов хэширования паролей. Вычисления при подборе могут распараллеливаться с привлечением всех имеющихся в системе вычислительных ресурсов, в том числи с использованием векторных инструкций CPU, GPU и других аппаратных ускорителей, поддерживающих OpenCL или CUDA. Возможно создание распределённой сети подбора. Код проекта распространяется под лицензией MIT.

В новом выпуске:

  • Новый интерфейс для подключения плагинов, позволяющий создавать модульные режимы хэширования;
  • Новый API compute-backend для использования вычислительных бэкендов, отличных от OpenCL;
  • Поддержка вычислительных систем на базе CUDA;
  • Режим эмуляции GPU, позволяющий использовать код вычислительного ядра (OpenCL) на CPU;
  • Улучшено управление памятью GPU и потоками;
  • Расширена система автоматического тюнинга, учитывающая доступные ресурсы;
  • Добавлен 51 новый алгоритм хэширования, включая используемые в AES Crypt (SHA256), Android Backup, BitLocker, Electrum Wallet (Salt-Type 3-5), Huawei Router sha1(md5($pass).$salt), MySQL $A$ (sha256crypt), ODF 1.1 (SHA-1, Blowfish), ODF 1.2 (SHA-256, AES), PKZIP, Ruby on Rails Restful-Authentication и Telegram Desktop;
  • Увеличена производительность многих алгоритмов, например, bcrypt на 45.58%, NTLM на 13.70%, WPA/WPA2 на 13.35%, WinZip на 119.43%.

Примеры запуска Hashcat

Запуск бенчмарка -b

Взлом WPA2 WPA рукопожатий с Hashcat

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

Конвертируем файл .cap в формат, который будет понятен oclHashcat. Для ручной конвертации .cap используйте следующие команды в Kali Linux.

1 wpaclean <out.cap> < in .cap>

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

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

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

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

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

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

Читайте также: