Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
xssearch — Scanner XSS basato su Rust con selezione del payload context-aware, rilevamento e bypass del WAF, crawling, callback XSS cieco e analisi statica dei sink DOM. | Kitploit
Strumenti/GitHubGitHub/affolter-engineering/xssearch
RicognizioneAnalisi StaticaScanner di VulnerabilitàScanner di Vulnerabilità WebGenerazione di PayloadSfruttamento di Applicazioni WebRaccolta InformazioniBypass WAFSicurezza WebPenetration TestingRed Teaming
21371 giorno faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Crawler
GitHubaffolter-engineering/xssearch

xssearch

Scanner XSS basato su Rust con selezione del payload context-aware, rilevamento e bypass del WAF, crawling, callback XSS cieco e analisi statica dei sink DOM.

Vedi Repository
Condividi

xssearch

Strumento avanzato di rilevamento XSS scritto in Rust, che combina l'intelligenza dei payload context-aware con l'ampiezza dell'iniezione.

Questo strumento è stato ispirato da XSStrike e XSSER. I payload sono stati raccolti da diverse fonti:

  • https://github.com/ardakocadoru/xss-cheatsheet
  • https://github.com/Proviesec/xss-payload-list
  • https://cheatsheetseries.owasp.org/cheatsheets/XSS_Filter_Evasion_Cheat_Sheet.html
  • https://github.com/swisskyrepo/PayloadsAllTheThings

Grazie ragazzi, siete fantastici ❤️

Attenzione: Utilizzare solo contro sistemi di propria proprietà o per i quali si dispone di esplicita autorizzazione scritta per il test.

Funzionalità

  • Scansione context-aware - sonda prima ogni parametro, rileva dove il valore viene riflesso (corpo HTML, attributo, JavaScript, commento, <title>, <textarea>, ecc.) e seleziona i payload più appropriati per quel contesto invece di sparare tutto alla cieca
  • Oltre 100 payload integrati - tag HTML, breakout di attributi, iniezione JS, poliglotti, sink DOM, varianti di bypass WAF
  • Rilevamento e bypass WAF - identifica Cloudflare, ModSecurity, Sucuri, Imperva, Akamai, AWS WAF, F5 BIG-IP, Barracuda, Wordfence; applica trasformazioni di bypass per-WAF (mutazione di maiuscole/minuscole, inserimento di commenti, caratteri zero-width e codifica)
  • Crawler - esplora link e form per scoprire automaticamente parametri iniettabili
  • Iniezione header e cookie - testa Referer, User-Agent, X-Forwarded-For, X-Real-IP e altri header, oltre ai valori dei cookie
  • Blind XSS - inietta payload di callback out-of-band (compatibili con Burp Collaborator, interactsh) in ogni sink per scenari di esecuzione differita (pannelli di amministrazione, visualizzatori di log e simili)
  • Analisi DOM XSS - ispezione statica di innerHTML, eval, document.write, location.href, jQuery .html() e altri sink pericolosi con rilevamento della sorgente
  • Codifica dei payload - codifica URL, doppio URL, entità HTML, Unicode e base64/eval con flag componibili
  • Output JSON - risultati strutturati per l'integrazione con altri strumenti
  • Report Markdown - report leggibile con tabella riassuntiva della severità, sezioni di dettaglio per ogni finding e tabella di riferimento rapido; pronto da incollare in un wiki o allegare a un ticket
  • Rust/rustls puro - nessuna dipendenza da OpenSSL; binario singolo quasi statico

Installazione

Dal sorgente (Nix)

git clone https://github.com/fabian-affolter/xssearch
cd xssearch
nix-shell --run "cargo build --release"
# binary: target/release/xssearch

Build di release con LTO e simboli rimossi:

nix-shell --argstr release true --run "$BUILD"

Dal sorgente (standard)

Richiede Rust 1.75+.

cargo build --release

Nixpkgs

Per gli utenti Nix o NixOS è disponibile un pacchetto. Tenere presente che le release più recenti potrebbero essere presenti solo nel canale unstable.

nix-env -iA nixos.xssearch

Utilizzo

xssearch [OPTIONS] <--url <URL> | --file <URLS_FILE>>

Opzioni

FlagDescrizione
-u, --url <URL>URL di destinazione. Usare FUZZ per marcare un punto di iniezione personalizzato
-f, --file <FILE>File con un URL per riga
-d, --data <DATA>Corpo POST. Usare FUZZ per marcare il punto di iniezione
-H, --header <H>Header di richiesta aggiuntivo, ripetibile
--cookie <COOKIE>Stringa cookie
--proxy <URL>Proxy HTTP/HTTPS
--timeout <N>Timeout della richiesta in secondi (predefinito: 10)
--user-agent <UA>User-Agent personalizzato
--follow-redirectsSegui i redirect HTTP
--threads <N>Richieste concorrenti (predefinito: 2)
--delay <MS>Ritardo tra le richieste in millisecondi
--crawlEsplora la destinazione per link e form
--crawl-depth <N>Profondità di scansione (predefinito: 3)
--headers-injectTesta gli header HTTP comuni come punti di iniezione
--cookie-injectTesta i valori dei cookie come punti di iniezione
--blind <URL>URL di callback per Blind XSS
--domAnalisi statica dei sink DOM XSS
--fuzzInvia tutti i payload indipendentemente dal contesto di riflessione
--payload-set <SET>all | html | js | attr | poly | dom | mxss | waf (predefinito: all)
--payloads-file <FILE>File di payload personalizzato, uno per riga
--encode <LIST>Codifiche separate da virgola: url,html,unicode,double,base64
--prefix <STR>Anteponi una stringa a ogni payload
--suffix <STR>Aggiungi una stringa a ogni payload
--waf-detectIdentifica il WAF prima della scansione
--waf-bypassApplica trasformazioni di bypass WAF ai payload
--output-json <FILE>Scrivi i risultati in un file JSON
--output-md <FILE>Scrivi i risultati in un file Markdown
-v, --verboseOutput dettagliato (mostra contesto, tutte le sonde)
-V, --versionStampa la versione ed esci

Esempi

Scansione base di un parametro GET

xssearch -u "https://example.com/search?q=test"

Form POST

xssearch -u "https://example.com/login" -d "user=admin&pass=FUZZ"

Scansione dalla root, rilevamento WAF, test degli header

xssearch -u "https://example.com/" --crawl --waf-detect --headers-inject -v

Bypass WAF con codifica URL + HTML

xssearch -u "https://example.com/?q=FUZZ" --waf-detect --waf-bypass --encode url,html

Blind XSS con callback interactsh

xssearch -u "https://example.com/contact" -d "msg=FUZZ" \
  --blind "https://abc123.oast.fun/xssearch"

Solo analisi statica DOM XSS

xssearch -u "https://example.com/app" --dom --no-banner

Salva i risultati come JSON

xssearch -u "https://example.com/?q=test" --output-json results.json

Salva i risultati come Markdown

xssearch -u "https://example.com/?q=test" --output-md report.md

Salva entrambi i formati contemporaneamente

xssearch -f targets.txt --crawl --waf-detect --output-json results.json --output-md report.md

Proxy attraverso Burp Suite

xssearch -u "https://example.com/?q=test" --proxy http://127.0.0.1:8080 -v

Test

Target minimale locale

Il modo più rapido per verificare lo strumento è avviare localmente un server Python intenzionalmente vulnerabile:

python3 - <<'EOF'
import http.server, urllib.parse

class H(http.server.BaseHTTPRequestHandler):
    def log_message(self, *a): pass
    def do_GET(self):
        p = urllib.parse.urlparse(self.path)
        q = urllib.parse.parse_qs(p.query)
        val = q.get('q', [''])[0]
        body = f'<html><body><p>Search: {val}</p></body></html>'.encode()
        self.send_response(200)
        self.send_header('Content-Type', 'text/html')
        self.end_headers()
        self.wfile.write(body)

http.server.HTTPServer(('127.0.0.1', 9999), H).serve_forever()
EOF

Poi scansionarlo:

xssearch -u "http://127.0.0.1:9999/?q=test" -v

Output atteso: [Vuln] XSS in 'q' con un payload in contesto HTML.

Target Docker locali

Queste immagini sono create appositamente per il test di strumenti di sicurezza e non contengono dati utente reali.

DVWA (Damn Vulnerable Web Application)

docker run -d -p 8080:80 vulnerables/web-dvwa
# Set security level to Low in the UI first
xssearch -u "http://localhost:8080/vulnerabilities/xss_r/?name=test" \
  --cookie "PHPSESSID=<your-session>; security=low"

OWASP WebGoat

docker run -d -p 8081:8080 webgoat/goat-and-wolf
xssearch -u "http://localhost:8081/WebGoat/" --crawl --crawl-depth 2 -v

OWASP Juice Shop

docker run -d -p 3000:3000 bkimminich/juice-shop
xssearch -u "http://localhost:3000/" --crawl --dom -v

bWAPP

Scarica lo strumento