0Pricing
Azure Fundamentals · Lezione

Web Application Firewall su Front Door

Colleghi un criterio WAF al profilo Front Door, abiliti i set di regole gestiti per la protezione OWASP Top 10 e crei regole personalizzate per bloccare gli indirizzi IP notoriamente dannosi.

Web Application Firewall su Front Door è una lezione Azure Fundamentals gratuita su CoddyKit. Questa è la lezione 3 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Azure Fundamentals, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Azure Fundamentals include 4 lezioni in totale.

Che cos'è un Web Application Firewall?

Un Web Application Firewall (WAF) analizza le richieste HTTP/HTTPS al livello 7 e blocca i pattern di attacco noti prima che raggiungano l'applicazione. Tra gli attacchi comuni che impedisce figurano SQL injection, cross-site scripting (XSS), inclusione di file remoto e anomalie del protocollo. Senza un WAF, gli attaccanti possono sfruttare le vulnerabilità del codice dell'applicazione anche se la rete è configurata correttamente per limitarne l'accesso. Azure WAF si integra sia con Azure Front Door sia con Azure Application Gateway.

Risorsa dei criteri WAF

In Azure, un criterio WAF è una risorsa autonoma che contiene set di regole gestiti e regole personalizzate. Si crea il criterio, si configurano le regole e quindi lo si associa a uno o più endpoint Front Door o a istanze di Application Gateway. Questo design disaccoppiato consente a un unico criterio WAF di proteggere più endpoint Front Door: una singola modifica al criterio viene propagata automaticamente a tutti gli endpoint associati. I criteri WAF esistono in un'area di Azure specifica, ma quando vengono associati a Front Door la protezione viene applicata globalmente in tutti i PoP.

# Create a WAF policy for Front Door
az network front-door waf-policy create \
  --name myWAFPolicy \
  --resource-group myRG \
  --sku Premium_AzureFrontDoor \
  --mode Prevention

Modalità di rilevamento e prevenzione

I criteri WAF funzionano in due modalità. La modalità di rilevamento analizza tutte le richieste e registra le corrispondenze con le regole, ma non blocca il traffico: è utile nella fase iniziale della distribuzione per capire quale traffico verrebbe bloccato dal criterio prima di applicarlo. La modalità di prevenzione registra le corrispondenze e blocca attivamente le richieste che soddisfano le condizioni delle regole. La procedura consigliata consiste nell'iniziare in modalità di rilevamento, esaminare i log WAF per individuare i falsi positivi, ottimizzare le regole e passare alla modalità di prevenzione quando si è certi che il criterio sia corretto.

# Switch WAF policy to Prevention mode
az network front-door waf-policy update \
  --name myWAFPolicy \
  --resource-group myRG \
  --mode Prevention

Set di regole predefinito di Microsoft

Il Microsoft Default Rule Set (DRS) è un gruppo di regole gestito e mantenuto dal team di sicurezza di Microsoft. Contiene regole che rilevano le vulnerabilità dell'OWASP Top 10, oltre a firme di bot e schemi di credential stuffing. Microsoft aggiorna continuamente il DRS con nuove regole in risposta alle minacce emergenti: non è necessario scrivere personalmente le regole. Le versioni del DRS vengono rilasciate periodicamente (ad esempio, DRS 2.1) e durante una finestra di manutenzione è possibile aggiornare la propria policy WAF a una versione più recente.

# Add the Microsoft Default Rule Set to your WAF policy
az network front-door waf-policy managed-rules add \
  --policy-name myWAFPolicy \
  --resource-group myRG \
  --type Microsoft_DefaultRuleSet \
  --version '2.1'

Set di regole OWASP

Il OWASP Core Rule Set (CRS) è disponibile in Application Gateway WAF e come parte del CDN WAF di livello Verizon. Contiene oltre 200 regole che coprono l'OWASP Top 10: attacchi di injection, autenticazione non sicura, esposizione di dati sensibili, attacchi XML external entity e altro ancora. Ogni regola ha un ID e un gruppo (ad esempio REQUEST-942-APPLICATION-ATTACK-SQLI). È possibile disabilitare singole regole in base all'ID per eliminare i falsi positivi senza disabilitare l'intero gruppo di regole.

Regole WAF personalizzate

Le regole personalizzate consentono di scrivere condizioni specifiche di autorizzazione o blocco che i set di regole gestite non coprono. Una regola personalizzata è costituita da una o più condizioni di corrispondenza (ad esempio, IP di origine, URI della richiesta, valore di un'intestazione o stringa di query) combinate con un'azione (Allow, Block, Log o Redirect). Le regole personalizzate vengono valutate prima dei set di regole gestite e supportano l'ordinamento in base alla priorità. Un caso d'uso comune è bloccare determinati Paesi, limitare la frequenza dei crawler aggressivi o inserire in una whitelist un IP di monitoraggio attendibile che bypassi le regole WAF.

# Create a custom rule to block requests from a specific IP
az network front-door waf-policy rule create \
  --name BlockMaliciousIP \
  --policy-name myWAFPolicy \
  --resource-group myRG \
  --priority 100 \
  --action Block \
  --rule-type MatchRule \
  --match-condition remoteAddr IPMatch '1.2.3.4/32'

Limitazione della frequenza

Le regole di limitazione della frequenza limitano il numero di richieste HTTP provenienti da un singolo indirizzo IP client all'interno di una finestra temporale (1 o 5 minuti). Quando il numero di richieste supera la soglia, il WAF restituisce al client il codice HTTP 429 (Too Many Requests). La limitazione della frequenza è efficace contro gli attacchi di forza bruta ai login, il credential stuffing e l'abuso delle API. La soglia delle richieste e la finestra temporale vengono configurate nella definizione della regola personalizzata della policy WAF.

# Create a rate limit rule — max 100 requests per minute per IP
az network front-door waf-policy rule create \
  --name RateLimitLogin \
  --policy-name myWAFPolicy \
  --resource-group myRG \
  --priority 200 \
  --action Block \
  --rule-type RateLimitRule \
  --rate-limit-threshold 100 \
  --rate-limit-duration-in-minutes 1 \
  --match-condition requestUri Contains '/login'

Set di regole per la protezione dai bot

Il set di regole Bot Manager (disponibile in Front Door Premium) classifica il traffico in entrata come bot legittimi (crawler dei motori di ricerca verificati), bot dannosi (scanner noti e strumenti di ricerca delle vulnerabilità) e bot sconosciuti (traffico automatizzato non classificato). È possibile configurare l'azione per ogni categoria: consentire i bot legittimi, bloccare quelli dannosi e registrare quelli sconosciuti. Senza la protezione dai bot, gli scanner automatizzati possono generare carichi di traffico enormi, aumentando i costi e mascherando il traffico degli utenti reali nelle analisi.

Esclusioni WAF

I set di regole gestite a volte generano falsi positivi: bloccano richieste legittime perché corrispondono casualmente allo schema di una regola di sicurezza. Ad esempio, un CMS con funzionalità di modifica del testo avanzato può inviare HTML nei body delle richieste POST che corrisponde a una regola XSS. Le esclusioni WAF consentono di escludere attributi specifici della richiesta (intestazioni della richiesta, cookie, parametri della stringa di query o campi del body della richiesta) dalla valutazione delle regole, a livello globale oppure per un gruppo di regole o un ID di regola specifico, senza disabilitare completamente la regola.

Monitoraggio del WAF con i log

Il WAF genera due tipi di voci di log in Azure Monitor: i log WAF (ogni richiesta che ha corrisposto a una regola, sia che sia stata bloccata sia che sia stata registrata) e i log di accesso (tutte le richieste, comprese quelle che sono passate senza corrispondere ad alcuna regola). Inviate questi log a un'area di lavoro Log Analytics e usate KQL per analizzare l'andamento delle richieste bloccate, identificare gli endpoint più attaccati o esaminare uno specifico IP client. La cartella di lavoro WAF Insights nel portale offre dashboard preconfigurate che visualizzano questi log.

// KQL — top 10 WAF rule hits in the last 24h
AzureDiagnostics
| where Category == 'FrontDoorWebApplicationFirewallLog'
| where TimeGenerated > ago(24h)
| where action_s == 'Block'
| summarize HitCount = count() by ruleName_s
| top 10 by HitCount desc

Associare una policy WAF a Front Door

Per attivare la protezione WAF, è necessario associare la policy WAF al profilo di sicurezza di Front Door. Nel portale, passate al profilo Front Door, selezionate Security policies e aggiungete la policy WAF, specificando a quali domini si applica. In alternativa, usate la CLI per collegare la policy. Dopo l'associazione, il WAF esamina tutte le richieste HTTP/HTTPS ricevute da tali domini Front Door prima di inoltrarle all'origine. È possibile associare una policy WAF per dominio.

# Associate WAF policy with a Front Door security policy
az afd security-policy create \
  --profile-name myFrontDoor \
  --resource-group myRG \
  --security-policy-name mySecurityPolicy \
  --domains /subscriptions/<sub>/resourceGroups/myRG/providers/Microsoft.Cdn/profiles/myFrontDoor/customDomains/myDomain \
  --waf-policy /subscriptions/<sub>/resourceGroups/myRG/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies/myWAFPolicy

Verifica rapida

Verificate la vostra comprensione dei concetti di Microsoft Azure Fundamentals (AZ-900) illustrati in questa lezione.

Riepilogo della lezione

In questa lezione avete appreso che le policy WAF contengono set di regole gestite (Microsoft DRS, OWASP) e regole personalizzate che esaminano il traffico HTTP prima che raggiunga l'origine, che la modalità di rilevamento consente di ottimizzare le regole prima di passare alla modalità di prevenzione e che le regole di limitazione della frequenza proteggono dagli attacchi di forza bruta e dagli abusi. Nella prossima lezione esploreremo l'uso del motore di regole di Front Door per ottimizzare le prestazioni con reindirizzamenti e intestazioni di sicurezza.

Domande Frequenti

La lezione «Web Application Firewall su Front Door» è gratuita?

Sì — il testo completo di «Web Application Firewall su Front Door» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Azure Fundamentals, passa a CoddyKit PRO. Il corso Azure Fundamentals include 4 lezioni in totale.

Cosa imparerò in «Web Application Firewall su Front Door»?

Colleghi un criterio WAF al profilo Front Door, abiliti i set di regole gestiti per la protezione OWASP Top 10 e crei regole personalizzate per bloccare gli indirizzi IP notoriamente dannosi. Eserciti Azure Fundamentals con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Azure Fundamentals?

Non è richiesta alcuna esperienza precedente. Azure Fundamentals su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 4.

Quanto tempo richiede la lezione «Web Application Firewall su Front Door»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Azure Fundamentals?

Sì. Ogni lezione Azure Fundamentals include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Profili ed endpoint Azure CDN
  2. Azure Front Door: bilanciamento del carico globale
  3. Web Application Firewall su Front Door
  4. Ottimizzazione delle prestazioni con le regole CDN
← Torna a Azure Fundamentals