
Le fingerprint di wafw00f. Velocità Go. Nativo per pipeline. Rilevamento WAF da HTTP live e catture offline.
Le fingerprint di wafw00f. La velocità di Go. Native per le pipeline.
172 identità di prodotti WAF, basate sulle fingerprint di wafw00f.
Una CLI e libreria Go per l'analisi HTTP live e offline di risposte salvate.
Avvio rapido · Passare da wafw00f · Benchmark · Documentazione
Apri la demo split a dimensione intera
wafmeow è un'alternativa a wafw00f per il rilevamento dei WAF in Go, basata sul lavoro sulle fingerprint del progetto upstream. Porta il fingerprinting WAF veloce in pipeline concorrenti e strutturate, per i team che devono rilevare i WAF su larga scala.
jq, strumenti di notifica o un database,
mantenendo la diagnostica leggibile su stderr.# Set AUTHORIZED_DOMAIN to a domain you own or are authorized to test.
set -o pipefail
subfinder -d "${AUTHORIZED_DOMAIN:?set an authorized domain}" -silent |
httpx -silent |
wafmeow --target-file - --fast --jsonl --silent
Questa pipeline utilizza --fast per una rapida scansione attiva di ogni URL scoperto.
Per esportazioni esistenti di risposte httpx, utilizzare la
pipeline di importazione offline.
Compilare con Go 1.26 o versione successiva, utilizzando una toolchain con patch di sicurezza. Le build di rilascio utilizzano Go 1.27.3.
git clone https://github.com/Lu1sDV/wafmeow.git
cd wafmeow
go build -o wafmeow ./cmd/wafmeow
./wafmeow --help
Per la produzione, utilizzare una release che supera i gate di validazione della release. I download della v1.0.0 precedono l'irrobustimento della sicurezza presente in questo albero dei sorgenti.
I binari precompilati, il modulo Go e l'installazione tramite Homebrew sono disponibili in Releases and installation:
go install github.com/Lu1sDV/wafmeow/v3/cmd/wafmeow@latest
brew install Lu1sDV/tap/wafmeow
Il comando di installazione Go /v3 richiede una release v3 pubblicata. Prima di tale
release, compila dal checkout del codice sorgente sopra indicato; Homebrew continua a installare
l'ultima versione stabile pubblicata.
# Use your own local HTTP server on port 8080.
./wafmeow --target http://127.0.0.1:8080 --fast
Questo stampa un risultato leggibile dall'uomo. Usa --target / -t per un URL e ripetilo per più URL. Usa --target-file PATH per un file di righe di URL, oppure --target-file - per stdin.
--input PATH e -I PATH restano grafie equivalenti di --target-file PATH.
Scegli una sola sorgente di input; le risposte salvate usano --evidence per l'analisi offline.
| Obiettivo | Scegli | Raccolta |
|---|---|---|
| Fingerprinting attivo rapido | --fast | Sonda normale, senza user-agent e combinata |
| Sondaggio attivo più ampio | --deep | Otto tipi di richiesta selezionati; anche il valore predefinito quando non viene specificata alcuna modalità |
| Ispeziona solo le risposte normali | --baseline | Una richiesta normale, senza sonde attive |
| Riusa le risposte salvate | --evidence FILE | Classificazione offline, senza nuove richieste |
--baseline può trovare fingerprint già presenti in una risposta ordinaria. Usalo
quando vuoi un'ispezione HTTP normale senza sonde attive; non è un passaggio di configurazione
per --fast o --deep. Le tre modalità live sono mutuamente esclusive, e
i redirect e i budget influenzano il numero effettivo di richieste. Vedi
modalità di raccolta e payload per i compromessi.
# Discover URLs, then send new wafmeow requests:
httpx -l authorized-hosts.txt -silent |
./wafmeow --target-file - --fast --jsonl --silent