
Профессиональный полностью асинхронный набор инструментов для сетевого спуфинга на Python, предназначенный для авторизованного аудита безопасности. Включает полный перехват IPv4/IPv6, атаки на беспроводные сети 802.11, отравление LLMNR/NBT-NS и интерактивный TUI с защищённым от подделки журналом аудита.
Профессиональный асинхронный набор инструментов для сетевого спуфинга на Python Интерактивный интерфейс на основе меню · Полное покрытие IPv4/IPv6 · Отравление в стиле Responder Только для авторизованного тестирования безопасности — от amibhai
Отказ от ответственности: Этот инструмент предназначен исключительно для образовательных целей и авторизованного аудита безопасности. Авторы не несут никакой ответственности и не отвечают за любое неправомерное использование или ущерб, причинённый этой программой. Не используйте этот инструмент в сетях, которыми вы не владеете или на тестирование которых у вас нет явного письменного разрешения.
| Модуль | Описание |
|---|---|
attacks/deauth.py | Деаутентификация 802.11 — отключение клиентов, перехват WPA-рукопожатий |
attacks/beacon_flood.py | Флуд Beacon-кадров 802.11 — шторм поддельных SSID |
attacks/llmnr_nbt.py | Отравление LLMNR + NBT-NS + mDNS (перехват хешей в стиле Responder) |
attacks/icmpv6_ra.py | Спуфинг Router Advertisement ICMPv6 — перехват шлюза IPv6 |
attacks/ndp_spoof.py | Отравление Neighbor Advertisement NDP IPv6 — ARP-спуфинг для IPv6 |
attacks/captive_portal.py | Captive portal (шаблоны для отелей/корпораций/кафе/ISP) |
attacks/wpad.py | Инъекция автоконфигурации прокси WPAD |
core/platform_compat.py | Абстракция macOS pf + Linux iptables + Windows netsh |
| Джиттер таймингов | Случайная задержка ±N секунд на каждый пакетный всплеск для обхода IDS |
| GitHub Actions CI | pytest + mypy + порог покрытия (≥80%) для Python 3.10–3.12 |
| Docker | docker build + docker-compose up для портируемого развёртывания |
| pyproject.toml | Современная упаковка, строгая конфигурация mypy, линтинг ruff, конфигурация покрытия |
| Возможность | Подробности |
|---|---|
| Авторизация | Файл области правил взаимодействия — реальный запуск отклоняется для любой цели вне области или вне окна; нет области ⇒ только пробный запуск |
| Архитектура | 100% асинхронный Python 3.10+ — ноль threading.Thread |
| Интерфейс | Анимированный 256-цветный баннер + нумерованные меню + хлебные крошки |
| Панель управления | Живой TUI PRISM из 3 панелей (журнал атак / статистика пакетов / учётные данные) |
| Журналирование | Аудит-журнал structlog с цепочкой HMAC-SHA256 (защита от подделки) |
| Отчёты | Автоматически генерируемые JSON + Markdown + HTML после каждой сессии |
| Языки | Автоопределение из LANG + ручное переключение (en, hi, ar, zh, fr, es) |
| Предварительная проверка | Система из 17 проверок (область, root, Python, зависимости, интерфейсы, терминал) |
| Очистка | Всегда восстанавливает таблицы ARP/NDP, правила iptables/pf в блоке finally |
| Платформа | Linux (полностью) · macOS (бэкенд pf) · Windows (Npcap, ограниченно) |
Реальные проекты определяются подписанной областью. Этот набор инструментов обеспечивает её на уровне кода: он не передаст ни одного пакета в цель, которая не авторизована явно, в пределах открытого окна взаимодействия. В этом разница между профессиональным инструментом red team и неизбирательным скриптом.
rules/engagement.example.json.SPOOF_TOOLKIT_SCOPE.Session.guard(...) перед обращением к цели. Цель
вне авторизованных диапазонов — или закрытое окно взаимодействия
— вызывает AuthorizationError, и атака отклоняется.fingerprint — записывается
в аудит-журнал с цепочкой HMAC и в каждый отчёт сессии, поэтому отчёт доказывает,
что именно было авторизовано.# 1. Copy and edit the template with your engagement details + authorized targets
cp rules/engagement.example.json rules/my-engagement.json
# 2. Point the toolkit at it (enables live fire for in-scope targets only)
export SPOOF_TOOLKIT_SCOPE=rules/my-engagement.json
# 3. Verify it loaded and the window is open
sudo -E python3 spoof_toolkit.py --preflight
| Поле | Значение |
|---|---|
engagement_id | обязательно — уникальный идентификатор проекта |
authorized_by | обязательно — лицо, санкционировавшее тестирование (SOW / тикет) |
client, operator, contact, notes | метаданные проекта для журнала аудита |
start, end | окно в формате ISO-8601 (UTC, если смещение не указано); любую границу можно опустить для открытого интервала |
authorized_networks | IPv4/IPv6 CIDR или отдельные хосты, которые разрешено атаковать |
authorized_macs / authorized_ssids / authorized_bssids | списки разрешённых целей для L2 / беспроводных атак |
denied_networks / denied_macs | списки запрета — всегда переопределяют списки разрешений |
Отказ по умолчанию (fail-closed) заложен в архитектуру: пустой список разрешений не разрешает ничего, а хост в пределах диапазона, попадающий в запись denied_networks (например, контроллер домена внутри в остальном разрешённой /24), отклоняется.
Безопасный режим.
session.safe_mode = Trueпринудительно включает dry-run даже при загруженном корректном scope — используйте его для репетиции проекта от начала до конца без передачи пакетов.
| Модуль | Файл | Описание |
|---|---|---|
| ARP-спуфинг | attacks/arp_spoof.py | Отравление кэша — MitM, DoS, односторонний, только шлюз |
| DNS-спуфинг | attacks/dns_spoof.py | Инъекция ответов — выборочная, подмена всех, файл правил, NXDOMAIN |
| Комбинированный MitM | attacks/combined_mitm.py | Полный ARP + DNS + перехват учётных данных (asyncio.TaskGroup) |
| SSL Strip | attacks/ssl_strip.py | Прозрачный прокси для понижения HTTPS (Linux/macOS) |
| Rogue DHCP | attacks/rogue_dhcp.py | Перехват шлюза по умолчанию через поддельный DHCP-сервер (скрытно) |
| LLMNR/NBT-NS | attacks/llmnr_nbt.py | НОВОЕ — отравление LLMNR + NBT-NS + mDNS, перехват хэшей NTLMv2 |
| WPAD | attacks/wpad.py | НОВОЕ — инъекция автоконфигурации прокси браузера |
| Captive Portal | attacks/captive_portal.py | НОВОЕ — поддельная страница входа с 4 шаблонами |
| Модуль | Файл | Описание |
|---|---|---|
| Deauth | attacks/deauth.py | НОВОЕ — деаутентификация 802.11 (адресная + широковещательная), перехват рукопожатия WPA |
| Beacon Flood | attacks/beacon_flood.py | НОВОЕ — заполнение эфира сотнями поддельных SSID |
| AP Scanner | attacks/deauth.py | НОВОЕ — пассивный сканер beacon-кадров 802.11 |
| Client Scanner | attacks/deauth.py | НОВОЕ — обнаружение клиентов, связанных с точкой доступа |
| Модуль | Файл | Описание |
|---|---|---|
| RA Spoof | attacks/icmpv6_ra.py | НОВОЕ — ICMPv6 Router Advertisement (перехват шлюза по умолчанию) |
| NDP Spoof | attacks/ndp_spoof.py | НОВОЕ — отравление Neighbor Advertisement (аналог ARP для IPv6) |
| Полный IPv6 MitM | (комбо) | НОВОЕ — RA + NDP + IPv6-форвардинг для полного перехвата IPv6 |