Как установить john the ripper linux

Обновлено: 02.07.2024

Устанавливать надо из исходников. Можно взять исходники версии 1.7.3.1 (или более старую 1.7.2, которая считается стабильной). Распаковать архив в отдельный каталог. Зайти в подкаталог src , запустить make . В ответ сборка не пойдет, а будет выдан список целевых систем, под которую возможна компиляция. Надо найти в списке нужный тип, и дать соответсвующую команду, например:

В результате запустится компиляция. Результирующий бинарник будет лежать в каталоге run .

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

Для версии 1.7.2 патч раньше можно было взять по ссылке:

но теперь такого файла нет.

Для версии 1.7.3.1 патч находится по ссылке:

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

Установить патч можно следующим образом. Заходим в каталог с сырцами (он может называться, например, john-1.7.3.1). Кладем тутда файл патча. Потом там же даем команды вида:

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

Как пользоваться John the ripper

Чтобы начать подбор пароля, надо сделать файл, который будем скармливать в программу. Формат файла такой:

Логины можно указывать произвольные, они нужны только для того, чтобы запросить у John результат подбора конкретного пароля, так как John может перебирать одновременно несколько паролей. Если надо подобрать один пароль, то файл просто будет содержать одну строку, например:

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

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

Надо обратить внимание, что в качестве формата нужно указывать "raw-MD5" а не "MD5". Кроме того, код хеша должен быть записан с использованием строчных (т.е. маленьких) букв a, b, c, d, e, f. Если эти буквы будут большие, хеш не прочитается.

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

Вот какие возможны варианты перебора:

1. Brute force

Этот способ является самым простым, но он не очень эффективен так как прога начинает перебирать все символы от балды, что естественно очень долго.

2. Перебор по словарю

где wordlist - имя файла словаря со словами для перебора

3. Incremental mode

- это самый сильный способ перебора, 95 символов.

- это перебор с использованием 26 символов от 'a' до 'z'.

4. Single mode

Слабенький способ перебора. Быстро подберёт пароли похожие либо совпадающие с логином пользователя. Рекомендуется сначала всегда использовать данный способ т.к. он быстрее чем перебор по словарю.

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

Оглавление

Что такое John the Ripper

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

Даже если вы уже знакомы с Hashcat (а тем более, если НЕ знакомы с Hashcat), вам нужно изучить принципы работы John the Ripper, поскольку они отличаются.

Чем различаются John the Ripper и Hashcat

Hashcat для брут-форса может использовать видеокарту, центральный процессор (ЦП) или всё вместе.

John the Ripper может использовать что-то одно: или видеокарту, или видео ядро ЦП, или только ЦП.

Hashcat может использовать видеокарту для взлома любых поддерживаемых алгоритмов.

John the Ripper для взлома на видеокарте поддерживает только некоторые виды алгоритмов.

Если у вас несколько видеокарт, Hashcat «из коробки» поддерживает работу сразу с несколькими устройствами и по умолчанию разбивает задачу на нужное количество потоков и размер каждой этой задачи привязан к мощности видеокарты.

John the Ripper может работать с несколькими видеокартами, но по умолчанию разбивка задачи на несколько видеокарт поддерживается только для одного алгоритма.

Для Hashcat не имеет значение, как вы её установили: собрали из исходного кода или скачали бинарный файл.

Для John the Ripper очень важно самому собрать бинарный файл, поскольку в этом случае учитывается специфика вашей системы. В результате при компиляции будут указаны поддерживаемые процессором наборы команд, например, AVX2 вместо дефолтного AVX, что в конечном счёте очень значительно скажется на производительности — для некоторых алгоритмов благодаря этому достигается ускорение взлома в 2 раза! Либо напротив, скомпилированные на более новом железе исполнимые файлы John могут не работать на некоторых компьютерах

Для Hashcat обязательно нужно указать тип хеша.

John the Ripper определяет хеш самостоятельно, либо можно явно указать формат хеша.

Синтаксис команд и опций сильно различается.

О взломе пароля в John the Ripper на видеокарте нужно знать, что брут-форс на графической карте требует много времени для запуска — это заметно даже для бенчмарка. Поэтому если вам нужно выполнить множество коротких сессий, то иногда рациональнее использовать центральный процессор, взлом на котором запускается немедленно.

Преимущества John the Ripper:

  1. Более гибкая работа с хешами — даже если в файле с хешами имеются хеши других типов, то John не завершает работу с ошибкой, а просто используют хеши того типа, который указан в команде запуска. К тому же, утилиты для вычисления хешей зачастую добавляют строки, которые в Hashcat могут вызвать ошибку «неправильный хеш». John the Ripper нормально работает с такой формой записи.
  2. Более гибка Атака на основе правил. В John the Ripper и Hashcat имеется реализация Атаки на основе правил и синтаксис записи правил имеет много общего. Но в John the Ripper эта атака более мощная, поскольку имеет больше правил, а также позволяет использовать наборы символов в записи правил.
  3. Поддержка нестандартных хешей. Hashcat может работать только с хешами, которые предусмотрели разработчики этой программы. А в John the Ripper имеется режим Dynamic, который позволяет указать формулу, по которой был вычислен хеш. То есть можно взламывать произвольные типы хешей.

Установка драйверов видеокарт для John the Ripper

Если вы хотите использовать GPU для взлома паролей (а это в десятки раз быстрее, чем на центральном процессоре), то нужно установить видео драйвера.

Для взлома могут использоваться:

  • центральный процессор
  • видео ядро центрального процессора
  • видео карта

Нужно выбрать что-то одно из этого — самым быстрым вариантом является видео карта.

Конечно, конкретные конфигурации компьютеров могут различаться: у кого-то нет дискретной видеокарты, у кого-то нет видео ядра у ЦП — надеюсь, вы в состоянии это проверить самостоятельно.

Установка видео драйверов в Windows

В этой ОС всё просто — скорее всего, видео драйверы для вашей графической карты уже установлены. Если нет — перейдите на сайт производителя, скачайте и установите драйвер.

Для того, чтобы использовать центральный процессор как OpenCL устройство, вам нужно установить «OpenCL Runtime for Intel Core and Intel Xeon Processors». Нужные ссылки вы найдёте в этой статье по Hashcat, которая также использует это ПО.

Установка видео драйверов в Linux

В Kali Linux

Предварительное полное обновление системы и перезагрузка:

Установка видео драйверов для NVIDIA в Linux

Включение OpenCL для Intel

Если ваш центральный процессор поддерживает OpenCL, то установите следующие пакеты:

В Arch Linux, BlackArch

Включение OpenCL для NVIDIA

Удалите xf86-video-nouveau есть он есть:

Установите проприетарный драйвер NVIDIA, CUDA и другие необходимые пакеты:

Включение OpenCL для Intel

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

Установка John the Ripper в Linux из исходного кода

Как уже было сказано, важно самому собрать John the Ripper чтобы он использовал все возможности вашего процессора. Ещё один плюс такого подхода — мы получим самую свежую версию John the Ripper.

Установка необходимых зависимостей в Kali Linux:

Установка необходимых зависимостей в Arch Linux, BlackArch:

Далее одинаково в любом дистрибутиве:

Обратите внимание, в последней команде вы можете использовать опцию -j после которых указать количество (логических) ядер вашего процессора, например, у меня 12 логических ядер, тогда я использую:

Теперь перейдите в папку run:

И запустите тест:

Вам необязательно выполнять установку John the Ripper на уровне системы — переместите папку run в удобное вам место и запускайте John оттуда. Кроме исполнимого файла John the Ripper, в папке run собрано много скриптов для извлечения хешей — о них мы поговорим позже.

Помните, что если в терминале набрать

то запустится предустановленная в системе версия, а не та, которую вы скомпилировали.

Установка John the Ripper в Debian, Linux Mint, Ubuntu

Установка должна выполняться точно так же, как и в Kali Linux. Поэтому обратитесь к разделу «Установка John the Ripper в Kali Linux». Если у вас что-то не получилось, то напишите здесь в комментариях с указанием вашего дистрибутива и ошибки.

Как установить John the Ripper в Windows

Компиляцию John the Ripper из исходного кода в Windows мы рассмотрим как-нибудь потом. Воспользуемся официальным бинарным файлом.

Распакуйте содержимое этого архива в папку C:\cygwin64\home\ИМЯ-ПОЛЬЗОВАТЕЛЯ, например, у меня пользователь MiAl, поэтому я распаковываю в папку C:\cygwin64\home\MiAl\. Обратите внимание, что создавать папку и копировать в неё файлы нужно от имени обычного пользователя, поскольку во время своей работы John the Ripper будет пытаться записать данные в .pot файл в той же папке, где запущена программа. Если вы скопировали папку JtR в файловом менеджере с повышенными правами, то эта папка будет принадлежать Администратору и записать в неё что-либо или поменять права на неё невозможно.

На самом деле в Windows можно запустить John the Ripper даже без Cygwin, но в этом случае он не сможет использовать OpenCL (видео ядра) для брут-форса.

Теперь в папке C:\cygwin64\home\ИМЯ-ПОЛЬЗОВАТЕЛЯ\JtR\run\ найдите cygOpenCL-1.dll и переименуйте его в cygOpenCL-1.dll.bac.

Затем в папке c:\Windows\System32 найдите файл OpenCL.dll и скопируйте его в папку C:\cygwin64\home\ИМЯ-ПОЛЬЗОВАТЕЛЯ\JtR\run\.

Затем в папке C:\cygwin64\home\ИМЯ-ПОЛЬЗОВАТЕЛЯ\JtR\run\ переименуйте файл OpenCL.dll в cygOpenCL-1.dll.

Далее эту же самую процедуру нужно повторить для файла в папке C:\cygwin64\bin\. То есть в папке C:\cygwin64\bin\ найдите cygOpenCL-1.dll и переименуйте его в cygOpenCL-1.dll.bac. Затем в папке c:\Windows\System32 вновь найдите файл OpenCL.dll и скопируйте его в папку C:\cygwin64\bin\. Наконец в папке C:\cygwin64\bin\ переименуйте файл OpenCL.dll в cygOpenCL-1.dll.

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

Чтобы вы понимали, для чего мы всё это делаем, посмотрите на скорость взлома на центральном процессоре:


И на скорость взлома на видеокарте, которая стала доступна благодаря показанным выше действиям с подменой файлов:


Откройте консоль Cygwin для выполнения команд.

Запустите тест установки::

Запустите бенчмарк вашей системы:

Но всё-таки JtR это одна из тех программ, которая в первую очередь предназначена для Linux. Дальше вы увидите, что мы будем запускать скрипты для генерации (извлечения) хешей из файлов и, например, для некоторых из вспомогательных программ/скриптов нужно, например, установленное окружение Python, которое в Linux присутствует по умолчанию.

Проверка John the Ripper

В этом разделе мы проверим, какие устройства видит John the Ripper для использования во время брут-форса.

Опции на любой системе одинаковые, но помните, что в Windows для запуска John the Ripper нужно открыть Cygwin и в качестве исполнимого файла указывать

Если вы запускаете в Linux установленный из стандартных репозиториев файл, то достаточно писать просто

Если вы запускаете скомпилированный из исходного кода файл, то перейдите в каталог с исполнимым файлом (в папке программы это директория run) и в качестве исполнимого файла указывайте

Для просмотра устройств OpenCL используйте опцию --list=opencl-devices:



Как вы можете увидеть, у меня три устройства:

1 — видео ядро центрального процессора:

2 — дискретная видео карта

3 — центральный процессор

Аналогично в Windows:


Как уже было сказано, John the Ripper не может просто работать с любыми поддерживаемыми алгоритмами на OpenCL — необходимо, чтобы для них был создан модуль. Поэтому некоторые алгоритмы можно взламывать только на центральном процессоре, а некоторые алгоритмы можно взламывать на видео карте или на центральном процессоре.

Список алгоритмов может различаться от ОС и от установленных зависимостей.

Чтобы посмотреть список поддерживаемых алгоритмов:

Список уместился не весь:


Чтобы посмотреть смотреть список алгоритмов для взлома на OpenCL:


Намного меньше, но Wi-Fi там есть.

Как использовать видеокарту для взлома в John the Ripper

По умолчанию JtR использует центральный процессор, даже если все необходимые драйвера для OpenCL установлены.

Чтобы включить видеокарту, нужно использовать опцию --format и явно указать алгоритм, который поддерживает OpenCL.

Например, для бенчмарка алгоритма wpapsk на видеокарте:

Чтобы взламывать wpapsk на центральном процессоре, нужно запускать примерно так:


Как можно увидеть на скриншотах: 114975/17385=6,61, то есть скорость перебора паролей увеличилась более чем в 6 раз.

Как использовать видео ядро центрального процессора в JtR

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

JtR может выполнять вычисления на:

  • обычных ядрах ЦПУ
  • используя OpenCL устройства

Список OpenCL устройств может включать:

  • видеокарту
  • интегрированную графику ЦПУ
  • обычные ядра ЦПУ

Как вы можете увидеть, даже без установки исполнимой среды OpenCL и видео драйверов, JtR способен взламывать пароли.

Алгоритмы, в названии которых отсутствует строке «-opencl», например wpapsk, могут брут-форситься только на обычных ядрах центрального процессора.

Алгоритмы, в названии которых присутствует строка «-opencl», например wpapsk-opencl, могут брут-форситься на:

  • видеокарте
  • интегрированной графике ЦПУ
  • обычных ядрах ЦПУ

Чтобы посмотреть список доступных устройств OpenCL выполните команду:

Посмотрите на следующие скриншоты:



Под номером один — встроенная графика ЦПУ.

Под номером два — видеокарта.

Под номером три — обычные ядра ЦПУ, с которыми JtR будет работать как с устройством OpenCL.

По умолчанию (без опции -dev), JtR использует одно из устройств OpenCL, которое как думает программа является самым быстрым.

Итак, чтобы запустить JtR на обычных ядрах ЦП, используйте название алгоритма без строки «-opencl»:

Чтобы запустить взлом пароля на первом устройстве OpenCL (у меня это встроенная графика ЦП, запуск завершился неудачей):


Чтобы запустить взлом пароля на втором устройстве OpenCL (у меня это дискретная видеокарта):

Чтобы запустить взлом пароля на тертьем устройстве OpenCL (у меня это обычные ядра центрального процессора):

Также опцию -dev можно использовать так:

При использовании OpenCL, эти опции говорят JtR использовать только GPU устройство(а) или только CPU устройство(а).


Как запустить бенчмарк John the Ripper

Чтобы проверить скорость перебора паролей в JtR используется опция --test.

Эту опцию можно использовать с числом — количество секунд, которое будет выполняться тест.

Если вы хотите проверить скорость только определённого алгоритма, то используйте опцию --format.

Пример теста скорости взлома пароля Wi-Fi центральным процессором:

Пример теста скорости взлома пароля Wi-Fi дискретной видеокартой:

Если нужно только проверить работу расшифровки различных алгоритмов без запуска бенчмарка, то укажите 0 в качестве значения опции --test:

Как настроить John the Ripper

У John the Ripper есть файл настроек с большим количеством опцией. Этот файл называется john.conf и находится в той же папке, что и исполнимый файл john.

Обеспечьте хорошее охлаждение; следите за температурой. Если среда выполнения OpenCL поддерживает это, температура графического процессора будет отслеживаться и отображаться в строках состояния, а в john.conf есть изменяемый пользователем предел, который завершит работу при 95 °C.

Эта настройка устанавливается директивой:

Температура указывается в градусах Цельсия - °C.

Вместо прерывания, можно остановить программу на это количество секунд, чтобы охладить GPU, когда температура достигнет значения AbortTemperature, затем программа повторно проверит температуру и либо продолжит работу, либо останется на паузе. Установите значение 0 чтобы просто завершить работу.

Различие компиляции с AVX2 и AVX для John the Ripper

Чтобы посмотреть параметры сборки используйте опцию --list=build-info:


Бенчмарк двух версий программ:


1 . На этой половине скриншота бенчмарк последней версии JtR, которую я скомпилировал из исходного кода. Поскольку мой ЦП поддерживает AVX2, то John the Ripper также это поддерживает.

2 . А эту я установил из стандартного репозитория своего дистрибутива — она скомпилирована с AVX.

Разница весьма значительная.

Итог по первой части

Итак, это первая часть по John the Ripper — популярному офлайн брут-форсеру. В ней мы узнали хитрости по установке JtR, а также научились тестировать скорость перебора паролей, включать для использования видео карту и контролировать действия при перегреве.

При запуске подобных программ (John the Ripper и Hashcat) нужно заботиться о должном охлаждении. Если ваш компьютер/ноутбук перегревается, то скорость взлома будет очень значительно падать.

В следующих частях будет ещё интереснее! Мы научимся извлекать хеши паролей и запускать атаки по словарю и по маске, а также многое другое!


Для тех из вас, кто еще не слышал о John the Ripper (здесь для краткости его называют John), это бесплатный инструмент для взлома паролей, написанный в основном на языке C.

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

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

Взлом паролей с помощью John the Ripper на Linux

Эта статья будет посвящена Джону с точки зрения системного администратора, поэтому мы ожидаем, что у вас есть промежуточные знания о вашей системе Linux, независимо от того, какой дистрибутив это может быть, и что Вы являетесь человеком, заботящимся о безопасности, с базовыми знаниями о безопасности. Тем не менее, эта статья может понравиться вам также, если Вы являетесь домашним пользователем, желающим узнать о таких вещах, но имейте в виду: некоторые из представленных ниже команд потребуют много вашего процессорного времени, поэтому, возможно, было бы лучше, если бы у вас была тестовая машина и/или много времени и терпения, потому что попытки взлома паролей могут занять несколько дней, даже на относительно новой машине.

Установка Джона

Дистрибутив Debian

Debian отличается от других дистрибутивов, которые предлагают John в своих репозиториях, тем, что он предлагает хорошую страницу руководства, хотя у upstream ее нет. Для установки просто введите

Fedora

На Fedora, тоже легко установить.

Arch Linux

OpenSuse Linux

Gentoo

Как мы уже говорили, пакет Gentoo назван иначе, чем другие предложения.

Slackware

Хотя в официальных репозиториях, похоже, нет пакета john, есть slackbuild, который устанавливает John в вашу систему (это было протестировано на Slackware 13.37).

Хотя мы дали вам всего несколько примеров того, как Вы можете получить John в своей системе Linux, многие из представленных примеров будут работать, если у вас установлена другая ОС: помимо исходного кода, проект предлагает программу для BeOS, Microsoft Windows, Solaris или MacOS X. Но для нашей статьи, как говорится в названии, мы протестировали примеры на Linux.

Использование Джона Потрошителя

Вам не нужно беспокоиться о зашифрованных конфигурационных файлах, так как Джон готов к использованию с соответствующими флагами командной строки без каких-либо других усилий с вашей стороны. Однако одно предупреждение: как Вы уже заметили, мы сообщаем нашим читателям, когда они должны использовать привилегии root, а когда нет. За исключением отмеченных случаев, вам настоятельно рекомендуется использовать вашего обычного повседневного пользователя (или другого, если Вы предпочитаете, но он не должен иметь прав суперпользователя). В моей системе Debian John доступен как /usr/sbin/john, поэтому, если Вы его не нашли, мы рекомендуем вам использовать whereis и ввести весь путь при запуске john unprivileged (или Вы можете просто создать псевдоним).

Теперь давайте создадим текстовый файл в формате пароля (<user>:<hash>) с допустимым хэшем, конечно, и заставим Джона работать. Вы можете просто скопировать пользователя из /etc/shadow, но мы рекомендуем что-то более простое, потому что мы предполагаем, что Вы хотите увидеть результаты как можно быстрее. Итак, создайте файл с именем password.txt где-нибудь внутри вашего /home и положите это в него:

Сохраните файл, а затем просто скормите его Джону без каких-либо аргументов (на данный момент):

$ /usr/sbin/john password.txt

Мы должны повторить наше предупреждение: взлом паролей-это трудоемкий и длительный процесс, поэтому в зависимости от вашей системы это может занять довольно много времени. Однако это также зависит от того, чего Вы хотите достичь, потому что если ваш мощный процессор не может подобрать пароль(и) в течение нескольких дней без результата, можно только с уверенностью сказать, что это хороший пароль. Но если пароль действительно критичен, оставьте систему до тех пор, пока Джон не закончит свою работу, чтобы убедиться, что все в порядке. Как мы уже говорили, это может занять много дней.

Один из способов-использовать /etc/shadow напрямую, но мы рекомендуем вам выбрать несколько иной курс. Обратите внимание, что это относится к системам, использующим теневые пароли, и все современные дистрибутивы Linux делают это. Джон предлагает отличную утилиту под названием unshadow, которую мы будем использовать для создания файла из наших файлов passwd и shadow:

Теперь убедитесь, что mypasswd.txt доступен для вашего обычного пользователя и делать

$ /usr/sbin/john mypasswd.txt

Документация John the Ripper рекомендует начинать с режима одиночного взлома, главным образом потому, что это быстрее и даже быстрее, если Вы используете несколько файлов паролей одновременно. Инкрементный режим-самый мощный из доступных режимов, так как он будет пробовать различные комбинации при взломе, и вы можете выбрать, какой режим (режим, применяемый к инкрементальной опции) использовать, в том числе и свой собственный. Внешний режим, как следует из названия, будет использовать пользовательские функции, которые вы пишете сами, в то время как режим списка слов принимает список слов, указанный в качестве аргумента опции (это может быть файл со списком слов, написанных по одному на строку, или stdin), и пытается выполнить простую словарную атаку на пароли.

Если Джон будет успешной в крекинг-один из паролей, он будет писать в

/.john/john.pot. Однако этот файл не читается человеком, поэтому Вы можете читать взломанные пароли с помощью

$ /usr/sbin/john --show mypasswd.txt

Чтобы проверить, не взломан ли пароль root, отфильтруйте его по UID:

$ /usr/sbin/john --show --users=0 mypasswd.txt

Конечно, Джон знает о подстановочных знаках и нескольких файлах:

$ /usr/sbin/john --show --users=0 *passwd*

$ /usr/sbin/john --wordlist=passwd.lst --rules passwd.txt

$ /usr/sbin/john --session=allrules --wordlist=all.lst --rules mypasswd.txt

$ /usr/sbin/john --status=allrules

$ kill HUP $PID_of_john_session_to_kill $ /usr/sbin/john --restore=allrules

Вот несколько примеров использования инкрементного режима с Джоном:

$ /usr/sbin/john --incremental mypasswd.txt

$ /usr/sbin/john --incremental=alpha mypasswd.txt

Конечно, это не замена документации Джона. Хотя, как мы уже говорили, он не предлагает страницы руководства, Вы найдете много документации на его странице, а также полезную вики-страницу. Например, Вы заметите, что даже если Вы используете John на многопроцессорной машине, она будет использовать только одно ядро, обычно первое. Вы можете решить эту проблему, прочитав документацию и следуя приведенным там инструкциям.

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

Советую всё делать на Linux системе, так как инструмент больше предназначен именно для этого типа ОС.

Установка видео драйверов в Linux
В Kali Linux

Предварительное полное обновление системы и перезагрузка:

sudo apt update && sudo apt full-upgrade -y
reboot
Установка видео драйверов для NVIDIA в Linux

sudo apt install -y ocl-icd-libopencl1 nvidia-driver nvidia-cuda-toolkit
Примечание:
Одна слово внизу это не отдельная команда, это просто всё не поместилось в одну строку. nvidia-cuda-toolkit пишем слитно
Включение OpenCL для Intel

Если ваш центральный процессор поддерживает OpenCL, то установите следующие пакеты:

sudo apt install firmware-misc-nonfree intel-opencl-icd
Установка John the Ripper в Linux из исходного кода
Для Kali Linux

./configure && make -j8
Переходим в папку run:

cd ../run
Запускаем тест:

./john --test
Вы можете переместить папку run в удобное вам место и запускайте John оттуда.

Как установить John the Ripper в Windows
1) Сначала установим Cygwin.

2) Затем переходим на

и скачиваем файл winX64_1_JtR.7z.

3) Распакуйте содержимое этого архива в папку C:\cygwin64\home\ИМЯ-ПОЛЬЗОВАТЕЛЯ. Например, у меня пользователь user, поэтому я распаковываю в папку C:\cygwin64\home\user\.

4) В папке C:\cygwin64\home\ИМЯ-ПОЛЬЗОВАТЕЛЯ\JtR\run найдите cygOpenCL-1.dll и переименуйте его в cygOpenCL-1.dll.bac.

5) Ищем в c:\Windows\System32 файл OpenCL.dll и копируем его в папку C:\cygwin64\home\ИМЯ-ПОЛЬЗОВАТЕЛЯ\JtR\run\.

6) Затем в папке C:\cygwin64\home\ИМЯ-ПОЛЬЗОВАТЕЛЯ\JtR\run\ переименуйте файл OpenCL.dll в cygOpenCL-1.dll.

Для чего это всё нужно. Сygwin64 позволяет задействовать видеокарту для перебора. Однако то, что мы сейчас проделали может сработать не у всех. Если у вас что-то не получилось или пошло не так, вы можете использовать для взлома центральный процессор или встроенную графику.

7) Открываем командную строку и пишем

Можете также запустить бенчмарк системы

C:\cygwin64\home\ИМЯ-ПОЛЬЗОВАТЕЛЯ\JtR\run\john --test
Теперь проверим, какие устройства видит John the Ripper

На Kali Linux
Если вы всё также находитесь в папке run пропишите

./john --list=opencl-devices
Появится список устройств которые видит программа

На Windows
C:\cygwin64\home\ИМЯ-ПОЛЬЗОВАТЕЛЯ\JtR\run\john --list=opencl-devices
Как использовать видеокарту для взлома в John the Ripper
Некоторые алгоритмы можно взламывать только при помощи ЦП, некоторые поддерживают и ЦП и видеокарту.

Чтобы посмотреть смотреть список алгоритмов для взлома на OpenCL:

./john --list=formats --format=opencl

Примечание
Далее буду писать команды только для linux. Для Windows всё тоже самое, только другое начало команды. Вам нужно писать

Например, для предыдущей команды

C:\cygwin64\home\ИМЯ-ПОЛЬЗОВАТЕЛЯ\JtR\run\jonh --list=formats --format=opencl

По умолчанию используется центральный процессор, даже если все необходимые драйвера для OpenCL установлены.

Чтобы включить видеокарту, нужно использовать опцию --format и явно указать алгоритм, который поддерживает OpenCL.

Например, для алгоритма md5crypt:

./john --test --format=md5crypt-opencl
Чтобы взламывать md5crypt на ЦП, пишем:

./john --test --format=md5crypt
Как использовать видеоядро ЦП
Делается это при помощи опции -dev. Вы сможете указать устройство для выполнения вычислений: gpu (дискретная графика) или cpu (интегрированная графика).

Запуск проверки скорости на видео ядре процессора:

./john --test --format=md5crypt-opencl -dev=cpu
Запуск проверки скорости на видео ядре выделенной видеокарты (по умолчанию):

./john --test --format=md5crypt-opencl -dev=gpu
Настраиваем параметры
Перед тем как приступать к работе, нужно обязательно настроить программу под себя. В той же папке run находится файл john.conf , который содержит множество опций.

Открыть его можно при помощи обычного текстового редактора.

Да инфы там много, но всё же советую пройтись и ознакомиться.

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

Настраивается параметром AbortTemperature. По умолчанию стоит:

AbortTemperature = 95
Параметр SleepOnTemperature отвечает за то, на какое время (в секундах) программа остановится для охлаждения железа. По умолчанию

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