Словари для пентестера: что держать под рукой
Ранее я рассказывал про репозиторий SecLists: что он в себе хранит и какие полезные файлы в нём есть. Более подробно с ним можно ознакомиться по ссылке ниже ➥ https://setka.ru/posts/019d58dd-5284-7f03-9b77-b41079805472
В этом посте хочу уже более поверхностно и глобально пройтись по теме словарей для пентестера: что это вообще такое, где они реально нужны и какие типы списков стоит держать под рукой.
━━━━━━━━━━ Что такое словари ━━━━━━━━━━
Если упростить, словари — это расходник для тестирования. Они нужны не только для brute force: через них ищут директории и файлы, перечисляют сабдомены, подбирают имена параметров, проверяют слабые пароли, подают payload’ы в формы и API, а также ищут ошибки, секреты и чувствительные строки в коде и логах.
━━━━━━━━━━ Где они нужны на практике ━━━━━━━━━━
На практике словари нужны почти на каждом этапе проверки
При работе с web и API они помогают на этапе discovery — то есть тогда, когда нужно сначала понять, что вообще есть у цели. С их помощью ищут: • директории и файлы • backup-файлы • сабдомены и vhost • имена параметров • типовые endpoint’ы и служебные пути
Отдельный пласт — это проверки auth-механизмов. Здесь словари нужны для работы с: • usernames • passwords • default credentials
На этапе fuzzing словари нужны уже для другого: не чтобы что-то найти, а чтобы проверить, как приложение реагирует на нестандартный ввод. Это могут быть строки для: • XSS • SQLi • command injection • LDAP • JSON • и других сценариев
━━━━━━━━━━ Какие списки стоит знать ━━━━━━━━━━
• Directories / Files — для поиска скрытых путей, backup’ов, конфигов и служебных файлов.
• Subdomains / DNS — для расширения поверхности атаки через поддомены и инфраструктурные имена.
• Parameters / Headers / Extensions — для поиска скрытых параметров, нестандартных заголовков и технических точек входа.
• Usernames / Passwords — для credential-based проверок, auth-аудита и default creds.
• Payload wordlists — для XSS, SQLi, command injection, LDAP, LFI/RFI и других классов уязвимостей.
• Web-Shells / Payload artifacts — для lab-анализа, ретроохоты и понимания того, какие артефакты вообще встречаются в реальных атаках.
━━━━━━━━━ Готовые базы списков ━━━━━━━━━
➣ SecLists — универсальная база списков под discovery, passwords, usernames, sensitive-data patterns, fuzzing payloads и web-shells; по сути, основной “комбайн” для пентестера. ➥ GitHub: https://github.com/danielmiessler/seclists
➣ Assetnote Wordlists — качественные и более контекстные списки для content discovery и subdomain enumeration, особенно полезные там, где нужны актуальные наборы под популярные технологии и современные web-стеки. ➥ GitHub: https://github.com/assetnote/wordlists
➣ xajkep/wordlists — наборы, сгруппированные по практическим сценариям: discovery, backup files, directories, extensions и смежные задачи. Это удобно, когда нужен не огромный общий список, а более точечный wordlist под конкретную цель. ➥ GitHub: https://github.com/xajkep/wordlists
➣ PayloadsAllTheThings — не столько репозиторий классических wordlist’ов, сколько большая база payload’ов и bypass-техник для web security, pentest и CTF; полезен, когда нужны не списки директорий, а готовые строки под XSS, LFI, command injection и другие классы уязвимостей. ➥ GitHub: https://github.com/swisskyrepo/payloadsallthethings
━━━━━━━━━ Итог ━━━━━━━━━
По сути, словари — это не “дополнение к тулзам”, а их рабочая основа. • Один список помогает расширить scope • другой найти скрытый endpoint • третий проверить auth • четвёртый ускорить triage по коду, логам или дампам.
При этом со временем почти у каждого пентестера появляется свой любимый набор списков, с которым он работает чаще всего. А когда растёт компетенция и насмотренность, довольно часто начинают собираться уже свои кастомные списки: под конкретный тип атак, под особенности целей, под стек технологий или под регион, в котором чаще встречаются нужные домены, имена, шаблоны и scope-специфика.