
Empreintes de wafw00f. Vitesse de Go. Natif pour les pipelines. Détection de WAF à partir de captures HTTP en direct et hors ligne.
Les empreintes de wafw00f. La vitesse de Go. Natif pour les pipelines.
172 identités de produits WAF, basées sur les empreintes de wafw00f.
Une CLI et bibliothèque Go pour l'analyse HTTP en direct et hors ligne de réponses enregistrées.
Démarrage rapide · Passer de wafw00f · Benchmarks · Documentation
Ouvrir la démo scindée en taille réelle
wafmeow est une alternative à wafw00f pour la détection de WAF en Go, basée sur le travail d'empreintes du projet amont. Il apporte une empreinte WAF rapide dans des pipelines concurrents et structurés pour les équipes qui doivent détecter les WAF à grande échelle.
jq, des outils de notification ou une base de données,
tout en conservant les diagnostics humains sur 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
Ce pipeline utilise --fast pour un scan actif rapide de chaque URL découverte.
Pour les exports de réponses httpx existants, utilisez le
pipeline d'import hors ligne.
Compilez avec Go 1.26 ou une version plus récente, en utilisant une chaîne d'outils corrigée des vulnérabilités de sécurité. Les builds de version utilisent Go 1.27.3.
git clone https://github.com/Lu1sDV/wafmeow.git
cd wafmeow
go build -o wafmeow ./cmd/wafmeow
./wafmeow --help
Pour la production, utilisez une version qui passe les portes de validation des versions. Les téléchargements v1.0.0 sont antérieurs au renforcement de sécurité présent dans cet arbre source.
Les binaires précompilés, le module Go et l'installation via Homebrew se trouvent dans Versions et installation :
go install github.com/Lu1sDV/wafmeow/v3/cmd/wafmeow@latest
brew install Lu1sDV/tap/wafmeow
La commande d'installation Go /v3 nécessite une version v3 publiée. Avant cette publication, compilez à partir de la copie source ci-dessus ; Homebrew continue d'installer la dernière version stable publiée.
# Use your own local HTTP server on port 8080.
./wafmeow --target http://127.0.0.1:8080 --fast
Cela affiche un résultat lisible par un humain. Utilisez --target / -t pour une URL et répétez-le pour plusieurs URLs. Utilisez --target-file PATH pour un fichier de lignes d'URL, ou --target-file - pour stdin.
--input PATH et -I PATH restent des orthographes équivalentes de --target-file PATH.
Choisissez une seule source d'entrée ; les réponses enregistrées utilisent --evidence pour l'analyse hors ligne.
| Objectif | Choisir | Collecte |
|---|---|---|
| Empreinte active rapide | --fast | Sonde normale, sans user-agent et combinée |
| Sondage actif plus large | --deep | Huit types de requêtes sélectionnés ; également la valeur par défaut lorsqu'aucun mode n'est indiqué |
| Inspecter uniquement les réponses normales | --baseline | Une requête normale, sans sondes actives |
| Réutiliser des réponses enregistrées | --evidence FILE | Classification hors ligne, sans nouvelles requêtes |
--baseline peut trouver des empreintes déjà présentes dans une réponse ordinaire. Utilisez-le lorsque vous souhaitez une inspection HTTP normale sans sondes actives ; ce n'est pas une étape de configuration pour --fast ou --deep. Les trois modes en direct sont mutuellement exclusifs, et les redirections et budgets affectent le nombre réel de requêtes. Consultez
modes de collecte et charges utiles pour les compromis.