- Installing “John the Ripper” – The Password Cracker
- Compiling “John the Ripper”
- Installing “John the Ripper” on Ubuntu
- Installing “John the Ripper” on CentOS/RHEL
- 11 Replies to “Installing “John the Ripper” – The Password Cracker”
- Инструменты Kali Linux
- Список инструментов для тестирования на проникновение и их описание
- John the Ripper
- Описание John the Ripper
- Взлом паролей с помощью John the Ripper на Linux
- Взлом паролей с помощью John the Ripper на Linux
- Установка Джона
- Дистрибутив Debian
- Fedora
- Arch Linux
- OpenSuse Linux
- Gentoo
- Slackware
- Использование Джона Потрошителя
Installing “John the Ripper” – The Password Cracker
“John the Ripper” – is a fast password cracker. Its primary purpose is to detect weak Unix passwords.
Most likely you do not need to install “John the Ripper” system-wide.
Instead, after you extract the distribution archive and possibly compile the source code (see below), you may simply enter the “run” directory and invoke John from there.
Compiling “John the Ripper”
Step 1: Download the latest version of ““John the Ripper”” and its signature
Step 2: Confirm the signature
This is a safety measure as we are dealing with dangerous thing.
Install the public key:
Check the signature:
You will see the message similar to the above. Ignore the warning as long as it says Good signature from “Openwall Project … “.
The warning is normal, see http://www.kernel.org/signature.html for more details.
Step 3: Uncompress and compile the sources
Note the make target for your system and type:
Where is the appropriate make target. Alternatively, if your system is not listed, use:
If everything goes well, this will create the executables for John and its related utilities under “../run/”.
Alternatively, you may copy the entire “run” directory to anywhere you like and use John from there.
Now you can change directory to there and test John, like this:
Installing “John the Ripper” on Ubuntu
Execute the next command to install “John the Ripper” on Ubuntu:
Installing “John the Ripper” on CentOS/RHEL
Execute the next command to install “John the Ripper” on CentOS/RHEL:
11 Replies to “Installing “John the Ripper” – The Password Cracker”
Cant we directly do sudo apt-get install john for installing john the ripper in ubuntu?
Yes, we can. But there is no guarantee that the john’s version from repository is the latest one. And actually there is no need to install this tool system-wide as it can be compiled and run from a standalone directory – sometimes this is very convenient, i guess, as if the john is no more needed you just delete the directory without leaving any traces in the system
“john” doesn’t exist in RHEL 6/7 yum repos. Also not in centos 7.
sudo yum -y install john
…
Setting up Install Process
No package john available.
Error: Nothing to do
yo, ps-ax here, just an advise, the latest version of john atm is 1.8 so the download links for wget have changed to
: http://www.openwall.com/john/j/john-1.8.0.tar.gz Hashbut says: Reply
roott-K73SJ roott # pgp john-1.7.9.tar.bz2.sign john-1.7.9.tar.bz2
gpg: no valid OpenPGP data found.
gpg: the signature could not be verified.
Please remember that the signature file (.sig or .asc)
should be the first file given on the command line.
WARNING: Can’t find the right public key– can’t check signature integrity.
roott-K73SJ roott #
When installing JtR from a distribution repository, you don’t just get an older version than the latest available release. Users will most likely get problems/error messages if installing JtR from repos (for example in Ubuntu). Most often the jumbo version is needed to get things such as cracking raw sha1 to work.
Not all 2011+ Intel CPUs have AVX so even if having a CPU architecture released after Sandy Bridge, chosing the AVX system type when compiling might not be correct.
https://en.wikipedia.org/wiki/Advanced_Vector_Extensions
At least for john-1.9.0 the ./configure step is missing before make. Since no makefile is present without running ./configure, make will stop.
To compile/make JtR some systems might need a compiler as well (gcc) along with SSL dev libraries (libssl-dev).
In ubuntu 18.04.4 I get:
$ sudo apt-get install john
Reading package lists… Done
Building dependency tree
Reading state information… Done
Package john is not available, but is referred to by another package.
This may mean that the package is missing, has been obsoleted, or
is only available from another source
E: Package ‘john’ has no installation candidate
Источник
Инструменты Kali Linux
Список инструментов для тестирования на проникновение и их описание
John the Ripper
Описание John the Ripper
John the Ripper jumbo — продвинутый офлайн взломщик паролей, который поддерживает сотни типов хэшей и шифров и работает на многих операционных системах, процессорах, графических процессорах и даже некоторых FPGA.
John the Ripper создан быть многофункциональным и быстрым. Он совмещает несколько режимов взлома в одной программе и полностью настраиваем под ваши конкретные нужды (вы даже можете определить пользовательские режимы взлома используя встроенную поддержку компилятора подмножества C). Также John доступен на нескольких разных платформах, что даёт вам возможность использовать одинаковый взломщик везде (вы даже можете продолжить сессию взлома, которую вы начали на другой платформе).
Из коробки John поддерживает (и автоматически определяет) следующие типы хешей Unix crypt(3): традиционные основанные на DES, «bigcrypt», BSDI расширенные основанные на DES, основанные на FreeBSD MD5 (также используются на Linux и в Cisco IOS) и OpenBSD основанные на Blowfish (теперь также используются на некоторых дистрибутивах 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 на требуемое количество потоков).
John the Ripper Pro добавляет поддержку для Windows NTLM (основаны на MD4) и хешей с солью Mac OS X 10.4+ SHA-1.
«Улучшенная сообществом» версия — jumbo добавляет поддержку намного большего типов хешей паролей, включая Windows NTLM (основан на MD4), Mac OS X 10.4-10.6 хеши с солью SHA-1, Mac OS X 10.7 хеши с солью SHA-512, сырые MD5 и SHA-1, произвольные основанные на MD5 типы хешей паролей от «веб приложений», хеши используемые базами данных SQL (MySQL, MS SQL, Oracle) и некоторыми серверами LDAP, несколько типов хешей используемых в OpenVMS, хеши паролей Eggdrop IRC bot, и множество других типов хешей, а также много файлов не-хешей, таких как приватные ключи OpenSSH, файлы S/Key skeykeys, Kerberos TGT, PDF файлы, ZIP (классический PKZIP и WinZip/AES) и архивы RAR.
В отличие от более старых взломщиков, John обычно не использует процедуры в стиле crypt(3). Вместо этого он имеет свои собственные высоко оптимизированные модули для различных типов хешей и процессорных архитектур. Некоторые из используемых алгоритмов, таких как bitslice DES, даже не могут имет реализацию внутри crypt(3) API; они требуют более мощных интерфейсов, таких какой используется в John. Кроме того, есть процедуры на языке Ассемблер для нескольких процессорных архитектур, наиболее важные для x86-64 и x86 с SSE2.
John the Ripper является активно развивающейся программой. Пакет John the Ripper (версия jumbo от сообщества) поставляется с большим количеством вспомогательных утилит. Среди этих утилит программы для генерации (извлечения) хеша. Этот хеш используется для взлома пароля в John the Ripper. Сторонние программы для взлома паролей, например, Hashcat, также работают с хешами, извлечёнными с помощью утилит из пакета John the Ripper.
Утилиты, включённые в базовый John the Ripper:
- mailer – Скрипт предупреждает по почте пользователей об их слабых паролях
- john – взломщик паролей John the Ripper
- unafs – Скрипт для предупреждения пользователей об их слабых паролях
- unshadow – Комбинирует файлы passwd и shadow
- unique – Удаляет дубликаты из словаря
В версии от сообщества намного больше вспомогательных программ и утилит.
Источник
Взлом паролей с помощью John the Ripper на Linux
Для тех из вас, кто еще не слышал о John the Ripper (здесь для краткости его называют John), это бесплатный инструмент для взлома паролей, написанный в основном на языке C.
Прежде чем идти дальше, мы должны сказать вам, что, хотя мы доверяем нашим читателям, мы не поощряем и не потворствуем любым вредоносным действиям, которые могут быть выполнены с помощью этого инструмента или любых других инструментов, о которых мы говорили в прошлом.
Инструменты, связанные с безопасностью, часто похожи на обоюдоострый меч, поскольку их можно использовать как для хороших, так и для плохих вещей. Поэтому, хотя это может показаться заманчивым, мы рекомендуем вам воздержаться от любых разрушительных действий, хотя бы потому, что у вас есть большие шансы попасть в тюремную камеру.
Взлом паролей с помощью John the Ripper на Linux
Эта статья будет посвящена Джону с точки зрения системного администратора, поэтому мы ожидаем, что у вас есть промежуточные знания о вашей системе Linux, независимо от того, какой дистрибутив это может быть, и что Вы являетесь человеком, заботящимся о безопасности, с базовыми знаниями о безопасности. Тем не менее, эта статья может понравиться вам также, если Вы являетесь домашним пользователем, желающим узнать о таких вещах, но имейте в виду: некоторые из представленных ниже команд потребуют много вашего процессорного времени, поэтому, возможно, было бы лучше, если бы у вас была тестовая машина и/или много времени и терпения, потому что попытки взлома паролей могут занять несколько дней, даже на относительно новой машине.
Установка Джона
Хотя, по крайней мере, в тех дистрибутивах, которые мы пробовали, пакет в названии просто “john” с Gentoo, делающим исключение и называющим его “johntheripper”, мы упростим его для вас и покажем, как установить его на несколько известных дистрибутивов.
Дистрибутив Debian
Debian отличается от других дистрибутивов, которые предлагают John в своих репозиториях, тем, что он предлагает хорошую страницу руководства, хотя у upstream ее нет. Для установки просто введите
# aptitude install john
Fedora
На Fedora, тоже легко установить.
Arch Linux
OpenSuse Linux
# zypper install john
Gentoo
Как мы уже говорили, пакет Gentoo назван иначе, чем другие предложения.
# emerge Johntheripper
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 (или Вы можете просто создать псевдоним).
Теперь давайте создадим текстовый файл в формате пароля ( : ) с допустимым хэшем, конечно, и заставим Джона работать. Вы можете просто скопировать пользователя из /etc/shadow, но мы рекомендуем что-то более простое, потому что мы предполагаем, что Вы хотите увидеть результаты как можно быстрее. Итак, создайте файл с именем password.txt где-нибудь внутри вашего /home и положите это в него:
Сохраните файл, а затем просто скормите его Джону без каких-либо аргументов (на данный момент):
$ /usr/sbin/john password.txt
Мы должны повторить наше предупреждение: взлом паролей-это трудоемкий и длительный процесс, поэтому в зависимости от вашей системы это может занять довольно много времени. Однако это также зависит от того, чего Вы хотите достичь, потому что если ваш мощный процессор не может подобрать пароль(и) в течение нескольких дней без результата, можно только с уверенностью сказать, что это хороший пароль. Но если пароль действительно критичен, оставьте систему до тех пор, пока Джон не закончит свою работу, чтобы убедиться, что все в порядке. Как мы уже говорили, это может занять много дней.
Один из способов-использовать /etc/shadow напрямую, но мы рекомендуем вам выбрать несколько иной курс. Обратите внимание, что это относится к системам, использующим теневые пароли, и все современные дистрибутивы Linux делают это. Джон предлагает отличную утилиту под названием unshadow, которую мы будем использовать для создания файла из наших файлов passwd и shadow:
# unshadow /etc/passwd /etc/shadow > mypasswd.txt
Теперь убедитесь, что mypasswd.txt доступен для вашего обычного пользователя и делать
$ /usr/sbin/john mypasswd.txt
Джон сначала попробует режим одиночного взлома, затем режим списка слов, а затем инкрементный. С точки зрения Джона, режим-это метод, который он использует для взлома паролей. Как Вы знаете, существует много видов атак: словарные атаки, атаки грубой силы и так далее. Как некоторые из вас, возможно, поняли, режим списка слов-это в основном атака словаря. Помимо этих трех режимов, перечисленных выше, Джон также поддерживает еще один, называемый внешним режимом. Вы можете выбрать, какой режим использовать, например, –single, –external и так далее. Мы рекомендуем вам ознакомиться с документацией по адресу openwall.com для хорошего, но краткого описания каждого режима. Но, конечно, мы расскажем вам, вкратце, что делает каждый режим.
Документация 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*
Точно так же, как Вы можете фильтровать по пользователю, Вы также можете фильтровать по группе, используя флаг –groups, и эта фильтрация доступна также при взломе. Переходя далее к режиму списка слов, вот как Вы можете использовать его с включенными встроенными правилами искажения:
$ /usr/sbin/john —wordlist=passwd.lst —rules passwd.txt
Джон также позволяет создавать несколько именованных сеансов, что практично, потому что, поскольку Джон может занять много времени для выполнения задачи, Вы можете позже просмотреть все запущенные сеансы, чтобы решить, какой из них убить. Вариант для именованных сеансов –сессии=имя задачи, и Вы можете использовать –статус или … статус=название задачи, чтобы увидеть всех или отдельных сессий. Но есть и еще кое-что: Вы можете восстановить сеансы или определенные из них по имени, используя –restore или –restore=task name. Несколько примеров:
$ /usr/sbin/john —session=allrules —wordlist=all.lst —rules mypasswd.txt
$ /usr/sbin/john —status=allrules
$ ps aux | grep john #get the PID of the john session you want to kill
$ 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 на многопроцессорной машине, она будет использовать только одно ядро, обычно первое. Вы можете решить эту проблему, прочитав документацию и следуя приведенным там инструкциям.
Источник