Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Submit
ToolsExploitsBlog
Submit

Hacking, PenTest, and Cybersecurity Tools for Your Security Arsenal!

Kitploit is a directory of hacking, cybersecurity, and pentesting tools. Discover the latest project updates to find vulnerabilities, analyze systems, automate testing, and strengthen your security.

FeedsContactPrivacy© 2026 Kitploit

Tool Directory

Categories

View all categories
Loading categories
spoofed — A professional-grade, fully async Python network spoofing suite for authorized security auditing. Features full IPv4/IPv6 interception, 802.11 wireless attacks, LLMNR/NBT-NS poisoning, and an interactive TUI with tamper-evident audit logging. | Kitploit
Tools/GitHubGitHub/amibhai/spoofed
Wi-Fi AuditingIDS/IPS EvasionScripting & AutomationPost-ExploitationNetwork SecurityWireless SecurityPenetration TestingRed TeamingDNS Analysis
GitHubamibhai/spoofed

spoofed

A professional-grade, fully async Python network spoofing suite for authorized security auditing. Features full IPv4/IPv6 interception, 802.11 wireless attacks, LLMNR/NBT-NS poisoning, and an interactive TUI with tamper-evident audit logging.

142 months agoNot yet reviewed

Most Popular

View all →

Discover the most used tools by our community.

Explore all tools

Browse our collection of tools

View all tools →
Share
View Repository

Spoof Toolkit v2.1

Professional-grade async Python network spoofing suite Interactive menu-driven UI · Full IPv4/IPv6 coverage · Responder-style poisoning Authorized security testing only — by amibhai

Disclaimer: This tool is for educational purposes and authorized security auditing only. The authors assume no liability and are not responsible for any misuse or damage caused by this program. Do not use this tool on networks you do not own or do not have explicit, written permission to test.

CI Coverage Python License


What's New in v2.1

ModuleDescription
attacks/deauth.py802.11 Deauthentication — kick clients, capture WPA handshakes
attacks/beacon_flood.py802.11 Beacon Flood — fake SSID storm
attacks/llmnr_nbt.pyLLMNR + NBT-NS + mDNS poisoning (Responder-style hash capture)
attacks/icmpv6_ra.pyICMPv6 Router Advertisement spoof — IPv6 gateway hijack
attacks/ndp_spoof.pyIPv6 NDP Neighbor Advertisement poison — IPv6 ARP spoof
attacks/captive_portal.pyCaptive portal (hotel/corporate/cafe/ISP templates)
attacks/wpad.pyWPAD proxy auto-config injection
core/platform_compat.pymacOS pf + Linux iptables + Windows netsh abstraction
Timing jitter±N-second random delay on every packet burst for IDS evasion
GitHub Actions CIpytest + mypy + coverage gate (≥80%) across Python 3.10–3.12
Dockerdocker build + docker-compose up for portable deployment
pyproject.tomlModern packaging, mypy strict config, ruff lint, coverage config

Features at a Glance

FeatureDetails
AuthorizationRules-of-engagement scope file — live fire is refused for any out-of-scope or out-of-window target; no scope ⇒ dry-run only
Architecture100% async Python 3.10+ — zero threading.Thread
UIAnimated 256-color banner + numbered menus + breadcrumbs
DashboardPRISM live 3-panel TUI (attack log / packet stats / credentials)
LoggingHMAC-SHA256-chained structlog audit trail (tamper-evident)
ReportsAuto-generated JSON + Markdown + HTML after every session
LanguagesAuto-detect from LANG + manual switch (en, hi, ar, zh, fr, es)
Preflight17-check system (scope, root, Python, deps, interfaces, terminal)
CleanupAlways restores ARP/NDP tables, iptables/pf rules in finally
PlatformLinux (full) · macOS (pf backend) · Windows (Npcap, limited)

Rules of Engagement (Authorization & Scope Control)

Real engagements are defined by a signed scope. This toolkit enforces one in code: it will not transmit a single packet at a target that is not explicitly authorized, inside an open engagement window. This is the difference between a professional red-team instrument and an indiscriminate script.

How it works

  • Declare the engagement once in a JSON (or YAML) scope file — see rules/engagement.example.json.
  • Point the toolkit at it via the SPOOF_TOOLKIT_SCOPE environment variable.
  • Every attack module calls Session.guard(...) before touching a target. A target outside the authorized ranges — or an engagement window that has closed — raises AuthorizationError and the attack is refused.
  • No scope loaded ⇒ dry-run only. Packets are still crafted and validated (great for training, demos, and CI) but are never put on the wire.
  • The authorization in force — including a SHA-256 fingerprint — is written into the HMAC-chained audit log and every session report, so the report proves exactly what was authorized.
# 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

Scope file fields

FieldMeaning
engagement_idrequired — unique engagement identifier
authorized_byrequired — named party authorizing the test (SOW / ticket)
client, operator, contact, notesengagement metadata for the audit trail
start, endISO-8601 window (UTC assumed if no offset); either bound may be omitted for open-ended
authorized_networksIPv4/IPv6 CIDRs or bare hosts that may be targeted
authorized_macs / authorized_ssids / authorized_bssidsallowlists for L2 / wireless targeting
denied_networks / denied_macsno-strike lists — always override the allowlists

Fail-closed by design: an empty allowlist authorizes nothing, and an in-range host on a denied_networks entry (e.g. a domain controller inside an otherwise-authorized /24) is refused.

Safe mode. session.safe_mode = True forces dry-run even with a valid scope loaded — use it to rehearse an engagement end-to-end without transmitting.


Attack Modules

Layer 2 / 3 (Ethernet · IP)

ModuleFileDescription
ARP Spoofingattacks/arp_spoof.pyCache poison — MitM, DoS, one-way, gateway-only
DNS Spoofingattacks/dns_spoof.pyResponse injection — selective, spoof-all, rules file, NXDOMAIN
Combined MitMattacks/combined_mitm.pyFull ARP + DNS + credential capture (asyncio.TaskGroup)
SSL Stripattacks/ssl_strip.pyTransparent HTTPS downgrade proxy (Linux/macOS)
Rogue DHCPattacks/rogue_dhcp.pyHijack default gateway via fake DHCP server (stealthy)
LLMNR/NBT-NSattacks/llmnr_nbt.pyNEW — LLMNR + NBT-NS + mDNS poisoning, NTLMv2 hash capture
WPADattacks/wpad.pyNEW — Browser proxy auto-config injection
Captive Portalattacks/captive_portal.pyNEW — Fake login page with 4 templates

802.11 Wireless

ModuleFileDescription
Deauthattacks/deauth.pyNEW — 802.11 deauthentication (targeted + broadcast), WPA handshake capture
Beacon Floodattacks/beacon_flood.pyNEW — Flood airwaves with hundreds of fake SSIDs
AP Scannerattacks/deauth.pyNEW — Passive 802.11 beacon scanner
Client Scannerattacks/deauth.pyNEW — Detect clients associated with an AP

IPv6

ModuleFileDescription
RA Spoofattacks/icmpv6_ra.pyNEW — ICMPv6 Router Advertisement (default gateway hijack)
NDP Spoofattacks/ndp_spoof.pyNEW — Neighbor Advertisement poison (IPv6 ARP equivalent)
Full IPv6 MitM(combo)NEW — RA + NDP + IPv6 forwarding for complete IPv6 intercept

Quick Start

# 1. Install
sudo bash install.sh

# 1b. Authorize an engagement (required for live fire — otherwise dry-run only)
cp rules/engagement.example.json rules/my-engagement.json   # then edit it
export SPOOF_TOOLKIT_SCOPE=rules/my-engagement.json

# 2. Run (interactive menu)
sudo -E spoof-toolkit

# 3. Or run directly
sudo python3 spoof_toolkit.py

# 4. Preflight check
sudo python3 spoof_toolkit.py --preflight

# 5. Launch PRISM dashboard directly
sudo python3 spoof_toolkit.py --prism

# 6. Docker (no install needed)
docker build -t spoof-toolkit .
docker run --rm -it --network host --cap-add NET_RAW --cap-add NET_ADMIN spoof-toolkit

Main Menu (v2.1)

Download Tool