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

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

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

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

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

Категории

Все категории
Loading categories
pantagrule — большие наборы правил hashcat, сгенерированные на основе реальных скомпрометированных паролей | Kitploit
Инструменты/GitHubGitHub/rarecoil/pantagrule
Взлом паролейАтаки на ПаролиУтилиты и фреймворки
GitHubrarecoil/pantagrule

pantagrule

большие наборы правил hashcat, сгенерированные на основе реальных скомпрометированных паролей

Репозиторий
401565 лет назадПроверено Kitploit

Популярное

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

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

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

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

Смотреть все инструменты →
Поделиться

Pantagrule

гигантские наборы правил для hashcat, сгенерированные из скомпрометированных паролей

Предупреждение о сопровождении проекта: Данный проект считается завершённым. Никакие pull request'ы или изменения в этот проект в будущем вноситься не будут, за исключением реальных ошибок или миграций для обеспечения совместимости этих правил с новыми версиями hashcat.

Pantagrule — это серия правил для инструмента подбора паролей hashcat, сгенерированных на основе больших объёмов данных из реальных утечек паролей. Файлы правил Pantagrule могут быть большими, но сами правила настраиваемы и показывают лучшую производительность по сравнению со многими существующими наборами правил.

Pantagrule был создан с помощью алгоритма автоматической генерации правил Levenshtein Reverse Path (PACK) (Kacherginsky, 2013). Вывод PACK затем сортировался по количеству раз, которое правило было сгенерировано, для получения базового набора правил. Этот процесс похож на создание правил _NSAKEY для соревнований по взлому паролей в 2014 году (_NSAKEY, 2014), однако Pantagrule был сгенерирован на основе значительно большего набора паролей. Версия 2 Pantagrule была разработана на основе общедоступного корпуса hashes.org "founds" — лучшего публичного словаря. Это даёт более прозрачные результаты по сравнению с исходным вариантом, в котором использовался проприетарный корпус, содержащий 842 643 513 уникальных паролей.

При подаче таких больших наборов правил в PACK получаются миллионы правил. Однако, поскольку большинство сгенерированных правил встречается всего несколько раз, наиболее полезными оказываются те, которые генерируются алгоритмом чаще всего. Этот репозиторий содержит подмножество правил, сгенерированных PACK при итерации по существующему корпусу.

Оптимизированные варианты

Для создания вторичной оптимизации правил на реальных данных, топ-1 миллион сгенерированных правил был запущен на списке Pwned Passwords NTLM с использованием словаря rockyou. Любое правило, которое взломало пароль, было добавлено в отдельный список, а менее эффективные правила были отброшены.

Были созданы четыре типа оптимизации:

  • popular.rule: pantagrule.1m, запущенный на топ-25 000 000 паролей из набора HIBP.
  • random.rule: pantagrule.1m, запущенный на 25 000 000 случайно выбранных паролей из набора HIBP.
  • hybrid.rule: отсортированный список, объединяющий наиболее успешные правила popular и random, затем сокращённый вдвое, чтобы получить более лёгкий "сбалансированный" набор, работающий на большей выборке.
  • one.rule: Версия OneRuleToRuleThemAll, к которой добавлены самые эффективные правила hybrid, а список усечён до размера набора правил dive. Интересно, что пересечение с OneRuleToRuleThemAll составляет всего несколько тысяч правил, что делает две стратегии взаимодополняющими. one от Pantagrule показывает лучшие результаты, чем другие известные списки такого размера, и рекомендуется начинать именно с этого набора, прежде чем переходить к более крупным вариантам.

Pantagrule hashorg.v6

После успеха этих больших наборов была предпринята попытка обратного варианта Royce, в котором использовалась исходная методология Pantagrule, но оба набора данных были другими. Pantagrule теперь использует публичный список "founds" с hashes.org в качестве словарной базы для генерации правил, а затем была проведена оптимизация на списке NTLM V6 из Have I Been Pwned. Учитывая полностью публичную природу используемых данных, это также позволяет публиковать сырые данные для воспроизводимости, включая pantagrule.v2.1m.rule — топ-1 миллион правил, сгенерированных этой методологией. Данные для V5 и V6 совпадают для топ-25 миллионов паролей.

В этой версии изменился способ генерации one. Для создания one полный список из 1 миллиона правил был добавлен к OneRuleToRuleThemAll.rule, а затем весь набор откалиброван на Pwned V6, а не просто добавлены правила и выполнено усечение.

Соглашения об именах правил теперь изменились на формат pantagrule.${corpus}.${trainingversion}.${extension}. Это упрощает понимание того, для чего оптимизировано правило. Например, для pantagrule.hashorg.v6.random использовалась методология random с hashes.org в качестве основы для генерации правил, оптимизированная на Pwned Passwords V6.

Оригинальные правила

Оригинальные правила были обучены с использованием проприетарного словаря вместе с набором NTLM Pwned Passwords v5 с использованием rockyou.txt в качестве основы. Поскольку "обучающие данные" и валидационные данные совпадают, логично, что они оптимизированы для набора V5.

Варианты royce

По запросу участника hashcat Ройса Уильямса также были запущены оптимизации топ-1 миллиона правил с использованием списка founds с hashes.org. Это связано с тем, что корпус HIBP относительно загрязнён, а список founds с hashes.org, вероятно, даст более практичный набор правил для реального взлома. Они были добавлены как варианты royce. Оптимизации royce, по-видимому, содержат незначительно меньше правил в целом, а random.royce значительно эффективнее на длинном хвосте паролей, чем оригинальный random. Производительность не увеличилась по сравнению с существующими правилами на некоторых вариантах, но, учитывая, что обучающие и валидационные данные оригинального Pantagrule взяты из набора Pwned Passwords, это неудивительно. Варианты Pantagrule royce находятся в папке rules/royce.

Производительность по сравнению с другими часто используемыми правилами

Для проверки успешности стратегии Pantagrule по сравнению с другими наборами правил мы запустим валидационные данные на топ-25 миллионах паролей из Pwned Passwords V5 и топ-100 миллионах паролей из Pwned Passwords V5, чтобы понять эффективность правил при взломе "длинного хвоста" каждым набором. Канонический rockyou.txt будет нашим словарём и базой.

Оригинальный вариант генерировался на установке из 8x 1070Ti с hashcat v5.1.0. Варианты Pantagrule royce были созданы на установке из 4x Radeon VII с hashcat git сборки v5.1.0-1774-gf96594ef. Варианты hashorg.v6 были созданы и проверены (очень медленно) на одном NVIDIA Tesla M4, одном 1070Ti и hashcat v6.1.0.

Для оценки эффективности правил на очень распространённых паролях 0-25M вынесено в отдельный столбец. Столбец RPP — это правила на процент на наборе 100M. Рассчитывается по формуле rpp = Math.round(num_rules / (0_100m_percent - 6.450)). Чем выше это число, тем больше правил выполняется на каждый взломанный процент. Это помогает понять убывающую отдачу в наборах правил и даёт представление о повышенной стоимости выполнения правил на медленных хешах.

Заключение

Эта работа подтверждает ограничения алгоритма PACK LRP, первоначально отмеченные _NSAKEY на современных наборах данных при использовании словаря rockyou. Хотя алгоритм LRP генерирует правила, увеличивающие процент взлома, это происходит за счёт большого увеличения пространства поиска. По этой причине Pantagrule наиболее полезен в случаях, когда сложный взлом требует необычных правил.

Важно отметить, что если вы можете использовать PACK для генерации правил на основе конкретного корпуса, а затем применить их к оставшимся хешам, вы, скорее всего, получите более высокий процент взлома, чем при использовании одного из этих больших наборов. Например, Pantagrule V2 не так хорошо работает на PPv5, как набор, откалиброванный под v5.

Со времени первоначального выпуска Pantagrule эти правила доказали свою эффективность в многочисленных командах red team в крупных технологических компаниях и консалтинговых фирмах. Оригинальный список pantagrule.1m взломал 8% оставшихся хешей HIBP, которые выдержали корпус, использованный для генерации Pantagrule, вышеупомянутые распространённые наборы правил, 7-символьный буквенно-цифровой брутфорс и топологии KoreLogic PathWell.

Как заявляет даже автор мета-правила One Rule to Rule Them All (Hunt, 2017), не существует такого понятия, как правило, которое работает лучше других. Каждый случай использования различен, и каждый источник правил может быть тем, который поможет вам больше, чем другой, на конкретном дампе хешей или с конкретным словарём. Обратите внимание, что эти данные не показывают, что было взломано; некоторые правила взломали хеши, которые не взломали другие.

Цитирования

  1. Рабле, Ф. (1532). Пантагрюэль. Париж: Libr. générale française.
  2. Kacherginsky, P. (2013). Automatic Password Rule Analysis and Generation. [online] Доступно по адресу: https://medium.com/@iphelix/automatic-password-rule-analysis-and-generation-7d2574516e48 [Дата обращения: 4 окт. 2019].
  3. _NSAKEY. (2014). NSAKEY/nsa-rules. [online] Доступно по адресу: https://github.com/NSAKEY/nsa-rules [Дата обращения: 4 окт. 2019].
  4. Hunt, W. (2017). One Rule to Rule Them All. [online] Доступно по адресу: https://www.notsosecure.com/one-rule-to-rule-them-all/ [Дата обращения: 4 окт. 2019].

Лицензия

Правила Pantagrule распространяются под лицензией MIT. Вы можете свободно интегрировать их в свои собственные инструменты.

Скачать инструмент
ПравилаКоличество правилV5 25MV5 100MRPP
Без правил (только rockyou.txt)016.549%6.450%Н/Д
pantagrule.private.v5.one99,09279.814%69.417%1,574
pantagrule.private.v5.hybrid355,20581.346%73.372%5,308
pantagrule.private.v5.popular478,73681.792%73.544%7,135
pantagrule.private.v5.random616,23681.687%69.805%8,828
pantagrule.hashorg.v6.one99,09274.500%60.573%1,831
pantagrule.hashorg.v6.hybrid339,95377.649%68.341%5,493
pantagrule.hashorg.v6.popular514,41680.668%72.377%6,931
pantagrule.hashorg.v6.random638,77380.603%72.713%8,614
pantagrule.private.hashorg.one.royce99,09279.618%69.092%1,582
pantagrule.private.hashorg.hybrid.royce314,26881.068%73.082%4,716
pantagrule.private.hashorg.popular.royce420,98481.386%73.102%6,316
pantagrule.private.hashorg.random.royce592,23581.659%74.010%8,766
best646445.117%24.985%3
hob0646837.786%19.773%5
OneRuleToRuleThemAll52,01478.058%64.541%895
d3adhob057,54851.274%34.800%2,030
dive99,09277.111%63.314%1,743
_NSAKEY V1123,28976.42%64.121%2,138
_NSAKEY V2123,28976.882%64.472%2,124