Коллеги, привет.
Давно хотел поделиться одной штукой, которую потихоньку пилю в свободное время. Называется
Pentool — консольный инструмент для веб-пентеста с текстовым интерфейсом (TUI). Своего рода попытка собрать в терминале то, к чему мы все привыкли в классических решениях, но без лишнего хлама и с возможностью залезть в код и переделать под себя.

Триал-режим уже работает, PRO-функции пока скромные, но в планах много чего интересного. Основные модули — прокси, сканер, интрудер, краулер — уже стабильны и готовы к использованию в повседневной работе.
Написан на
Python, ядро полностью асинхронное (
asyncio +
aiohttp). Внутри EventBus, так что модули живут своей жизнью и не мешают друг другу. Плюс это упрощает расширение — добавить свой модуль или плагин не составляет труда.
Почему TUI?
Потому что я фанат работы в терминале. Это быстро, надёжно, работает через SSH, не жрёт память и не требует лишних ресурсов. Всё в одном окне, всё под контролем.
Если решите попробовать — учтите, что нужен нормальный терминал с поддержкой мыши и true color. Windows Terminal, iTerm2, Kitty, Alacritty, WezTerm — подойдут. cmd.exe — нет, не мучайтесь.
Установка — всё банально просто:
Запуск:
Что умеет прямо сейчас?
Proxy — полноценный перехватчик HTTP/HTTPS с редактированием запросов на лету. Scope с wildcard-ами, Match & Replace, WebSocket-ы. Все запросы пишутся в SQLite с FTS5-поиском, большие тела автоматически выгружаются на диск, чтобы база не раздувалась.
Repeater — отправляйте запросы с любыми правками, вкладки сохраняются между сессиями. Есть режим отображения спецсимволов, чтобы было видно все \r\n.
Intruder — четыре стратегии подстановки: Sniper, Battering Ram, Pitchfork, Cluster Bomb. Автоматическая маркировка параметров — одной кнопкой оборачиваешь всё, что нужно, в маркеры.
Умная генерация пейлоадов на основе контекста (параметр, тип данных, стек) — это прям экономит время, не надо таскать с собой гигабайтные словари и перебирать всё подряд. Но если хочется по старинке — свои файлы с пейлоадами тоже можно подгружать. Предобработка (URL-encode, Base64, HTML-encode, MD5) и фильтрация результатов по статусу, длине, grep-у — всё есть.
Scanner — активный и пассивный. SQLi, XSS, SSTI, LFI, RCE, SSRF, XXE, CORS, JWT — покрытие приличное. Можно выбирать конкретные типы проверок — не гонять всё подряд, если нужно только XSS. Все находки сохраняются в SQLite.
Spider — краулер, который собирает страницы, формы, API-эндпоинты и JS-файлы. Умеет рендерить JavaScript через Playwright. Парсит robots.txt и sitemap.xml, лезет в JS-код и вытаскивает оттуда API.
Target / Site Map — карта сайта на основе прокси-трафика. Управление scope прямо из интерфейса, regex-правила включения/исключения, экспорт в JSON.
Decoder / Comparer / Sequencer — декодер с автоопределением цепочек, сравнение запросов side-by-side и анализ энтропии токенов с FIPS-тестами.
Чем Pentool отличается от классических решений?
—
Цветовая маркировка запросов — визуальное выделение по статусу, типу контента или своим правилам. Позволяет быстро ориентироваться в потоке. Доступно 6 цветов:






.
—
Комментарии к запросам — прямо в интерфейсе можно оставлять заметки для себя или коллег, они сохраняются и отображаются в истории.
—
Spider и Intruder доступны в базовой версии, а не в PRO, как у некоторых. Без потери функциональности.
—
Гибкое сканирование — можно сканировать только конкретные типы уязвимостей, а не всё подряд. Сильно ускоряет работу, когда знаешь, что ищешь.
—
Умный декодер — сам определяет цепочки преобразований (URL-encode → Base64 → JSON и т.д.) и раскручивает их за вас. 19 операций, включая JWT и Gzip.
—
Умная генерация пейлоадов в Intruder — не надо таскать гигабайтные словари, генератор сам подбирает релевантные пейлоады под конкретный параметр на основе контекста. При этом свои словари никто не отменял.
—
Sequencer — анализ энтропии токенов. Позволяет оценить криптостойкость генератора целевого приложения. С FIPS-тестами, позиционным анализом и ASCII-визуализацией.
—
Live Dashboard — в реальном времени можно смотреть расход памяти, CPU, работу с проектами и прочие ништяки.
—
История в SQLite с FTS5 — полнотекстовый поиск по запросам и ответам, фильтрация по хосту, методу, статусу, длине, цветовой метке. Крупные тела автоматически выносятся на диск.
А что насчёт AI?
Хотя в текущей версии нейросети не используются, архитектура Pentool позволяет интегрировать AI на
любом уровне:
— Анализ и классификация запросов
— Умная генерация пейлоадов
— Автоматическое построение структуры сайта
— Обнаружение аномалий в трафике
— Генерация отчётов
Всё это можно добавить через плагины, не трогая ядро. Есть идеи — велкам.
Кастомизация и плагины
Так как Pentool написан на Python, у вас есть полный доступ к исходному коду. Хотите изменить поведение сканера, добавить свои проверки, подключить свой генератор пейлоадов или анализатор трафика — пожалуйста. Встроенное
API для плагинов позволяет подключать свои модули без форка ядра.
Документация по разработке плагинов доступна на
4 языках. Да, я потратил на это время, чтобы любой желающий мог разобраться и написать что-то своё, независимо от того, на каком языке ему удобнее читать.
В общем, если вы хотите доработать инструмент под себя, добавить свою логику или автоматизацию — для этого всё есть.
О статусе проекта
Проект в активной бете. Я делаю его один, в свободное время, поэтому какие-то баги неизбежны. Если что-то сломалось, нашли критическую уязвимость, или просто не хватает какой-то функции — пишите.
Как помочь:
—

Искать баги и создавать Issues на GitHub, прикладывать логи и детали.
—

Писать предложения по улучшению.
—

Сообщать о критических уязвимостях мне лично в Telegram.
—

Ставить звёздочку на GitHub — это банально, но помогает проекту быть заметнее.
—

Рассказывать коллегам.
Я открыт к диалогу и готов оперативно реагировать на фидбек. Без сообщества такой проект жить не может.
Ссылки
—

Репозиторий:
github.com/DrXOps/pentool
—

Сайт:
pentool.pro
—

Telegram-канал:
t.me/pentool_pro
—

Контакты:
@sudores ·
support@pentool.pro
Статья подготовлена для сообщества codeby.net. Всем спасибо за внимание и поддержку! 