Pianificare e implementare Web application firewall (WAF)

Completato

Web application firewall (WAF) offre una protezione centralizzata delle applicazioni Web da exploit e vulnerabilità comuni. Le applicazioni Web sono sempre più vittime di attacchi che sfruttano le più comuni e note vulnerabilità. Gli attacchi SQL injection e quelli tramite scripting intersito sono tra i più comuni.

Diagramma che mostra come il Web application firewall (WAF) offre una protezione centralizzata delle applicazioni Web da exploit e vulnerabilità comuni.

La prevenzione di tali attacchi nel codice dell'applicazione è un'operazione complessa. Può richiedere una manutenzione rigorosa, l'applicazione di patch e il monitoraggio a più livelli della topologia dell'applicazione. Un web application firewall centralizzato semplifica di molto la gestione della sicurezza. Un WAF inoltre offre agli amministratori delle applicazioni una migliore garanzia di protezione da minacce e intrusioni.

Una soluzione WAF è in grado di rispondere più velocemente a una minaccia alla sicurezza tramite l'applicazione centralizzata di patch per una vulnerabilità nota, invece di proteggere ogni singola applicazione Web.

Servizio supportato

È possibile distribuire un web application firewall con il gateway applicazione di Azure, Frontdoor di Azure e il servizio Rete di distribuzione dei contenuti di Microsoft Azure (rete CDN). WAF nella rete CDN di Azure è attualmente disponibile in anteprima pubblica. WAF include funzionalità personalizzate per ogni servizio specifico. Per altre informazioni sulle funzionalità di WAF per ciascun servizio, vedere la panoramica relativa ad ognuno di questi.

Web application firewall (WAF) di Azure nel gateway applicazione di Azure protegge attivamente le applicazioni Web da exploit e vulnerabilità comuni. A manó a mano che le applicazioni Web diventano obiettivi più frequenti per attacchi dannosi, questi attacchi spesso sfruttano vulnerabilità note come SQL injection e scripting tra siti.

Web application firewall (WAF) nel gateway applicazione si basa sulCRS (Core Rule Set) dell'OWASP (Open Web Application Security Project).

Tutte le funzionalità WAF seguenti sono presenti all'interno di un criterio WAF. È possibile creare più criteri, che possono essere associati a un gateway applicazione, a singoli listener o a regole di routing basate su percorso in un gateway applicazione. In questo modo, se necessario, è possibile avere criteri distinti per ogni sito dietro il gateway applicazione.

Diagramma che mostra un esempio di funzionalità di un web application firewall e di un web application gateway.

Il gateway applicazione funziona da controller per la distribuzione di applicazioni (ADC, Application Delivery Controller). Offre TLS (Transport Layer Security), noto in precedenza come SSL (Secure Sockets Layer), terminazione, affinità di sessione basata su cookie, distribuzione del carico round robin, routing basato sul contenuto, possibilità di ospitare più siti Web e miglioramenti della sicurezza.

Il gateway applicazione migliora la sicurezza tramite la gestione dei criteri TLS e il supporto TLS end-to-end. Grazie all'integrazione di WAF nel gateway applicazione, la sicurezza delle applicazioni viene fortificata. Questa combinazione protegge attivamente le applicazioni Web da vulnerabilità comuni e offre una posizione gestibile e facile da configurare centralmente.

Protezione

  • Protezione dell'applicazione Web dalle vulnerabilità e dagli attacchi del Web, senza alcuna modifica del codice di back-end.
  • Protezione contemporanea di più applicazioni Web. Un'istanza del gateway applicazione può ospitare fino a 40 siti Web protetti da Web Application Firewall.
  • Creare criteri WAF personalizzati per siti diversi dietro lo stesso WAF.
  • Proteggere le applicazioni Web da bot dannosi con il set di regole reputazione IP.
  • Proteggere l'applicazione da attacchi DDoS.

Monitoraggio

Monitoraggio degli attacchi contro le applicazioni Web tramite il log in tempo reale di WAF. Il log è integrato in Monitoraggio di Azure per tenere traccia degli avvisi di WAF e monitorare con facilità le tendenze.

Web application firewall del gateway applicazione è integrato con Microsoft Defender per il cloud. Defender per il cloud offre una visualizzazione centrale dello stato di sicurezza di tutte le risorse di Azure, ibride e multi-cloud.

Personalizzazione

  • Personalizzazione di regole e gruppi di regole di WAF in base ai requisiti delle applicazioni ed eliminazione di falsi positivi.
  • Associazione di un criterio di WAF per ogni sito dietro WAF per consentire la configurazione specifica per sito
  • Creazione di regole personalizzate per soddisfare le esigenze dell'applicazione

Funzionalità

  • Protezione dagli attacchi SQL injection.
  • Protezione da attacchi tramite script da altri siti.
  • Protezione da altri attacchi Web comuni, ad esempio l'inserimento di comandi, il contrabbando di richieste HTTP, la suddivisione delle risposte HTTP e l'inclusione di file remoti.
  • Protezione da violazioni del protocollo HTTP.
  • Protezione contro eventuali anomalie del protocollo HTTP, ad esempio user agent host mancante e accept header.
  • Protezione da crawler e scanner.
  • Rilevamento di errori di configurazione comuni dell'applicazione (ad esempio, Apache e Internet Information Services).
  • Limiti inferiori e superiori configurabili per le dimensioni delle richieste.
  • Elenchi di esclusione che consentono di omettere determinati attributi delle richieste da una valutazione di WAF. Un esempio comune è rappresentato dai token inseriti da Microsoft Entra ID usati per i campi di autenticazione o password.
  • Creazione di regole personalizzate per soddisfare le esigenze delle applicazioni.
  • Traffico con filtro basato sull'area geografica per consentire o impedire a determinati paesi/aree geografiche di accedere alle applicazioni.
  • Protezione delle applicazioni dai bot con il set di regole di mitigazione dei bot.
  • Esaminare JavaScript Object Notation (JSON) e Extensible Markup Language (XML) nel corpo della richiesta

Regole e criteri di WAF

Per abilitare web application firewall nel gateway applicazione, è necessario creare un criterio di WAF. Questo criterio include tutte le regole gestite, le regole personalizzate, le esclusioni e altre personalizzazioni, come il limite per il caricamento di file.

È possibile configurare un criterio di WAF e associarlo a uno o più gateway applicazione per la protezione. I criteri di WAF sono costituiti da due tipi di regole di sicurezza:

  • Regole personalizzate che vengono create
  • Set di regole gestite, ovvero una raccolta di set di regole preconfigurate gestite da Azure

Quando sono presenti entrambi i tipi, le regole personalizzate vengono elaborate prima di quelle incluse in un set di regole gestito. Una regola è costituita da una condizione di corrispondenza, una priorità e un'azione. I tipi di azione supportati sono: ALLOW, BLOCK, e LOG. È possibile creare criteri completamente personalizzati che soddisfino specifici requisiti di protezione delle applicazioni combinando regole gestite e personalizzate.

Le regole all'interno dei criteri vengono elaborate in ordine di priorità. La priorità è un numero intero univoco che definisce l'ordine di elaborazione delle regole. Un valore intero più basso indica una priorità più alta e quindi le regole con valori di priorità più bassi vengono elaborate prima di quelle con valori più alti. Una volta trovata una corrispondenza per una regola, alla richiesta viene applicata l'azione definita in tale regola. Dopo l'elaborazione di una corrispondenza di questo tipo, le regole con priorità più bassa non vengono elaborate ulteriormente.

Un'applicazione Web distribuita dal gateway applicazione può essere associata a un criterio di WAF a livello globale, a livello di singolo sito o a livello di singolo URI.

Set di regole principali

Il gateway applicazione supporta più set di regole, tra cui CRS 3.2, CRS 3.1 e CRS 3.0. Queste regole proteggono le applicazioni Web da attività dannose.

Regole personalizzate

Il gateway applicazione supporta anche regole personalizzate, ossia regole che è possibile creare e che vengono valutate per ogni richiesta che passa attraverso WAF. Queste regole hanno una priorità più elevata rispetto alle altre dei set di regole gestiti. Se viene soddisfatto un set di condizioni, viene intrapresa un'azione per consentire o bloccare le richieste.

Set di regole di protezione bot

È possibile abilitare un set di regole di protezione del bot gestito per eseguire azioni personalizzate sulle richieste da tutte le categorie di bot.

Sono supportate tre categorie di bot:

  • Non validi: i bot non validi includono bot da indirizzi IP dannosi e bot che falsificano le identità. I bot dannosi con indirizzi IP dannosi vengono originati dagli indicatori IP di attendibilità elevata del feed di Intelligence per le minacce Microsoft.
  • Validi - I bot validi includono motori di ricerca convalidati, ad esempio Googlebot, bingbot e altri agenti utente attendibili.
  • Sconosciuti: i bot sconosciuti vengono classificati tramite agenti utente pubblicati senza più convalida. Ad esempio, analizzatore del mercato, recuperatori di feed e agenti di raccolta dati. I bot sconosciuti includono anche indirizzi IP dannosi che vengono originati dagli indicatori IP di attendibilità media del feed di Intelligence per le minacce di Microsoft.

La piattaforma WAF gestisce e aggiorna in modo dinamico le firme del bot.

Screesnhot che mostra un esempio di firme bot.

È possibile assegnare Microsoft_BotManagerRuleSet_1.0 usando l'opzione assegna in Set di regole gestite:

Screesnhot che mostra un esempio di come assegnare set di regole gestite.

Quando la protezione bot è abilitata, blocca, consente o registra le richieste in ingresso che corrispondono alle regole del bot in base all'azione configurata. Blocca i bot dannosi, consente ricerche per indicizzazione verificate del motore di ricerca, blocca i crawler sconosciuti del motore di ricerca e registra bot sconosciuti per impostazione predefinita. È possibile impostare azioni personalizzate per bloccare, consentire o registrare diversi tipi di bot.

È possibile accedere ai log WAF da un account di archiviazione, un hub eventi, analisi dei log o inviare log a una soluzione partner.

Modalità di WAF

WAF nel gateway applicazione può essere configurato per l'esecuzione nelle due modalità seguenti:

  • Modalità di rilevamento: Monitora e registra tutti gli avvisi sulle minacce. Attivare la registrazione diagnostica per il gateway applicazione usando la sezione Diagnostica. È anche necessario assicurarsi che il log di WAF sia selezionato e attivato. Quando viene eseguito in modalità di rilevamento, Web Application Firewall non blocca le richieste in ingresso.
  • Modalità di prevenzione: Blocca intrusioni e attacchi rilevati dalle regole. L'autore dell'attacco riceve un'eccezione di "accesso non autorizzato 403" e la connessione viene chiusa. La modalità di prevenzione registra tali attacchi nei log di WAF.

Motori WAF

Il motore web application firewall (WAF) di Azure è il componente che controlla il traffico e determina se una richiesta include una firma che rappresenta un potenziale attacco. Quando si usa CRS 3.2 o versione successiva, WAF esegue il nuovo motore WAF, che offre prestazioni più elevate e un set migliorato di funzionalità. Quando si usano versioni precedenti di CRS, il WAF viene eseguito in un motore precedente. Le nuove funzionalità sono disponibili solo nel nuovo motore WAF di Azure.

Azioni di WAF

È possibile scegliere quale azione viene eseguita quando una richiesta corrisponde a una condizione della regola. Sono supportate le azioni seguenti:

  • Allow: la richiesta passa attraverso Web application firewall e viene inoltrata al back-end. Nessuna regola con priorità più bassa può bloccare questa richiesta. Le azioni consentite sono applicabili solo al set di regole di Bot Manager e non sono applicabili al set di regole di base.
  • Blocca: La richiesta viene bloccata e WAF invia una risposta al client senza inoltrare la richiesta al back-end.
  • Log: la richiesta viene registrata nei log di Web application firewall, che prosegue la valutazione delle regole con priorità più bassa.
  • Punteggio di anomalia: Questa è l'azione predefinita per il set di regole CRS in cui viene incrementato il punteggio totale di anomalie quando viene trovata una regola con questa azione. L'assegnazione di punteggi di anomalie non è applicabile per il set di regole di Bot Manager.

Modalità di assegnazione di punteggi di anomalia

Open Web Application Security Project (OWASP) ha due modalità per decidere se bloccare il traffico: Modalità tradizionale e Modalità di assegnazione dei punteggi di anomalie.

In modalità tradizionale, il traffico che corrisponde a qualsiasi regola viene considerato in modo indipendente da qualsiasi altra regola corrispondente. Questa modalità è facile da comprendere. Ma la mancanza di informazioni sul numero di regole che corrispondono a una specifica richiesta costituisce una limitazione. Per questo motivo, è stata introdotta la modalità di assegnazione di punteggi di anomalia. Si tratta dell'impostazione predefinita per OWASP 3.x.

In questa modalità, il traffico che corrisponde a qualsiasi regola non viene immediatamente bloccato se il firewall è in modalità di prevenzione. Le regole hanno una diversa gravità: Critica, errore, avviso o notifica. Questo livello determina un valore numerico per la richiesta, ossia il punteggio di anomalia. Ad esempio, una regola di tipo avviso aggiunge 3 al punteggio. Una regola di livello critico aggiunge 5.

Gravità valore
Critico 5
Error 4
Avviso 3
Preavviso 2

Per bloccare il traffico, il punteggio di anomalia deve raggiungere la soglia 5. Quindi, una singola corrispondenza con una regola di livello critico è sufficiente perché WAF nel gateway applicazione blocchi una richiesta, anche in modalità di prevenzione. Invece una singola corrispondenza con una regola di tipo avviso si limita a incrementare di 3 il punteggio di anomalia, quindi non è sufficiente per bloccare il traffico.

Impostazione

È possibile configurare e distribuire tutti i criteri WAF usando il portale di Azure, le API REST, i modelli di Azure Resource Manager e Azure PowerShell.

Monitoraggio di WAF

È importante monitorare l'integrità del gateway applicazione. È possibile supportarlo integrando WAF e le applicazioni protette con i Microsoft Defender per il Cloud, Monitoraggio di Azure e log di Monitoraggio di Azure.

Diagramma che mostra un esempio di funzionalità di monitoraggio di un web application firewall di Azure.

Monitoraggio di Azure

I log del gateway applicazione sono integrati con Monitoraggio di Azure. Ciò consente di tenere traccia delle informazioni diagnostiche, inclusi i log e gli avvisi di WAF. È possibile accedere a questa funzionalità nella scheda Diagnostica della risorsa Gateway applicazione nel portale o direttamente tramite Monitoraggio di Azure.