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
waf-dojo — Gioco di formazione pratico su AWS WAF con tutorial, laboratori con punteggio ed esami in cui i giocatori scrivono regole Web ACL per bloccare forme di attacco reali evitando falsi positivi. | Kitploit
Strumenti/GitHubGitHub/nishikawaakira/waf-dojo
Strumenti DifensiviAnalisi delle VulnerabilitàSfruttamento di Applicazioni WebBypass WAFSicurezza WebCTFSicurezza CloudApprendimento e FormazionePercorsi e CorsiLab e Pratica
GitHubnishikawaakira/waf-dojo
18593 giorni 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 →

waf-dojo

Gioco di formazione pratico su AWS WAF con tutorial, laboratori con punteggio ed esami in cui i giocatori scrivono regole Web ACL per bloccare forme di attacco reali evitando falsi positivi.

Vedi Repository
Condividi

WAF Dojo

Un gioco di formazione pratica per imparare AWS WAF difendendosi da attacchi reali.

English | 日本語

Per gli amministratori: come costruire l'ambiente, distribuirlo ai partecipanti, eseguirlo e ripulirlo è descritto nella Guida per amministratori (docs/ADMIN.md), mentre il documento da consegnare ai partecipanti è Per iniziare per i giocatori (docs/PLAYER_GUIDE.md). Entrambe le guide sono attualmente in giapponese.

Un ambiente pratico per imparare AWS WAF mentre si è sotto attacco.

  1. Tutorial: Lo schermo mostra com'è fatto l'attacco in arrivo (richieste di esempio) e le istruzioni di configurazione passo dopo passo. Si configura il proprio Web ACL seguendo le indicazioni.
  2. Modalità gioco: Si sblocca una volta completati i tutorial. Viene fornito solo un riepilogo dell'attacco e si progettano da soli le regole per fermarlo.
  3. Punteggio: Si viene valutati in base a quanti attacchi sono stati bloccati e quanti utenti legittimi sono stati bloccati per errore, e i risultati finiscono in una classifica.

Gioca da solo o sfida gli altri.

Demo

WAF Dojo demo

Il flusso che va dalla lettura dell'attacco e dei passaggi di un tutorial, alla progettazione di una regola in un laboratorio di vulnerabilità, all'avvio dell'attacco, alla revisione del punteggio e della soluzione modello, fino all'apertura di una gara dalla pagina di amministrazione (circa 70 secondi). Una versione di qualità superiore è disponibile in docs/demo-en.mp4.

Registrato in modalità sviluppo (make dev), che assegna il punteggio con la soluzione modello invece che con un vero AWS WAF.

Architettura

                    ┌───────────────────── per player ──────────────────┐
Browser ── Lambda Function URL (gameapi: UI + API)                      │
                │  async invoke                                          │
                ▼                                                        │
          Lambda (trafficgen) ── HTTPS ─▶ ALB ◀── Web ACL (edited by the player)
                │                          │                             │
                │                          ▼                             │
                │                  Lambda (targetapp: dummy online shop) │
                ▼                   └────────────────────────────────────┘
            DynamoDB (runs, best scores, locks)
  • targetapp: Un'app fittizia che restituisce 200 a ogni richiesta, quindi qualsiasi 4xx significa che il WAF l'ha bloccata.
  • trafficgen: Invia un mix di richieste di attacco e richieste di utenti normali in base allo scenario, poi valuta il risultato. Invia solo verso l'ALB del giocatore stesso, come configurato da Terraform. Usa uTLS per costruire diversi TLS ClientHello per browser (Chrome / Firefox / Safari) e strumenti di attacco, così puoi esercitarti a distinguerli tramite l'impronta JA4.
  • gameapi: L'interfaccia e l'API del gioco, servite da un Lambda Function URL.
  • Un ALB può avere un solo Web ACL, quindi ogni giocatore riceve il proprio ALB e il proprio Web ACL.
  • Per sperimentare il limite di ispezione del body di CloudFront (16 KB per impostazione predefinita, fino a 64 KB), ogni giocatore riceve anche una distribuzione CloudFront e un Web ACL con scope CloudFront (wafdojo-<name>-cf, us-east-1). CloudFront fa da frontend direttamente al Lambda Function URL dell'app fittizia anziché all'ALB, quindi le regole del Web ACL dell'ALB non si applicano lì. Imposta enable_cloudfront = false per saltarlo.
  • JA4 viene calcolato solo su HTTPS, quindi l'ALB ascolta su HTTPS (443). Per funzionare senza un dominio, viene generato un certificato autofirmato e importato in ACM (la sua chiave privata finisce nello stato di Terraform).
  • Gli IP di origine sono rappresentati da indirizzi di documentazione (RFC 5737) in X-Forwarded-For (si presume che il sito si trovi dietro una CDN).

Scenari

Tutorial (con passaggi; completali tutti per sbloccare il gioco)

IDArgomentoCosa impari
tutorial-1-sqliSQL injectionGruppi di regole gestiti
tutorial-2-xssXSS nel modulo di recensioneRegole personalizzate (Rule builder), ispezione del body, trasformazioni del testo
tutorial-3-ipsetIP su una lista di minacceIP set, CIDR, X-Forwarded-For
tutorial-4-useragentScanner di vulnerabilitàCorrispondenza di stringhe sulle intestazioni, istruzioni OR, trasformazione in minuscolo
tutorial-5-ratelimitFlood da un singolo IPRegole basate sulla frequenza, chiavi di aggregazione
tutorial-6-ja4Uno scraper che si finge un browserCome funzionano le impronte JA4 e come leggerle (a_b_c), corrispondenza esatta JA4, analisi dei log WAF

Modalità gioco (senza passaggi; competenze applicate)

IDArgomentoCosa impari
game-1-fakebotUno scraper che si finge GooglebotCombinare AND / NOT (lo UA dice Googlebot AND l'IP non è di Google)
game-2-adminAccesso esterno al pannello di amministrazioneCondizioni sul percorso URI + lista di IP consentiti, distinzione tra maiuscole e minuscole
game-3-traversalPath traversalImpilare trasformazioni del testo (doppia decodifica), evitare falsi positivi
game-4-cmsUna regola XSS che blocca i tuoi editorCreare eccezioni, priorità delle regole, rivedere le regole esistenti
game-5-bruteforceBrute force sul login + NAT aziendaleIstruzioni scope-down, progettazione delle soglie
game-6-ja4regexUn esercito di bot che continua a modificare il proprio JA4 + un partner che usa la stessa libreriaEspressioni regolari JA4 (intercettare la parte b condivisa), prepararsi a varianti mai viste, eccezioni con AND NOT

Le regole create nei tutorial restano attive, quindi in modalità gioco a volte causano falsi positivi (fasi 4 e 5). Devi rivedere le regole esistenti, non solo fermare nuovi attacchi.

Laboratori sulle vulnerabilità (41 sfide, senza passaggi)

Ogni sfida recita: "È uscita una nuova vulnerabilità. Può essere bloccata a queste condizioni. Scrivi la regola." L'obiettivo è essere in grado di scrivere le tue regole ogni volta che compare una nuova vulnerabilità. Dopo un tentativo puoi vedere il JSON della regola di risposta modello (pronto da incollare nell'editor Rule JSON della console) e una spiegazione. Molte sfide di Livello 2 e 3 includono anche una regola "errore comune" e il motivo per cui fallisce.

Scarica lo strumento