offensive-tools/web/xsstrike/SKILL.md
XSStrike: advanced XSS detection suite with context-aware payload generation, DOM XSS analysis, site crawler, WAF detection, and blind XSS mode. Use when testing for reflected/stored/DOM XSS on WAF-protected targets or complex filter scenarios. Preferred over dalfox when deep filter analysis and WAF evasion matter; use dalfox for speed.
npx skillsauth add aeondave/malskill xsstrikeInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Context-aware XSS scanner — intelligent payload generation, DOM analysis, WAF evasion.
git clone https://github.com/s0md3v/XSStrike
cd XSStrike && pip3 install -r requirements.txt
# Single URL / GET param
python3 xsstrike.py -u "http://target.com/search?q=test"
# POST data
python3 xsstrike.py -u "http://target.com/feedback" --data "comment=test&name=x"
# Crawl full site
python3 xsstrike.py -u "http://target.com" --crawl -l 3 -t 10
# Blind XSS (inject on crawl, callback on trigger)
python3 xsstrike.py -u "http://target.com" --crawl --blind
# WAF bypass fuzzing
python3 xsstrike.py -u "http://target.com?q=test" --fuzzer
| Flag | Purpose |
|------|---------|
| -u <url> | Target URL with injectable parameter |
| --data <data> | POST body (default: GET) |
| --crawl | Crawl site and test all discovered parameters |
| -l <depth> | Crawl depth (default: 2) |
| --seeds <file> | Crawl seed URLs from file |
| --blind | Blind XSS — inject payloads during crawl (no reflection check) |
| --fuzzer | Fuzz WAF filters (slow, with delays) |
| --dom | DOM XSS analysis only |
| --skip-dom | Skip DOM analysis (faster) |
| -t <threads> | Thread count |
| -d <ms> | Delay between requests (ms) |
| --timeout <s> | Request timeout (seconds) |
| --encode | Encode payloads for WAF evasion |
| --json | Treat POST data as JSON |
| --path | Test path injection |
| --headers <h> | Custom headers (separate multiple with \n) |
| --proxy <proxy> | HTTP/HTTPS proxy (e.g., http://127.0.0.1:8080) |
| --file-log-level | File logging verbosity |
| --log-file <path> | Save output to log file |
| | XSStrike | Dalfox | |-|----------|--------| | Speed | Moderate | Fast | | WAF evasion | Deep encoding engine | Basic detection | | Context analysis | 4 hand-written parsers | Heuristic | | DOM XSS | Yes (dedicated analysis) | Limited | | Use when | WAF-protected, complex filters | Large-scope quick scans |
# Authenticated single-param scan
python3 xsstrike.py -u "http://target.com/search?q=test" \
--headers "Cookie: PHPSESSID=abc123"
# POST JSON API
python3 xsstrike.py -u "http://api.target.com/render" \
--json --data '{"name":"test","msg":"hello"}'
# Full site crawl with auth
python3 xsstrike.py -u "http://target.com" --crawl -l 3 -t 10 \
--headers "Cookie: session=abc123\nX-Custom: value"
# Blind XSS across full site
python3 xsstrike.py -u "http://target.com" --crawl --blind \
--headers "Cookie: session=abc123"
# WAF bypass mode (slow)
python3 xsstrike.py -u "http://target.com?id=1" --fuzzer -d 2
# Through Burp proxy
python3 xsstrike.py -u "http://target.com/search?q=test" \
--proxy http://127.0.0.1:8080
# Log results
python3 xsstrike.py -u "http://target.com" --crawl \
--log-file results.txt --file-log-level INFO
XSStrike uses 4 hand-written parsers to detect injection context:
| Context | Detected By | Payload Type | |---------|------------|--------------| | HTML tag body | HTML parser | Event handler injection | | HTML attribute | Attribute parser | Attribute breakout | | JavaScript string | JS parser | Quote escape + exec | | URL context | URL parser | URL encoding aware |
| File | When to load |
|------|--------------|
| references/xss-context-bypass.md | Context-specific payloads, WAF evasion patterns, blind XSS setup, DOM sink list |
data-ai
Scoped routing: Linux operator; hosts, sessions, users, services, packages, logs, containers, SSH, network paths, privilege evidence.
development
Offensive methodology for ICS/OT/SCADA environments in authorized industrial penetration testing and red team operations. Use when assessing PLCs, RTUs, HMIs, engineering workstations, historians, or field devices running Modbus, DNP3, EtherNet/IP, S7comm/S7+, Profinet, IEC 60870-5-104, BACnet, or OPC-UA. Covers passive OT network enumeration, protocol-level device interrogation, PLC coil/register read-write attacks, HMI session exploitation, historian and engineering workstation compromise, and safe escalation rules for critical infrastructure scope. Does not cover: general IT network exploitation (network-technique), physical hardware interfaces UART/JTAG/SPI (hardware-technique), wireless sensor network attacks (wireless-technique), RF/SDR signal analysis (hardware-ctf or wireless-technique), or CTF-framed ICS lab tasks (ics-ctf).
tools
Offensive methodology for authorized game security assessments, game client security research, and game-adjacent penetration testing in real-world engagements. Use when assessing game clients for cheating vulnerabilities, testing anti-cheat effectiveness, auditing game server protocols for score manipulation or economic fraud, reverse engineering game DRM or license validation, analyzing game save file protection, or assessing game mod/plugin security. Covers: process memory scanning and manipulation (Cheat Engine methodology), game binary reversing for license and DRM bypass, game network protocol analysis and packet replay, anti-cheat mechanism analysis, save file format reversing and tampering, speed hack and value injection techniques. Does NOT cover: CTF game challenges (game-ctf), game engine source code auditing (web-exploit-technique or vuln-search-technique for the backend), or general binary exploitation (pwn-ctf or reversing-technique).
development
Auth assessment: hardware/embedded methodology; UART/JTAG/SWD/SPI/I2C, firmware extraction, boot/debug paths, embedded OS evidence.