John the Ripper

Password Attacks v1.9.0 · 12.04.2019 не обновлялся >2 лет

Классический инструмент для взлома паролей с многолетней историей. Умеет автоматически определять тип хеша, поддерживает словарные атаки, брутфорс, атаки по правилам и rainbow tables. Jumbo-версия добавляет поддержку сотен форматов: ZIP, PDF, Office, SSH ключи, KeePass, TrueCrypt и т.д. john --wordlist=/usr/share/wordlists/rockyou.txt hashes.txt

v1.9.0
12.04.2019 current
Добавлен 10.06.2026 · Обновлён 10.06.2026 · Password Attacks
Установка
# Debian/Ubuntu/Kali
apt install john

# Jumbo версия (рекомендуется) — из исходников
git clone https://github.com/openwall/john -b bleeding-jumbo
cd john/src && ./configure && make -s clean && make -sj4
cd ../run && ./john --test

# Snap
snap install john-the-ripper
переведено ИИ

Circle CI Downloads License GitHub commit activity GitHub commits since tagged version

John the Ripper

Это улучшенное сообществом, «jumbo»-версия John the Ripper. Она содержит множество кода, документации и данных, внесённых jumbo-разработчиками и пользовательским сообществом. Новый код легко добавить в jumbo, а требования к качеству невысоки, хотя в последнее время мы начали подвергать все внесённые изменения довольно обширному автоматическому тестированию. Это означает, что вы получаете множество функций, которые не обязательно являются «зрелыми», что, в свою очередь, означает, что ошибки в этом коде неизбежны.

Домашняя страница John the Ripper:

https://www.openwall.com/john/

Если у вас есть какие-либо замечания об этом релизе или о JtR в целом, пожалуйста, присоединитесь к списку рассылки john-users и напишите там:

https://www.openwall.com/lists/john-users/

Для внесения вклада в John the Ripper jumbo, пожалуйста, используйте pull requests на GitHub:

https://github.com/openwall/john/blob/bleeding-jumbo/CONTRIBUTING.md

Ниже приведена основная документация по ядру John the Ripper.


John the Ripper — взломщик паролей.

John the Ripper — быстрый взломщик паролей, в настоящее время доступный для многих вариантов Unix, macOS, Windows, DOS, BeOS и OpenVMS (последний требует стороннего патча). Его основная цель — обнаружение слабых паролей Unix. Помимо нескольких типов хешей паролей crypt(3), наиболее распространённых в различных вариантах Unix, из коробки поддерживаются хеши Kerberos/AFS и Windows LM, а также трипкоды на основе DES, плюс сотни дополнительных хешей и шифров в версиях «-jumbo».

Как установить.

Смотрите INSTALL для получения информации об установке John в вашей системе.

Как использовать.

Для запуска John необходимо предоставить ему файлы паролей и, по желанию, указать режим взлома, например, используя порядок режимов по умолчанию и предполагая, что «passwd» — копия вашего файла паролей:

john passwd

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

john --wordlist=password.lst --rules passwd

Взломанные пароли будут выведены в терминал и сохранены в файле $JOHN/john.pot (в документации и в конфигурационном файле John «$JOHN» относится к «домашнему каталогу» John; какой именно каталог это будет, зависит от того, как вы установили John). Файл $JOHN/john.pot также используется для того, чтобы не загружать уже взломанные хеши паролей при следующем запуске John the Ripper.

Для получения взломанных паролей выполните:

john --show passwd

Во время взлома вы можете нажать любую клавишу для просмотра состояния, или «q» или Ctrl-C для прерывания сеанса с сохранением его состояния в файл (по умолчанию $JOHN/john.rec). Если вы нажмёте Ctrl-C во второй раз до того, как John успеет обработать ваше первое нажатие Ctrl-C, John прервётся немедленно без сохранения. По умолчанию состояние также сохраняется каждые 10 минут для возможности восстановления в случае сбоя.

Для продолжения прерванного сеанса выполните:

john --restore

Это лишь основные вещи, которые вы можете делать с John. Полный список параметров командной строки и более сложные примеры использования смотрите в разделах OPTIONS и EXAMPLES соответственно.

Обратите внимание, что «бинарные» (предкомпилированные) дистрибутивы John могут содержать альтернативные исполняемые файлы помимо просто «john». Вам может потребоваться выбрать исполняемый файл, наиболее подходящий для вашей системы, например «john-omp» для использования преимуществ нескольких процессоров и/или ядер процессора.

Возможности.

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

Из коробки John поддерживает (и автоматически определяет) следующие типы хешей Unix crypt(3): традиционные на основе DES, «bigcrypt», расширенные на основе DES от BSDI, на основе MD5 от FreeBSD (также используемые в Linux и в Cisco IOS), и на основе Blowfish от OpenBSD (теперь также используемые в некоторых дистрибутивах Linux и поддерживаемые последними версиями Solaris). Также из коробки поддерживаются хеши Kerberos/AFS и Windows LM (на основе DES), а также трипкоды на основе DES.

При работе в дистрибутивах Linux с glibc 2.7+ John 1.7.6+ дополнительно поддерживает (и автоматически определяет) хеши SHA-crypt (которые фактически используются в последних версиях Fedora и Ubuntu) с опциональной параллелизацией OpenMP (требуется GCC 4.2+; необходимо явно включить во время компиляции, раскомментировав соответствующую строку OMPFLAGS в начале файла Makefile).

Аналогично, при работе в последних версиях Solaris John 1.7.6+ поддерживает и автоматически определяет хеши SHA-crypt и SunMD5, также с опциональной параллелизацией OpenMP (требуется GCC 4.2+ или последний Sun Studio; необходимо явно включить во время компиляции раскомментированием соответствующей строки OMPFLAGS в начале файла Makefile и во время выполнения путём установки переменной окружения OMP_NUM_THREADS в желаемое количество потоков).

Версии «-jumbo» добавляют поддержку сотен дополнительных типов хешей и шифров, включая быстрые встроенные реализации SHA-crypt и SunMD5, хеши паролей Windows NTLM (на основе MD4), различные хеши паролей пользователей macOS и Mac OS X, быстрые хеши, такие как raw MD5, SHA-1, SHA-256 и SHA-512 (которые исторически неправильно используются многими «веб-приложениями» для паролей), различные другие хеши паролей «веб-приложений», различные хеши паролей серверов SQL и LDAP и множество других типов хешей, а также многие нехеши, такие как закрытые ключи SSH, файлы S/Key skeykeys, TGT Kerberos, зашифрованные файловые системы, такие как файлы .dmg macOS и «разреженные пакеты», зашифрованные архивы, такие как ZIP (классический PKZIP и WinZip/AES), RAR и 7z, зашифрованные документы, такие как PDF и Microsoft Office — и это лишь некоторые примеры. Для загрузки некоторых из этих крупных файлов для взлома необходимо сначала использовать соответствующую встроенную программу *2john, а затем передать её вывод в JtR -jumbo.

Графический интерфейс пользователя (GUI).

Существует официальный GUI для John the Ripper: Johnny.

Несмотря на то, что Johnny ориентирован на ядро JtR, весь базовый функционал должен работать во всех версиях, включая jumbo.

Johnny — отдельная программа, поэтому вам необходимо установить John the Ripper для её использования.

Более подробная информация о Johnny и его релизах находится на wiki:

https://openwall.info/wiki/john/johnny

Документация.

Остальная документация находится в отдельных файлах, перечисленных ниже в рекомендуемом порядке чтения:

  • INSTALL) — инструкции по установке
  • OPTIONS) — параметры командной строки и дополнительные утилиты
  • MODES) — режимы взлома: что они из себя представляют
  • CONFIG) (*) — как настроить
  • RULES) (*) — синтаксис правил для словарей
  • EXTERNAL) (*) — определение внешнего режима
  • EXAMPLES) — примеры использования — настоятельно рекомендуется
  • FAQ) — часто задаваемые вопросы
  • CHANGES) (*) — история изменений
  • CONTACT) (*) — как связаться с автором или получить поддержку
  • CREDITS) (*) — благодарности
  • LICENSE) — авторские права и условия лицензирования
  • COPYING) — GNU GPL версии 2, как указано в LICENSE выше

(*) большинство пользователей могут смело пропустить эти разделы.

В каталоге «doc» jumbo есть множество дополнительных файлов документации, которые также стоит изучить.

Приятного чтения!

Комментарии
Войдите, чтобы оставить комментарий