Domande frequenti di AWS WAF

Domande generali

AWS WAF è un firewall che aiuta a proteggere le applicazioni Web dagli attacchi consentendo di configurare regole per consentire, bloccare o monitorare (modalità di conteggio) le richieste Web in base a condizioni personalizzate. Tali condizioni includono indirizzo IP, intestazione HTTP, strutture HTTP, stringhe URI, SQL injection e cross-site scripting.

Nel momento in cui il servizio sottostante riceve richieste per i tuoi siti Web, le inoltra ad AWS WAF, che ne verifica la conformità alle regole prestabilite. Quando una richiesta soddisfa le condizioni definite nelle regole, AWS WAF dà istruzioni al servizio sottostante di bloccare o consentire la richiesta in base all'azione che hai deciso di applicare.

AWS WAF è strettamente integrato con Amazon CloudFront, Application Load Balancer (ALB), Amazon API Gateway e AWS AppSync, servizi che i clienti di AWS utilizzano comunemente per distribuire contenuti per i loro siti Web e le loro applicazioni. Quando utilizzi AWS WAF su Amazon CloudFront, le regole impiegate valgono per tutte le edge location AWS in tutto il mondo vicine ai tuoi utenti finali. Di conseguenza, per ottenere maggiore sicurezza non dovrai scendere a compromessi con le prestazioni. Le richieste bloccate vengono interrotte prima che raggiungano i server Web. Quando utilizzi AWS WAF su servizi regionali, come Application Load Balancer, Amazon API Gateway e AWS AppSync, le tue regole vengono eseguite nella regione e possono essere utilizzate per proteggere le risorse con connessione Internet, oltre alle risorse interne.

Sì, AWS WAF si integra con Amazon CloudFront, che supporta server di origine personalizzati.

AWS WAF aiuta a proteggere i tuoi siti Web da tecniche di attacco comuni quali SQL injection e cross-site scripting (attacchi XSS). Inoltre, è possibile creare regole per bloccare o limitare la velocità del traffico da un agente utente specifico, da un indirizzo IP specifico o che contiene particolari intestazioni di richiesta. Consulta la Guida per gli sviluppatori di AWS WAF per vedere qualche esempio.

Con AWS WAF Bot Control è possibile ottenere visibilità e controllo sul traffico di bot comuni e infestanti nelle applicazioni. Con Bot Control è possibile controllare, bloccare o stabilire i limiti di velocità di bot intensi, come scraper, scanner e crawler, o consentire i bot comuni, come il monitoraggio dello stato e i motori di ricerca. Il gruppo di regole gestite per il Controllo dei bot può essere utilizzato insieme alle altre regole gestite per WAF o insieme alle regole WAF personalizzate per proteggere le applicazioni. Consulta la sezione AWS WAF Bot Control nella Developer Guide.

Sì. Per ricevere uno storico di tutte le chiamate delle API di AWS WAF effettuate sul tuo account, non devi fare altro che attivare AWS CloudTrail nella Console di gestione AWS di CloudTrail. Per ulteriori informazioni, visita la pagina di AWS CloudTrail o consulta la AWS WAF Developer Guide.

Sì, il supporto per IPv6 consente ad AWS WAF di esaminare le richieste HTTP/S provenienti da indirizzi sia IPv4 sia IPv6.

Sì, puoi configurare una o più condizioni di corrispondenza IPv6 per ACL Web, come illustrato nella documentazione.

Sì. Le richieste di prova mostreranno l'indirizzo IPv6, se applicabile.

Sì. Potrai usare tutte le caratteristiche esistenti su traffico IPv4 e IPv6 senza alcuna differenza dal punto di vista di prestazioni, scalabilità o disponibilità del servizio.

AWS WAF può essere distribuito su Amazon CloudFront, Application Load Balancer (ALB), Amazon API Gateway e AWS AppSync. Nell'ambito di Amazon CloudFront può far parte della rete per la distribuzione di contenuti (CDN), proteggendo le risorse e i contenuti nelle edge location. All’interno di Application Load Balancer, può proteggere server Web di origine in esecuzione su ALB. Nell'ambito di Amazon API Gateway, è in grado di proteggere e difendere le API REST. Come parte di AWS AppSync, può aiutarti a proteggere e a garantire la sicurezza delle tue API GraphQL.

Fai riferimento alla tabella dei Servizi delle Regioni AWS.

Sì, AWS ha esteso il proprio programma di conformità agli standard HIPAA in modo da includere AWS WAF. Se disponi di un contratto di società in affari o BAA (Business Associate Agreement) con AWS, puoi utilizzare AWS WAF per proteggere le applicazioni Web dalle minacce più comuni. Per ulteriori informazioni, consulta la pagina conformità HIPAA.

AWS WAF addebita i costi in base al numero di ACL Web (liste di controllo degli accessi Web) create, al numero di regole aggiunte per ACL Web e al numero di richieste Web ricevute. Non sono previsti impegni anticipati. I costi di AWS WAF si aggiungono ai prezzi di Amazon CloudFront, di Application Load Balancer (ALB), di Gateway Amazon API e/o di AWS AppSync.

Le regole basate sul tasso sono un tipo di regola che può essere configurata in AWS WAF, e che consente di specificare il numero di richieste Web consentite da un IP client nell'ultimo periodo di 5 minuti, aggiornato continuamente. Se un indirizzo IP supera il limite configurato, le nuove richieste vengono bloccate finché il tasso di richieste scende di nuovo sotto la soglia configurata.

Le regole basate sul tasso sono simili alle regole normali a cui è stata aggiunta la capacità di configurare una soglia basata sul tasso. Se, ad esempio, la soglia per la regola basata sul tasso è impostata a 2.000, la regola blocca tutti gli indirizzi IP che hanno più di 2.000 richieste nell'ultimo intervallo di 5 minuti. La regola basata sul tasso può contenere anche altre condizioni AWS WAF disponibili per una regola normale.

Una regola basata sul tasso ha lo stesso costo di una normale regola AWS WAF, ovvero 1 USD per regola per WebACL al mese

Ecco alcuni casi d'uso comuni in cui i clienti possono utilizzare le regole basate sul tasso:

  • Per bloccare o contare un indirizzo IP quando questo supera la soglia configurata (configurabile in richieste Web per l'ultimo periodo di 5 minuti)
  • Per sapere quali indirizzi IP sono attualmente bloccati perché hanno superato la soglia configurata
  • Perché gli indirizzi IP che sono stati bloccati vengano rimossi automaticamente quando non superano più la soglia configurata
  • Per escludere certi intervalli di indirizzi IP di origine a traffico elevato dall'essere bloccati dalle regole basate sul tasso

Sì. Le regole basate sul tasso sono compatibili con le condizioni di corrispondenza esistenti di AWS WAF. Questo ti consente di affinare ulteriormente i criteri di corrispondenza e di limitare le mitigazioni basate sul tasso a URL specifici del tuo sito Web o del traffico proveniente da referrer (o agenti utente) specifici o aggiungere ulteriori criteri di corrispondenza personalizzati.

Sì. Questo nuovo tipo di regola è progettato per proteggere da casi d'uso come attacchi DDoS al layer Web, tentativi di accesso di forza bruta e bot dannosi.

Le regole basate sul tasso supportano tutte le caratteristiche di visibilità attualmente disponibili nelle normali regole AWS WAF. Inoltre hanno visibilità negli indirizzi IP bloccati dalla regola basata sul tasso.

Sì. Ecco un esempio. Supponiamo che tu voglia limitare le richieste alla pagina di accesso del tuo sito Web. Per fare questo, puoi aggiungere la condizione di corrispondenza di stringa seguente a una regola basata sul tasso:

  • La parte della richiesta sulla quale filtrare è "URI".
  • Il tipo di corrispondenza è "Starts with".
  • Il valore di corrispondenza è "/login" (questo deve essere qualsiasi elemento che identifichi la pagina di accesso nella parte URI della richiesta Web)

Inoltre è possibile specificare un limite di tasso di, per esempio, 15.000 richieste ogni 5 minuti. L'aggiunta di questa regola a un ACL Web limiterà le richieste alla tua pagina di accesso per indirizzo IP senza influenzare il resto del tuo sito.

Sì. È possibile farlo disponendo di una condizione di corrispondenza IP separata che consenta la richiesta all'interno della regola basata sul tasso.

La precisione del database di identificazione del paese attraverso l'indirizzo IP varia secondo le regioni. Sulla base di test recenti, la precisione globale di mappatura dell'indirizzo IP con il paese è del 99,8%.

Managed Rules for AWS WAF

Le regole gestite (Managed Rules) sono un modo semplice per distribuire regole preconfigurate per proteggere le tue applicazioni da minacce comuni come vulnerabilità quali OWASP, bot o vulnerabilità ed esposizioni comuni (CVE). Le AWS Managed Rules per AWS WAF sono gestite da AWS, mentre le Managed Rules di AWS Marketplace vengono gestite dai fornitori di servizi di sicurezza di terze parti.

Puoi abbonarti a una Managed Rule fornita da un venditore di sicurezza di Marketplace dalla console AWS WAF o da AWS Marketplace. Tutte le Managed Rules cui ti abboni saranno disponibili per l'aggiunta a un ACL Web AWS WAF.

Sì, puoi utilizzare le Managed Rules insieme alle tue personali regole AWS WAF. Puoi aggiungere le Managed Rules alla tua ACL Web AWS WAF esistente cui potresti aver già aggiunto le tue regole personali.

Il numero di regole all'interno di una Managed Rule non influisce sui tuoi limiti. Tuttavia, ciascuna Managed Rule aggiunta al tuo ACL Web conterà come una regola.

Puoi aggiungere una Managed Rule a un ACL Web o rimuoverla dall'ACL Web in qualsiasi momento. Le Managed Rules vengono disattivate una volta che una Managed Rule viene disassociata da qualsiasi ACL Web.

AWS WAF consente di configurare un'azione "count" per una Managed Rule, che conta il numero di richieste Web che corrispondono alle regole all'interno della Managed Rule. In questo modo potrai vedere il numero di richieste Web conteggiate e fare una stima di quante di esse verrebbero bloccate in caso di attivazione della Managed Rule.

Configurazione AWS WAF

Sì, puoi configurare CloudFront in modo che visualizzi pagine di errore personalizzate quando le richieste vengono bloccate. Per ulteriori informazioni, consulta la Guida per gli sviluppatori di CloudFront

Dopo l'impostazione iniziale, propagare globalmente una nuova regola o una modifica a una regola esistente richiede circa un minuto.

AWS WAF consente due metodi per vedere gli effetti della protezione applicata a un sito Web: in CloudWatch sono disponibili parametri con scadenza a un minuto; oppure tramite le API e la console di gestione di AWS WAF sono disponibili richieste Web di esempio. Grazie a queste risorse, è possibile vedere quali richieste vengono bloccate, quali consentite e quali conteggiate, nonché quali regole si applicano alle diverse richieste (ad esempio, una determinata richiesta viene bloccata a causa di una condizione posta sull'indirizzo IP e così via). Per ulteriori informazioni, consulta la AWS WAF Developer Guide.

AWS WAF consente di configurare un'azione "count" per le regole, che conta il numero di richieste Web che soddisfano le condizioni delle regole. In questo modo potrai vedere il numero di richieste Web conteggiate e fare una stima di quante di esse verrebbero bloccate o consentite in caso di attivazione della regola.

I parametri in tempo reale vengono memorizzati in Amazon CloudWatch. Amazon CloudWatch ti consente di configurare il periodo di scadenza degli eventi. Le richieste Web di esempio vengono memorizzate per un massimo di 3 ore.

Sì. AWS WAF aiuta a proteggere le applicazioni ed è in grado di ispezionare le richieste Web trasmesse tramite HTTP e HTTPS.

Controllo delle frodi AWS WAF - Prevenzione dell'acquisizione account

La prevenzione dell'acquisizione account (ATP) è un gruppo di regole gestite che monitora il traffico verso la pagina di login della vostra applicazione per rilevare l'accesso non autorizzato agli account degli utenti utilizzando credenziali compromesse. Puoi usare ATP per prevenire attacchi di credenziali, tentativi di login di forza bruta e altre attività di login anomale. Man mano che vengono effettuati dei tentativi di accesso alla tua applicazione, ATP controlla in tempo reale se i nomi utente e le password inviate sono state compromesse altrove sul web. Nel controllare i tentativi di login anomali provenienti da attori cattivi, ATP correla le richieste viste nel corso tempo per aiutarti a rilevare e mitigare i tentativi di forza bruta e gli attacchi di credenziali. ATP offre anche SDK opzionali per JavaScript e iOS/Android che possono essere integrati nella vostra applicazione per fornirvi una telemetria aggiuntiva sui dispositivi degli utenti che tentano di accedere alla vostra applicazione per proteggere meglio la vostra applicazione dai tentativi di accesso automatizzati da parte dei bot.

Il traffico tra i dispositivi degli utenti e la tua applicazione è protetto dal protocollo SSL/TLS che configuri per il servizio AWS che usi per la tua applicazione, come Amazon CloudFront, Application Load Balancer, Amazon API Gateway o AWS AppSync. Quando la credenziale di un utente raggiunge AWS, AWS WAF ispeziona la credenziale e poi effettua l’hashing immediatamente e la scarta, e la credenziale non lascia mai la rete AWS. Qualsiasi comunicazione tra i servizi AWS che usi nella tua applicazione e AWS WAF è criptata in transito e a riposo.

Bot Control ti permette di avere visibilità e controllo del traffico comune e intenso dei bot che può consumare risorse, alterare i parametri, causare tempo di inattività o altre attività indesiderate. Bot Control controlla vari campi di intestazione e proprietà di richiesta con le firme bot conosciute per rilevare e classificare i bot automatizzati, come scraper, scanner e crawler.

Account Takeover Prevention (ATP) ti fornisce visibilità e controllo su tentativi di accesso anomali da parte di cattivi attori con credenziali compromesse, e ti aiuta a prevenire accessi non autorizzati che potrebbero portare ad attività fraudolente. APT viene utilizzato per proteggere la pagina di login della tua applicazione.

Bot Control e ATP possono essere utilizzati in maniera indipendente l’uno dall’altro o assieme. Come con i gruppi di regole gestite da Bot Control, è possibile utilizzare l'azione predefinita di ATP per bloccare le richieste corrispondenti, oppure è possibile personalizzare il comportamento di ATP utilizzando la funzionalità di mitigazione di AWS WAF.

Sulla console di AWS WAF, crea una nuova ACL Web, o modifica una ACL Web esistente se utilizzi già AWS WAF. Puoi usare la procedura guidata per aiutarti a configurare le impostazioni di base, come la risorsa che desideri proteggere e le regole da aggiungere. Quando viene richiesto di aggiungere le regole, seleziona Aggiungi regole gestite e poi seleziona Prevenzioni delle frodi legate alla creazione di account dall'elenco delle regole gestite. Per configurare ATP, inserisci l'URL della pagina di accesso della tua applicazione e indica dove si trovano i campi nome utente e password del modulo all'interno del corpo della richiesta.

Gli SDK JavaScript e Mobile forniscono una telemetria aggiuntiva sui dispositivi degli utenti che tentano di accedere alla tua applicazione per proteggere meglio la tua applicazione dai tentativi di accesso automatizzati da parte dei bot. Non è necessario che utilizzi una della SDK, ma raccomandiamo di farlo per protezione aggiuntiva.

Quando ATP stabilisce che le credenziali utente sono state compromesse, genera un'etichetta per indicare una corrispondenza. Per impostazione predefinita, AWS WAF blocca automaticamente i tentativi di accesso che sono determinati come dannosi o anomali (ad esempio, livelli anormali di tentativi di accesso falliti, trasgressori ripetuti e tentativi di accesso da bot). Puoi modificare come AWS WAF risponde alle corrispondenze scrivendo le regole AWS WAF che agiscono sull'etichetta.

Controllo delle frodi AWS WAF - Prevenzione delle frodi legate alla creazione di account

Prevenzione delle frodi legate alla creazione di account (ACFP) è un gruppo di regole gestito a pagamento che consente di rilevare e mitigare gli attacchi di creazione di account falsi nella pagina di accesso o registrazione. Puoi utilizzare ACFP per prevenire l'uso illecito di promozioni, iscrizioni, programmi fedeltà, ricompense e il phishing. Quando si registrano nuovi account, ACFP verifica in tempo reale ogni credenziale (ad esempio, nome utente e password) inviata, i domini e-mail utilizzati e altre informazioni come numeri di telefono e campi di indirizzo inseriti in tempo reale e blocca il tentativo di registrazione se una di queste informazioni è considerata rubata o ha una cattiva reputazione. Inoltre, ACFP include previsioni del rischio di frode che puoi utilizzare anche senza avere alcuna conoscenza approfondita dei modelli di rilevamento basati sul machine learning. ACFP offre anche SDK JavaScript e iOS/Android consigliati che possono essere integrati nell'applicazione per fornire una telemetria aggiuntiva sull'utente e proteggere meglio l'applicazione dai tentativi di accesso automatici da parte dei bot.

L'acquisizione account attacca la pagina di accesso di un'applicazione con l'obiettivo di ottenere l'accesso non autorizzato a un account esistente, mentre la frode legata alla creazione di account prende di mira la pagina di registrazione dell'applicazione con l'obiettivo di commettere frodi attraverso account falsi. ATP si concentra sulla prevenzione del credential stuffing e degli attacchi di forza bruta, in cui gli autori degli attacchi automatizzano centinaia di tentativi di accesso, testando le credenziali rubate su più siti. Invece, ACFP si concentra sulla prevenzione di frodi automatiche come l'uso illecito di promozioni, iscrizioni, programmi fedeltà, ricompense e il phishing. ACFP e ATP possono essere utilizzati in modo indipendente l'uno dall'altro o insieme.

Sulla console di AWS WAF, crea una nuova ACL Web, o modifica una ACL Web esistente se utilizzi già AWS WAF. Puoi usare la procedura guidata per aiutarti a configurare le impostazioni di base, come la risorsa che vuoi proteggere e le regole da aggiungere. Quando viene richiesto di aggiungere delle regole, seleziona Aggiungi regole gestite e poi seleziona Prevenzione dell'acquisizione account dall'elenco delle regole gestite. Per configurare ACFP, inserisci l'URL della pagina di creazione e registrazione dell'account dell'applicazione. Inoltre, puoi anche indicare dove si trovano i campi nome utente, password, indirizzo e numero di telefono del modulo all'interno del corpo della richiesta.

Facoltativo ma altamente consigliato. L'integrazione dell'SDK fornisce informazioni aggiuntive come versioni del browser, plugin e dati canvas che aumentano l'efficacia delle regole ACP. Se non viene utilizzata l'integrazione dell'SDK, la applichiamo utilizzando l'azione Challenge. L'azione Challenge non funziona correttamente con le applicazioni a pagina singola (SPA) e le app native per dispositivi mobili, quindi per queste applicazioni l'integrazione dell'SDK è obbligatoria. Per altre app in grado di resistere all'aggiornamento della pagina, come le pagine HTML, l'integrazione dell'SDK è facoltativa. Supportiamo l'SDK JS per applicazioni Web e Android e l'SDK iOS per applicazioni native per dispositivi mobili.

Puoi verificare in che modo ACFP protegge la tua applicazione esaminando il Pannello di controllo delle frodi sulla console, la registrazione completa del WAF e i parametri di CloudWatch.

Dashboard: una dashboard centralizzata per il monitoraggio delle richieste analizzate da ACFP e i parametri di CloudWatch di ATP. Tutte le azioni delle regole con il gruppo di regole ACFP emettono i parametri di CloudWatch che i clienti possono utilizzare per creare avvisi e notifiche.

Registrazione WAF: tutte le richieste analizzate da ACFP vengono registrate nei log WAF, quindi puoi utilizzare le soluzioni di registrazione esistenti per eseguire query e analizzare i log per le regole gestite da ACFP. ACFP registra dettagli come le azioni sulle regole, le informazioni sull'etichetta e il punteggio di rischio, che possono essere utilizzati per monitorare l'efficacia di ACFP.