Содержание

Подбор пароля к архиву RAR с помощью hashcat

0) Извлечение хеша из архива

Установка rar2john.exe на Windows

Вариант 1. Готовая сборка John the Ripper

1. Скачайте John the Ripper Jumbo:

2. Распакуйте архив, например, в C:\john\.

3. В папке C:\john\run\ находятся утилиты:

4. Добавьте путь в переменную окружения PATH:

setx PATH "%PATH%;C:\john\run"

Для работы hashcat требуется хеш архива, который можно получить с помощью утилиты rar2john (идёт в составе John the Ripper).

Windows:

rar2john.exe "C:\path\myarchive.rar" > rar.hash

В файле rar.hash появится строка с хешем:

Для hashcat:


Убрать из файла префикс, вместе с :

1) Брутфорс (маски, -a 3)

Только цифры, 8 знаков:

hashcat -m 13000 -a 3 rar.hash ?d?d?d?d?d?d?d?d

Маленькие буквы + цифры + фиксированный символ @ (6 знаков):

hashcat -m 13000 -a 3 rar.hash ?l?l?l?d?d@

Свой класс символов и инкремент:

hashcat -m 13000 -a 3 rar.hash -1 ?l?u?d@#_.- --increment ?1?1?1?1?1?1?1?1

Чтобы не было ошибок CUDA

hashcat.exe  --backend-ignore-cuda -m 13000 hello-p.txt -a 3 -1 ?l?d@ ?1?1?1?1?1?1?1?1  -w 4

2) Словарные атаки (а=0)

Базовая словарная атака:

hashcat -m 13000 -a 0 rar.hash rockyou.txt

С правилами (мутации слов):

hashcat -m 13000 -a 0 rar.hash rockyou.txt -r rules\best64.rule

3) Комбинаторные атаки

Два словаря склеиваются попарно:

hashcat -m 13000 -a 1 rar.hash dict1.txt dict2.txt

Словарь + маска (слово + 4 цифры):

hashcat -m 13000 -a 6 rar.hash rockyou.txt ?d?d?d?d

Маска + словарь (3 буквы + слово):

hashcat -m 13000 -a 7 rar.hash ?l?l?l rockyou.txt

Hashcat RAR Cheatsheet

Сценарий Команда
RAR5, 8 цифр подряд `hashcat -m 13000 -a 3 rar.hash ?d?d?d?d?d?d?d?d`
RAR5, буквы+цифры+@ (6 зн.) `hashcat -m 13000 -a 3 rar.hash ?l?l?l?d?d@`
RAR3, слово + год (4 цифры) `hashcat -m 12500 -a 6 rar.hash rockyou.txt ?d?d?d?d`
RAR5, словарь `hashcat -m 13000 -a 0 rar.hash rockyou.txt`
RAR5, словарь + правила `hashcat -m 13000 -a 0 rar.hash 10k-most-common.txt -r rules\best64.rule`
Маска: свой класс символов `hashcat -m 13000 -a 3 rar.hash -1 ?l?u?d@#_.- –increment ?1?1?1?1?1?1?1?1`
Маска + словарь (3 буквы + слово) `hashcat -m 13000 -a 7 rar.hash ?l?l?l rockyou.txt`
Словарь + маска (слово + 4 цифры) `hashcat -m 13000 -a 6 rar.hash rockyou.txt ?d?d?d?d`
Показать найденный пароль `hashcat -m 13000 rar.hash –show`
Сессия + восстановление `hashcat –session rarjob -m 13000 -a 3 rar.hash ?d?d?d?d?d?d?d?d` → `hashcat –session rarjob –restore`

4) Управление и вывод результатов

Сессия (можно ставить на паузу/возобновлять):

hashcat --session rarjob -m 13000 -a 3 rar.hash ?d?d?d?d?d?d?d?d

Управление во время работы:

Возобновление сессии:

hashcat --session rarjob --restore

Показать найденный пароль:

hashcat -m 13000 rar.hash --show

5) Производительность и стабильность


6) Частые ошибки и решения


7) Готовые сценарии

RAR5, 8 цифр:

hashcat -m 13000 -a 3 rar.hash ?d?d?d?d?d?d?d?d

RAR5, словарь + правила:

hashcat -m 13000 -a 0 rar.hash .\wordlists\10k-most-common.txt -r .\rules\best64.rule

RAR3, слово + год (4 цифры):

hashcat -m 12500 -a 6 rar.hash rockyou.txt ?d?d?d?d

RAR5, свой набор символов, длины 6–10:

hashcat -m 13000 -a 3 rar.hash -1 ?l?u?d@#_.- --increment --increment-min 6 --increment-max 10 ?1?1?1?1?1?1?1?1?1?1

Работа со словарями в hashcat

Словарь — это обычный текстовый файл (.txt), где каждая строка содержит один пароль. Hashcat использует словари для быстрой проверки хешей против известных паролей.

Пример словаря:

123456
password
qwerty
letmein
welcome1
admin123

1. Подключение словаря

Запуск словарной атаки:

hashcat -m 13000 -a 0 rar.hash rockyou.txt

2. Использование нескольких словарей

Можно указать сразу несколько файлов:

hashcat -m 13000 -a 0 rar.hash dict1.txt dict2.txt

3. Словари + правила (rules)

Правила позволяют изменять пароли из словаря на лету: добавлять цифры, менять регистр, подставлять символы.

Пример:

hashcat -m 13000 -a 0 rar.hash rockyou.txt -r rules\best64.rule

4. Фильтрация словаря

Иногда словарь слишком большой, его можно уменьшить:

Оставить только строки до 8 символов:

grep -E '^.{1,8}$' rockyou.txt > short.txt

Удалить дубликаты:

sort rockyou.txt | uniq > unique.txt

5. Комбинаторные атаки со словарями

Примеры:

Словарь + 4 цифры:

hashcat -m 13000 -a 6 rar.hash rockyou.txt ?d?d?d?d

3 буквы + слово из словаря:

hashcat -m 13000 -a 7 rar.hash ?l?l?l rockyou.txt

6. Где взять словари


Итог

Правила (rules) в hashcat

Правила (rules) позволяют изменять пароли из словаря «на лету» и генерировать их варианты. Каждое правило — это строка, содержащая одну или несколько команд. Команды применяются последовательно к каждому слову словаря.

Пример:


Базовые команды

Команда Действие Пример
l все буквы маленькие PASSWORDpassword
u все буквы заглавные passwordPASSWORD
c первая буква заглавная passwordPassword
C инвертировать регистр PaSsWoRdpAsSwOrD
t поменять регистр букв passwordPASSWORD / Password
d удвоить слово catcatcat
r перевернуть слово doggod
$X добавить символ X в конец passpass1
^X добавить символ X в начало word@word
sXY заменить символ X на Y password (sao) → p@ssword
: ничего не делать (NOP) adminadmin

Примеры правил

Файл rules/custom.rule:

c       # Первая буква заглавная
c$1     # Первая буква заглавная + "1" в конце
u$2024  # Все заглавные + добавить "2024"
s$a@    # Заменить "a" на "@"
c$!     # Первая заглавная + добавить "!"

Запуск с применением правил:

hashcat -m 13000 -a 0 rar.hash rockyou.txt -r rules/custom.rule

Готовые правила hashcat

Hashcat уже содержит несколько популярных наборов правил:

Пример запуска:

hashcat -m 13000 -a 0 rar.hash rockyou.txt -r rules\best64.rule

Совмещение правил

Можно использовать сразу несколько файлов правил:

hashcat -m 13000 -a 0 rar.hash rockyou.txt -r rules/best64.rule -r rules/d3ad0ne.rule

Итог