Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
HashcatRosetta — Анализатор и интерпретатор правил Hashcat — «Розеттский камень» для декодирования синтаксиса правил hashcat | Kitploit
Инструменты/GitHubGitHub/bandrel/hashcatrosetta
Взлом паролейАтаки на ПаролиАнализ хэшейСкриптинг и автоматизацияУтилиты и фреймворкиОбучение и ОбразованиеБезопасность ИИ
GitHubbandrel/hashcatrosetta

HashcatRosetta

Анализатор и интерпретатор правил Hashcat — «Розеттский камень» для декодирования синтаксиса правил hashcat

Репозиторий
71123 дней назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
 _   _           _               _   ____                _   _        
| | | | __ _ ___| |__   ___ __ _| |_|  _ \ ___  ___  ___| |_| |_ __ _ 
| |_| |/ _` / __| '_ \ / __/ _` | __| |_) / _ \/ __|/ _ \ __| __/ _` |
|  _  | (_| \__ \ | | | (_| (_| | |_|  _ < (_) \__ \  __/ |_| || (_| |
|_| |_|\__,_|___/_| |_|\___\__,_|\__|_| \_\___/|___/\___|\__|\__\__,_|
                                                                  
    Расшифруйте Розеттский камень правил взлома паролей

HashcatRosetta

Проект на Python, предназначенный для анализа выходных файлов hashcat в режимах отладки 4 и 5 с целью выявления наиболее эффективных правил и отслеживания частотных шаблонов базовых слов, используемых при атаках на пароли.

Возможности

  • Разбор отладочных файлов hashcat (--debug-mode 4 и --debug-mode 5) с автоматическим извлечением базовых слов и правил
  • Привязка кандидатов к исходным словарям (режим 5) для статистики по каждому словарю
  • Отслеживание эффективности правил по нескольким метрикам:
    • Частота применения (наиболее часто применяемые правила)
    • Разброс базовых слов (правила, применённые к наибольшему числу уникальных базовых слов)
    • Генерация кандидатов (правила, создающие наибольшее число уникальных кандидатов)
  • Мониторинг шаблонов базовых слов с подробными журналами вхождений и статистикой
  • Генерация подробных отчётов с аналитикой по правилам и базовым словам
  • Экспорт анализа в форматы JSON или CSV для дальнейшей обработки
  • Интерфейс командной строки для удобного анализа и составления отчётов

Установка

Использование с uv (рекомендуется)

Если вы используете uv, можно запускать без установки:

# Клонируйте репозиторий
git clone https://github.com/bandrel/HashcatRosetta.git
cd HashcatRosetta

# Запуск как модуль (рекомендуется)
uv run python -m hashcat_rosetta --help

# Или используйте установленную команду
uv run hashcat-rosetta --help

Из исходного кода

uv tool install git+https://github.com/bandrel/HashcatRosetta.git

С зависимостями для разработки

Инструменты разработки находятся в группе зависимостей dev.

# С uv (устанавливает группу dev по умолчанию)
uv sync

# С pip (25.1+)
pip install -e . --group dev

Быстрый старт

Анализ отладочных файлов

Анализ отладочного файла hashcat (по умолчанию показывает сводку):

hashcat-rosetta debug_output.txt

Показать топ правил по частоте:

hashcat-rosetta debug_output.txt --rules --top 10 --metric frequency

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

hashcat-rosetta debug_output.txt --rules --metric basewords
hashcat-rosetta debug_output.txt --rules --metric candidates

Показать базовые слова, встречающиеся несколько раз:

hashcat-rosetta debug_output.txt --basewords --top 10

Показать топ словарей (только режим отладки 5):

hashcat-rosetta debug_output.txt --wordlists --top 10

Показать подробную статистику по каждому словарю (уникальные базовые слова, кандидаты и правила):

hashcat-rosetta debug_output.txt --wordlists --top 10 --detail

Вывод --wordlists повторяет структуру --rules: заголовок Top N Wordlists, за которым следуют пронумерованные строки Wordlist: <name> (<count>). Когда файл режима 5 анализируется без каких-либо флагов вывода, сводка по умолчанию также включает раздел Wordlist Statistics.

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

hashcat-rosetta debug_output.txt --debug-mode 5 --wordlists

Показать подробный анализ базовых слов:

hashcat-rosetta debug_output.txt --basewords --top 10 --detail --min-occurrences 2

Экспортировать полный отчёт анализа:

hashcat-rosetta debug_output.txt --export report.json --format json
hashcat-rosetta debug_output.txt --export report.csv --format csv

Объяснение правил

Пошаговое объяснение того, что делает правило hashcat:

hashcat-rosetta --explain "c$1" --baseword admin
hashcat-rosetta --explain "u$!" --baseword myword

Генерация масок с помощью естественного языка

Генерация масок hashcat из описаний на английском языке с использованием локальной LLM:

hashcat-rosetta --mask "The word 'Summer' followed by six digits."

Вывод:

Mask Suggestions for: 'The word 'Summer' followed by six digits.'
======================================================================

1. Summer?d?d?d?d?d?d
   literal "Summer", then 6 × digit → 1,000,000 candidates
   Why: matches the literal word followed by a 6-digit number

Сохранить сгенерированную маску в файл:

hashcat-rosetta --mask "The word 'Summer' followed by six digits." -o masks.hcmask

Генерация масок из других описаний:

hashcat-rosetta --mask "a capitalized season, two digits, and a special char"
hashcat-rosetta --mask "year 2020-2025 followed by exclamation or question mark"

Функция генерации масок использует локальный сервер Ollama, работающий с чат-эндпоинтом, совместимым с OpenAI. По умолчанию он подключается к http://localhost:11434 и использует модель gemma3:27b (см. ниже). Их можно настроить через переменные окружения или флаги CLI:

# Использование переменных окружения
OLLAMA_HOST=http://192.168.1.100:11434 OLLAMA_MODEL=llama2:70b \
  hashcat-rosetta --mask "your description here"

# Использование флагов CLI (переопределяют переменные окружения)
hashcat-rosetta --mask "your description" --ollama-host http://custom.host:11434 --model llama2

Примечание по безопасности: Описания масок отправляются только на настроенный вами эндпоинт Ollama (по умолчанию localhost, или туда, куда указывает --ollama-host/OLLAMA_HOST) — никогда облачному провайдеру. OpenAI SDK используется исключительно как HTTP-клиент к этому эндпоинту; никакие данные или API-ключ никогда не передаются на api.openai.com.

Почему gemma3:27b?

Значение по умолчанию выбирается скриптом scripts/benchmark_mask_models.py, который прогоняет фиксированный набор из 14 промптов в стиле --mask — включая обратные ссылки на пользовательские наборы символов и промпты на припоминание категорий (книги Библии, ссылки на библейские стихи, столицы европейских стран) — против каждой локально установленной модели-кандидата и оценивает каждый ответ тремя способами:

  • Детерминированный фильтр. Для каждого промпта есть написанная вручную проверка (правильное пространство ключей, правильное количество токенов, отсутствие дублирующихся предложений и т. д.). Жёсткий провал означает, что ответ модели даже не удалось разобрать в корректную маску (неверный JSON, неотвечающий сервер); мягкий провал означает, что он разобрался нормально, но не удовлетворил запрос (неверное количество цифр, негласный пользовательский набор символов, ...). Промпты с мягким провалом всё равно оцениваются, а не молча исключаются.
  • Перекрёстная проверка пространства ключей. Пространство ключей каждого проверенного предложения независимо проверяется с помощью mp64 из hashcat-utils (maskprocessor), если он установлен — это та же проверка, которую сама generate_masks() выполняет для каждого предложения в продакшене, поэтому жёсткий провал в бенчмарке здесь также означает, что реальное использование --mask его отклонило бы.
  • LLM-судья. Модель на отдельном хосте (gemma3:12b на второй машине, выбранная специально потому, что она сама не является кандидатом — избегает предвзятости самооценки) оценивает каждый ответ по шкале 1-5 на предмет того, насколько хорошо он удовлетворяет исходному запросу. Запросы отправляются с включённым режимом размышления, поскольку медленная модель в любом случае уже тратит время на круговой обмен.
Скачать инструмент