pydictor
Описание pydictor
pydictor - это мощный и полезный конструктор хакерских словарей для атаки методом перебора.
Вы можете использовать pydictor для создания общего списка слов, настраиваемого списка слов, основанного на веб-контенте, списка слов социальной инженерии и так далее.
Вы можете использовать встроенный инструмент pydictor для безопасного удаления, слияния, удаления дублей, подсчёта частоты слов для фильтрации списка слов, кроме того, вы также можете указать свой список слов и использовать '-tool handler' для фильтрации своего списка слов.
Вы можете создать настраиваемый и сложный список слов, изменив несколько файлов конфигурации, добавив свой собственный словарь, используя режим leet, отфильтровав по длине; по количеству раз, которые встречается символ; по тиму различных символов, по регулярным выражениям, даже добавив настраиваемые скрипты кодирования в папку /lib/encode/. Вы можете добавить свой собственный скрипт плагина в папку /plugins/ и добавить собственный скрипт инструмента в папку /tools/.
Вы можете тонко настроить программу в файле конфигурации под ваши потребности.
У программы отличная совместимость: используете ли вы версию Python 2.7 или Python 3.x, pydictor можно запускать в Windows, Linux или Mac.
Домашняя страница: https://github.com/LandGrey/pydictor
Автор: LandGrey
Лицензия: GPLv3
Справка по pydictor
Использование:
pydictor.py [pydictor]
Не все опции в справке сопровождаются описанием, поэтому для понимания значения многих опций, нужно изучить таблицы, которые приведены ниже.
Опции:
-base [тип] -char [пользовательский набор] -chunk [кусок1] [кусок2] ... -extend [строка или файл] -plug [плагин, могут быть: birthday,pid8,pid4,scratch,pid6,ftp] --conf [выражение или файл] --pattern [выражение или файл] --sedb -o,--output [директория] -tool [инструмент, могут быть: hybrider,uniqifer,comparer,uniqbiner,counter,handler,combiner,shredder] --len [минимальная длина] [максимальная длина] --head [строка префикса] --tail [строка суффикса] --encode [кодировка, могут быть: none,sha1,sha512,url,execjs,des,rsa,b32,b16,b64,test,sha256,md516,hmac,md5] --occur [буква] [цифра] [специальный] --types [буква] [цифра] [специальный] --repeat [буква] [цифра] [специальный] --regex [регулярное выражение] --level [код] --leet [код] --dmy *[+] Полезный создатель хакерских словарей. [+]* [+] Сделал LandGrey email:LandGrey@qq.com опциональные аргументы: -h, --help показать справку и выйти -base ТИП Выбор из (d, L, c, dL, dc, Lc, dLc) d цифра [0 - 9] L маленькая буква [a - z] c большая буква [A - Z] dL Смесь d и L [0-9 a-z] dc Смесь d и c [0-9 A-Z] Lc Смесь L и c [a-z A-Z] dLc Смесь d, L и dL [0-9 a-z A-Z] -char СИМВОЛЫ Использовать пользовательский набор символов для создания словаря -chunk arg [arg ...] Создавать словарь из нескольких кусков строк -extend arg [arg ...] Предустановленные правила добавления символов к создаваемым строкам или готовым словарям -plug arg [arg ...] birthday [дата начала] [дата конца], формат даты: [yyyyMMdd или ddMMyyyy(--dmy ОПЦИИ)] ftp [слово1] [слово2] ... pid4 последние 4 цифры китайской ID карты (аналог паспорта) pid6 последние 6 цифры китайской ID карты (аналог паспорта) pid8 последние 8 цифры китайской ID карты (аналог паспорта) scratch [URL или файл] --conf [путь к файлу] Использовать для создания словаря строку конфигурации или файл --pattern [путь к файлу] Использовать строку шаблона для построения словаря --sedb Запуск Social Engineering Dictionary Builder -o path, --output path Указать папку для вывода результатов по умолчанию: /usr/share/pydictor/results -tool arg [arg ...] combiner [директория] comparer [файл с уменьшаемым] [файл с вычитаемым] counter ['v','s','vs'] [файл] [view_num] handler [файл] hybrider [файл1] [файлe2] ... shredder [файл или директория] uniqbiner [директория] uniqifer [файл] --len minlen maxlen Минимальная и максимальная длина слов, по умолчанию: min=0 max=4 --head ПРЕФИКС Добавляет строку в начало каждого слова --tail СУФФИКС Добавляет строку в конец каждого слова --encode encode b16 кодирование base16 b32 кодирование base32 b64 кодирование base64 des алгоритм des и требуется код модификации execjs выполнить функцию js и требуется код модификации hmac алгоритм hmac message digest md5 алгоритм md5 message digest вывод 32 char md516 алгоритм md5 message digest вывод 16 char none не кодировать (по умолчанию) rsa алгоритм rsa и требуется код модификации sha1 алгоритм sha-1 message digest sha256 алгоритм sha-256 message digest sha512 алгоритм sha-512 message digest test настраиваемый метод кодирования с помощью функции модификации url url кодирование --occur БУКВА ЦИФРА СПЕЦИАЛЬНЫЙ Фильтр по максимальной частоте встречаемости букв, цифр, специальных символов. По умолчанию: БУКВА "<=99" ЦИФРА "<=99" СПЕЦИАЛЬНЫЙ "<=99" --types БУКВА ЦИФРА СПЕЦИАЛЬНЫЙ Фильтр по минимальной частоте встречаемости букв, цифр, специальных символов. По умолчанию: БУКВА ">=0" ЦИФРА ">=0" СПЕЦИАЛЬНЫЙ ">=0" --repeat БУКВА ЦИФРА СПЕЦИАЛЬНЫЙ Фильтр по количеству идущих подряд букв, цифр, специальных символов. По умолчанию: БУКВА ">=0" ЦИФРА ">=0" СПЕЦИАЛЬНЫЙ ">=0" --regex regex Фильтр по регулярному выражению, по умолчанию (означает "что угодно"): (.*?) --level code Использовать код [1-5] для фильтрации результатов, по умолчанию: 3 --leet code [code ...] Выбрать код режима leet (0, 1, 2, 11-19, 21-29) --more Добавить более простой список слов для расширения результатов функции, по умолчанию: false --dmy Использовать формат даты ddMMyyyy, по умолчанию формат даты: yyyyMMdd
Руководство по pydictor
Страница man отсутствует.
Методы, которыми pydictor может создавать списки слов:
Тип | Метод генерации словарей | Идентификатор | Описание | Поддерживаемые функции (расшифровка ниже) |
---|---|---|---|---|
Ядро | base | C1 | Словарь на основе выбранных групп символов | F1 F2 F3 F4 |
Ядро | char | C2 | Словарь на основе пользовательского набора символов | F1 F2 F3 F4 |
Ядро | chunk | C3 | Словарь на основе перестановки и комбинирования | ВСЕ |
Ядро | conf | C4 | Словарь по правилам из указанного конфигурационного файла | ВСЕ |
Ядро | pattern | C5 | Быстро генерируемый словарь на основе шаблона | F2 F3 F4 |
Ядро | extend | C6 | Расширенный словарь на основе правил | ВСЕ |
Ядро | sedb | C7 | Словарь на основе социальной инженерии | ВСЕ |
Инструмент | combiner | T1 | Инструмент для комбинирования файлов в указанной директории | |
Инструмент | comparer | T2 | Инструмент для сравнений и поиска различий в содержимом файлов | ВСЕ |
Инструмент | counter | T3 | Инструмент подсчёта частоты слов | ВСЕ |
Инструмент | handler | T4 | Инструмент обработки входного файла | ВСЕ |
Инструмент | uniqbiner | T5 | Инструмент для комбинирования и уникализации файлов в директории | ВСЕ |
Инструмент | uniqifer | T6 | Инструмент уникализации входного файла | ВСЕ |
Инструмент | hybrider | T7 | Инструмент для объединения слов из нескольких словарей | F1 F2 F3 F4 |
Плагин | birthday | P1 | Список слов по ключевым словам дня рождения, строится на основе введённой даты и времени | ВСЕ |
Плагин | ftp | P2 | Создание паролей FTP по ключевым словам | ВСЕ |
Плагин | pid4 | P3 | Словарь с 4 последними символами (китайской) ID карты | ВСЕ |
Плагин | pid6 | P4 | Словарь с 6 последними символами (китайской) ID карты | ВСЕ |
Плагин | pid8 | P5 | Словарь с 8 последними символами (китайской) ID карты | ВСЕ |
Плагин | scratch | P6 | Список слов на основе ключевых слов с веб-страниц | ВСЕ |
Описание и коды функций:
Функция | Код | Описание |
---|---|---|
len | F1 | Диапазон длины |
head | F2 | Добавить префикс (строку в начало слова) |
tail | F3 | Добавить суффикс (строку в конец слова) |
encode | F4 | Кодировать все сгенерированные слова |
occur | F5 | Фильтр по максимальной частоте встречаемости букв, цифр, специальных символов |
types | F6 | Фильтр по минимальной частоте встречаемости букв, цифр, специальных символов |
regex | F7 | Фильтр по регулярному выражению |
level | F8 | Устанавливает уровень правил словаря |
leet | F9 | Включает режим 1337 |
repeat | F10 | Фильтр по числу идущих подряд букв, чисел, специальных символов |
Функции кодирования, хеширования и поддерживаемые ими кодировки и шифрование:
Имя | Описание |
---|---|
none | Ничего не делать, по умолчанию |
b16 | Кодирование base16 |
b32 | Кодирование base32 |
b64 | Кодирование base64 |
des | Алгоритм des, нужен код модификации |
execjs | Выполнить функцию js, нужен код модификации |
hmac | Алгоритм hmac message digest |
md5 | Алгоритм md5 message digest вывод 32 char |
md516 | Алгоритм md5 message digest вывод 16 char |
rsa | Алгоритм rsa algorithm, нужен код модификации |
sha1 | Алгоритм sha-1 message digest |
sha256 | Алгоритм sha-256 message digest |
sha512 | Алгоритм sha-512 message digest |
url | Кодирование URL |
test | Пример настраиваемого метода кодирования |
Таблица кодов воздействия режима leet:
Код | Исходная строка | Новая строка |
---|---|---|
0 | as a airs trees | 45 4 41r5 tr335 |
1 | as a airs trees | 4s 4 4irs trees |
2 | as a airs trees | a5 a air5 tree5 |
11 | as a airs trees | 4s a airs trees |
12 | as a airs trees | 4s 4 airs trees |
13 | as a airs trees | 4s 4 4irs trees |
14 | as a airs trees | 4s 4 4irs trees |
… | as a airs trees | 4s 4 4irs trees |
21 | as a airs trees | as a airs tree5 |
22 | as a airs trees | as a air5 tree5 |
23 | as a airs trees | a5 a air5 tree5 |
24 | as a airs trees | a5 a air5 tree5 |
… | as a airs trees | a5 a air5 tree5 |
Примеры запуска pydictor
Команда сгенерирует список слов, состоящие из маленьких букв (-base L) длиной от двух до трёх символов (--len 2 3):
python3 pydictor.py -base L --len 2 3
Генерация слов длиной от 1 до 3 символов (--len 1 3) из цифр, больших и маленький букв (-base dLc) с сохранением их в указанный файл (-o /awesome/pwd):
python3 pydictor.py -base dLc --len 1 3 -o /awesome/pwd
Следующая команда создаст список слов, состоящих только из цифр (-base d), длиной четыре символа (--len 4 4), перед каждой строкой будет добавлено слово Pa5sw0rd (--head Pa5sw0rd) и словарь будет сохранён в файл D:\exists\or\not\dict.txt (--output D:\exists\or\not\dict.txt):
python3 pydictor.py -base d --len 4 4 --head Pa5sw0rd --output D:\exists\or\not\dict.txt
В команде берутся шесть фрагментов разной длины и из них генерируются слова, к которым затем к началу и к концу добавляются строки:
python3 pydictor.py -chunk abc 123 '!@#' @ . _ ' ' --head a --tail @pass
Команда возьмёт в качестве исходного файла ~/rockyou_clean.txt, и удалит все повторяющиеся слова (-tool uniqifer ~/rockyou_clean.txt), затем она отфильтрует список слов, при этом в каждом слове должно быть три или более букв, более двух цифры и ноль специальных символов (--occur ">=3" ">2" "==0"), полученный результат должен быть сохранён в указанный файл (--output ~/uniq.txt):
python3 pydictor.py -tool uniqifer ~/rockyou_clean.txt --occur ">=3" ">2" "==0" --output ~/uniq.txt
Команда для генерации файла с паролями, в которых первой идёт цифра, затем маленькая буква, затем две цифры (маска ?d?l?d?d):
Можно указать буквальные символы, например, в следующей команде буквальными символами является строка «Password»:
В следующей команде в диапазон включены не отдельные символы, а строки bob, b0b и BOB. То есть первая часть генерируемых слов будет включать одну из этих строк, затем будет четыре цифры, а в конце будет строка «@passw0rd».
Установка pydictor
Установка в Kali Linux
git clone --depth=1 --branch=master https://www.github.com/landgrey/pydictor cd pydictor/ chmod +x pydictor.py python3 pydictor.py
Установка в BlackArch
Программа предустановлена в BlackArch.
sudo pacman -S pydictor
Установка в Debian, Linux Mint, Ubuntu
sudo apt install git git clone --depth=1 --branch=master https://www.github.com/landgrey/pydictor cd pydictor/ chmod +x pydictor.py python3 pydictor.py
Информация об установке в другие операционные системы будет добавлена позже.
Comments are Closed