# O John the Ripper

### Что такое John the Ripper&#x20;

Одна из наиболее популярных программ для взлома паролей. Это свободно распространяемое ПО, которое отлично подходит для оценки безопасности веб-приложений.&#x20;

### Характеристики и возможность John the Ripper&#x20;

1. Поддерживает множество [алгоритмов хеширования](https://notes.kraken-security.ru/kraken/krupicy-znanii/obzor-populyarnykh-algoritmov-kheshirovaniya): DES, MD5, Blowfish, Kerberos AFS, и многие другие.
2. Работает на Unix, Windows, DOS, BeOS и OpenVMS.
3. Состоит из двух частей, которые обычно работают вместе. \
   \
   John →  обрабатывает сами хеш-файлы. \
   Unshadow → комбинирует файлы 'passwd' и 'shadow' в Unix-системах, чтобы создать единый файл, который может быть обработан программой.
4. Предлагает несколько режимов взлома, включая brute-force (полный перебор символов), dictionary (словарные атаки), инкрементальный режим и другие.
5. Может быть настроен для распределения нагрузки на несколько машин или процессоров. Это позволяет ускорить процесс взлома на многопроцессорных системах или сетях.
6. Архитектура позволяет писать плагины и расширения для поддержки новых алгоритмов хеширования и взлома паролей.
7. У инструмента активное сообщество разработчиков и пользователей, которые обмениваются наборами слов и стратегиями для увеличения эффективности взлома.
8. Наличие PRO-версии. Она предлагает дополнительные функции и поддерживается на нескольких дополнительных платформах.

### Плюсы и минусы John the Ripper

| +                                                                                    | -                                                                                                                                     |
| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------- |
| Открытый исходный код, что позволяет настраивать инструмент под свои нужды           | Требует хорошего понимания командной строки, хеширования и метода взломов паролей                                                     |
| Универсальность и возможность работать с многими типами хеширования                  | Настройка и конфигурация требует серьезного опыта работы с инструментом. Интуитивно настроить на все 100%  с первой попытки не выйдет |
| Гибкие режимы атаки                                                                  | Нет графического интерфейса                                                                                                           |
| Высокая скорость работы                                                              | На слабых компах будет очень медленным. Так что нужно серьезное железо, особенно если хотите юзать брутфорс                           |
| Возможность работать на разных ПО                                                    | Против сложных паролей John не так хорош, как хотелось бы. Не хватает вычислительной мощности                                         |
| Возможность адаптировать инструмент под конкретные задачи и ускорить процесс взлома. | Медленные обновления, так это скорее некоммерческий продукт, его допиливает сообщество в свободное время                              |
| Расширяемость за счет плагинов (для взлома SSH, RAR, ZIP и других форматов)          |                                                                                                                                       |

### Как установить John the Ripper на Kali Linux&#x20;

Он уже предустановлен в дистрибутиве. Но вдруг надо установить новейшую версию.&#x20;

1. Обновим систему:

   `sudo apt update` \
   `sudo apt upgrade`
2. Установим John the Ripper:

   `sudo apt install john`
3. Установка из исходного кода (для последней версии):

   \
   Если хотите установить последнюю community enhanced version (Jumbo), которая включает в себя дополнительные плагины и функциональные возможности, необходимо будет загрузить и скомпилировать исходный код:<br>

   `sudo apt-get install -y git build-essential libssl-dev zlib1g-dev` \
   `git clone https://github.com/openwall/john -b bleeding-jumbo john` \
   `cd john/src` \
   `./configure` \
   `make -s clean && make -sj4`

   \
   Эти команды загрузят исходный код (ветка bleeding-jumbo имеет наиболее актуальные наработки), скомпилируют его и соберет исполняемые файлы. \
   \
   -sj4 для make  → указывает на использование четырех потоков для компиляции, что ускорит процесс. Так что если у вас другое количество ядер/потоков, укажите их количество.
4. Проверим установку: <br>

   `john --version`

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

   \
   `./john --version`
5. Проверим работу: <br>

   `john --test`

   \
   Эта команда запустит ряд тестов производительности для различных алгоритмов хеширования.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://notes.kraken-security.ru/kraken/krupicy-znanii/instrumenty/o-john-the-ripper.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
