Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Outils/GitHubGitHub/ammarion/waf-detector
Outils DéfensifsReconnaissanceScanners de VulnérabilitésCollecte d'InformationsContournement de WAFSécurité WebSécurité RéseauTests d'IntrusionUtilitaires et FrameworksUsurpation d'Empreinte NumériqueAnalyse DNS
117533il y a 21 joursVérifié par Kitploit
GitHub
ammarion/waf-detector

waf-detector

Voir le dépôt

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →

Ă€ propos

🛡️ Outil de détection WAF & CDN haute performance. Identifiez les couches de protection (Cloudflare, Akamai, AWS, Fastly, et plus encore), exécutez des tests d'efficacité et d'application avec des charges utiles d'évasion, et générez des rapports de posture. Développé en Rust 🦀.

Partager

WAF Detector

Outil CLI pour détecter, tester et profiler les pare-feu d'applications web (WAF) et les réseaux de diffusion de contenu (CDN).

Important : Ne testez que les systèmes que vous possédez ou pour lesquels vous disposez d'une autorisation explicite de test.

Pour les agents de codage IA : Voir AGENTS.md pour le mappage des compétences et les pointeurs de workflow. Utilisez agent-skills/waf-assess/WORKFLOW.md pour les évaluations complètes ; utilisez agent-skills/validate-build/WORKFLOW.md avant la fusion.

Ce qu'il fait

ModeCe qu'il testeOption
DétectionIdentifie quel WAF/CDN protège une ciblewaf-detect <url>
Test de fuméeEnvoie des charges utiles d'attaque connues, mesure les taux de blocage--smoke-test <url>
Test d'applicationEnvoie des sondes d'attaque catégorisées, mesure blocage/défi/autorisation--va <url>
Analyse comportementaleSondes appariées testant la sophistication du WAF sur 5 canaux--va2 <url> --va2-run
Rapport de postureNote unifiée (A-F) combinant tous les résultats de test--posture <url>
Rapport HTMLGénère les résultats JSON enregistrés dans un rapport statique partageablereport <file.json>

Démarrage rapide

root@kitploit:~
cargo build --release
./target/release/waf-detect scan example.com

# Full hardening scan + HTML report
./target/release/waf-detect hardening https://example.com --output /tmp/example-hardening.json
./target/release/waf-detect report /tmp/example-hardening.json --output /tmp/example-hardening.html

Commandes

ModeCommande
Détectionwaf-detect scan <url> ou waf-detect <url>
Durcissementwaf-detect hardening <url> --output file.json
Test de fuméewaf-detect --smoke-test <url>
Applicationwaf-detect va <url>
Comportementalwaf-detect va2 <url> --run
Posturewaf-detect --posture <url>
Efficacitéwaf-detect --effectiveness <url>
Sonde d'originewaf-detect origin-probe <url> --json
Rapport HTMLwaf-detect report <file.json> -o <file.html>

Détection

Identifie le WAF/CDN via les en-tĂŞtes, le corps, le DNS, le TLS et le timing. 12 fournisseurs : CloudFlare, AWS, Akamai, Fastly, Vercel, Azure, F5, Imperva, ModSecurity, Sucuri, Radware, FortiWeb.

root@kitploit:~
waf-detect scan example.com --json
waf-detect scan @urls.txt --ndjson

Test de fumée

Envoie des charges utiles d'attaque connues et mesure ce que le WAF bloque, défie ou autorise. Les tests de fumée actifs ne s'exécutent que contre des cibles enregistrées comme possédées.

root@kitploit:~
./target/release/waf-detect --smoke-test example.com

# Aggressive mode (more payloads)
./target/release/waf-detect --smoke-test example.com --aggressive

# Export results
./target/release/waf-detect --smoke-test example.com -o results.json

Catégories d'attaque testées : injection SQL (basique + avancée), XSS (basique + avancé), injection de commande, traversée de chemin, SSTI, SSRF, Log4Shell, téléversement de fichier, détection de scanner, injection GraphQL, contrebande de requêtes HTTP, pollution de prototype, injection WebSocket, énumération.

Classifications des résultats :

  • BLOCKED — Le WAF a bloquĂ© la requĂŞte (gĂ©nĂ©ralement 403)
  • CHALLENGE — Protection anti-bot dĂ©clenchĂ©e (dĂ©fi JS, CAPTCHA)
  • ALLOWED — La requĂŞte est passĂ©e jusqu'Ă  l'origine
  • ERROR — Échec non bloquant (404, 500, timeout)

Test d'application

Envoie des sondes d'attaque catégorisées et mesure les taux de blocage/défi/autorisation avec un score de confiance. Nécessite une portée de cible enregistrée.

root@kitploit:~
# Register owned targets once
./target/release/waf-detect --scope init example.com

# Run enforcement test
./target/release/waf-detect --va https://example.com

# With JSON output
./target/release/waf-detect --va https://example.com --va-json

# Save report
./target/release/waf-detect --va https://example.com --va-output report.json

Options :

  • --va-tier 1|2|3 — Niveau de sĂ©curitĂ© (1 = le plus sĂ»r)
  • --va-budget N — Nombre maximal de requĂŞtes par exĂ©cution (par dĂ©faut : 120)
  • --va-timeout SECONDS — DĂ©lai d'attente par requĂŞte (par dĂ©faut : 15)
  • --va-delay MS — DĂ©lai entre les requĂŞtes (par dĂ©faut : 750)
  • --va-variants N — Variantes par modèle de charge utile (par dĂ©faut : 4)
  • --va-replay — Exporter le plan de rejeu en JSON
  • --va-replay-csv — Exporter le plan de rejeu en CSV

Analyse comportementale

Teste la sophistication du WAF en envoyant des sondes appariées — une bénigne, une malveillante — sur 5 canaux HTTP. Mesure si le WAF les traite différemment.

root@kitploit:~
# Dry run (shows plan without executing)
./target/release/waf-detect --va2 https://example.com

# Run behavioral analysis
./target/release/waf-detect --va2 https://example.com --va2-run

# Full 5-phase analysis
./target/release/waf-detect --va2 https://example.com --va2-run \
  --va2-phases baseline,protocol-variance,state-escalation,behavioral-pressure,challenge-interaction

# Save results
./target/release/waf-detect --va2 https://example.com --va2-run --va2-output results.json

Ce qu'il mesure :

SignalCe qu'il teste
Défense d'encodageLe WAF normalise-t-il les chemins encodés avant la correspondance ?
Suivi de sessionLe WAF suit-il l'état de session et escalade-t-il en cas d'abus répété ?
Défi anti-botLe WAF émet-il des CAPTCHA ou des défis JS ?
Limitation de débitLe WAF limite-t-il les requêtes rapides ?
Reconnaissance d'attaqueLe WAF distingue-t-il les sondes d'attaque des requêtes bénignes ?

Canaux testés : Path, Query, Header, Body, Method. Les canaux avec 0 % de détection d'attaque sont signalés comme non protégés.

Options :

  • --va2-phases LIST — Phases Ă  exĂ©cuter (sĂ©parĂ©es par des virgules)
  • --va2-seed N — Graine dĂ©terministe pour des rĂ©sultats reproductibles (par dĂ©faut : 1337)
  • --va2-budget N — Budget de requĂŞtes (par dĂ©faut : 60)
  • --va2-json — Afficher le plan/rapport en JSON

Rapport de posture

Génère une note de sécurité unifiée (A-F) et un score de risque (0-100) combinant la confiance de détection, les résultats d'application et l'analyse comportementale.

root@kitploit:~
# Detection only
./target/release/waf-detect --posture example.com

# Include behavioral analysis
./target/release/waf-detect --posture example.com --posture-va2

# Include enforcement testing (VA1) -- distinguishes "WAF present but not
# enforcing" (monitor/log-only mode) from "no WAF at all"
./target/release/waf-detect --posture example.com --posture-va1

# JSON output
./target/release/waf-detect --posture example.com --posture-va2 --posture-json

Échelle de notation :

  • A (risque 0-20) — Protection forte sur toutes les dimensions
  • B (21-40) — Bonne protection avec des lacunes mineures
  • C (41-60) — Protection modĂ©rĂ©e, faiblesses notables
  • D (61-80) — Protection faible, lacunes importantes
  • F (81-100) — Protection minimale ou inexistante

Rapport HTML

Génère un artefact de scan JSON enregistré dans un rapport HTML statique facile à examiner localement et à partager avec d'autres ingénieurs.

root@kitploit:~
# Render a saved hardening report
./target/release/waf-detect hardening https://example.com --output /tmp/example-hardening.json
./target/release/waf-detect report /tmp/example-hardening.json

# Render a saved posture report
./target/release/waf-detect --posture https://example.com --posture-va2 --posture-json > /tmp/example-posture.json
./target/release/waf-detect report /tmp/example-posture.json --output /tmp/example-posture.html

Le HTML généré est statique et autonome, il peut donc être joint à des tickets, partagé dans un chat ou ouvert localement sans réexécuter le scan.

Portée de la cible

Le test de fumée, l'analyse de charge utile, l'application, l'analyse comportementale et les tests d'efficacité nécessitent des cibles enregistrées comme possédées.

root@kitploit:~
# Check target scope
./target/release/waf-detect --scope

# Initialize target scope
./target/release/waf-detect --scope init example.com api.example.com

# Add authorized target
./target/release/waf-detect --scope add-target admin.example.com

# Remove target
./target/release/waf-detect --scope remove-target api.example.com

# Clear target scope
./target/release/waf-detect --scope clear

Interprétation des résultats

Scores de risque (rapport de posture) :

  • 0-25 — Risque faible, WAF bien configurĂ©
  • 25-50 — Risque moyen, quelques lacunes dĂ©tectĂ©es
  • 50-75 — Risque Ă©levĂ©, lacunes de sĂ©curitĂ© importantes
  • 75-100 — Risque critique, WAF mal configurĂ© ou inefficace

Constats courants :

  • Taux de blocage Ă©levĂ© (>90 %) — WAF bien configurĂ©
  • Taux de blocage faible (<50 %) — Le WAF est peut-ĂŞtre en mode dĂ©tection seule
  • Canaux non protĂ©gĂ©s — Le WAF n'inspecte pas les attaques dans ce canal HTTP
  • Aucun dĂ©fi anti-bot — Les attaques automatisĂ©es se dĂ©roulent sans friction
  • Aucune limitation de dĂ©bit — Les attaques par force brute ne subissent aucune limitation
  • RĂ©ponses identiques — La cible ne sert peut-ĂŞtre que du contenu statique

Commandes supplémentaires

root@kitploit:~
# List supported providers
./target/release/waf-detect --list

# Effectiveness testing (advanced evasion techniques)
./target/release/waf-detect --effectiveness example.com

# Benchmark against corpus
./target/release/waf-detect --benchmark corpus.json

# Performance snapshot
./target/release/waf-detect example.com --perf-report perf.json

# Debug output
./target/release/waf-detect example.com --debug --verbose

Options de sortie : --json / --ndjson / --compact / --yaml · waf-detect providers · waf-detect doctor

Développement

root@kitploit:~
cargo test --lib
cargo clippy -- -D warnings
cargo fmt

Voir DEVELOPMENT.md pour tous les détails.

Licence

Sous licence selon l'une des deux

  • Apache License, Version 2.0 (LICENSE-APACHE)
  • Licence MIT (LICENSE-MIT)

au choix.

Sauf indication contraire explicite, toute contribution soumise intentionnellement pour inclusion dans l'œuvre par vous, au sens de la licence Apache-2.0, sera doublement licenciée comme ci-dessus, sans conditions ni termes supplémentaires.

Télécharger l’outil