Perché la mia regola personalizzata di AWS WAF non funziona?

Ultimo aggiornamento: 12-07-2022

Ho creato una regola AWS WAF personalizzata ma non funziona come previsto. Cosa posso fare per risolvere il problema?

Risoluzione

Se la regola AWS WAF personalizzata non funziona come previsto, verifica quanto segue:

  • Priorità di una regola
  • Trasformazione del testo
  • Logica booleana

Priorità di una regola

Verifica di aver inserito la tua regola personalizzata con una priorità corretta. Per ulteriori informazioni, consulta Ordine di elaborazione di regole e gruppi di regole in una ACL web.

È possibile accedere a una regola per nome nel gruppo di regole o nell'ACL Web in cui è definita.

L'ordine di valutazione delle regole di AWS WAF va dall'alto verso il basso, quindi si interrompe alla prima regola di arresto corrispondente tra Consenti, Blocca o CAPTCHA. Se la tua richiesta corrisponde a una delle regole di arresto poste sopra la tua regola personalizzata, AWS WAF intraprenderà l'azione specificata in quella regola. La richiesta non verrà valutata in base alla tua regola personalizzata. Per ulteriori informazioni, consulta Gestione di base delle azioni delle regole e dei gruppi di regole in una ACL Web.

Ad esempio, supponiamo di creare una regola di autorizzazione personalizzata per consentire la richiesta bloccata da un gruppo di regole gestite di AWS (AMR). È necessario posizionare la regola personalizzata sopra (con una priorità numerica inferiore) rispetto all'AMR che blocca la richiesta.

È possibile gestire l'ordine di priorità tramite il Rule Builder (Generatore di Regole) della console AWS WAF, disponibile per le ACL Web e i gruppi di regole. Per modificare l'ordine di priorità utilizzando l'API AWS, utilizza le chiamate API UpdateWebACL e UpdateRuleGroup. Per modificare l'ordine di priorità utilizzando AWS CLI, utilizza i comandi update-web-acl e update-rule-group.

Trasformazione del testo

Se utilizzi trasformazioni di testo nella tua regola personalizzata, verifica di averla applicata in modo corretto. Per ulteriori informazioni, consulta Text transformations di AWS WAF.

AWS WAF applica la trasformazione prima di esaminare la richiesta. Se specifichi più di una trasformazione, AWS WAF le elabora nell'ordine elencato. Se si utilizzano più trasformazioni, è necessario verificare la trasformazione e l'ordine di trasformazione nella regola personalizzata.

Ad esempio, se è stata creata una regola personalizzata per eseguire la decodifica Base64 e la decodifica URL per una stringa nell'argomento della query. AWS WAF esegue innanzitutto la decodifica Base64 della stringa di query nella richiesta in ingresso. La stringa risultante dalla decodifica Base64 viene ulteriormente trasformata utilizzando una decodifica URL. Quindi, la stringa risultante della decodifica URL viene esaminata rispetto alla stringa fornita nella configurazione della regola.

Logica booleana

Se si utilizzano istruzioni di regole logiche, verificare che la logica AND, OR o NOT utilizzata per la regola personalizzata sia corretta. Per ulteriori informazioni, vedere Elenco delle istruzioni regola e seguire le istruzioni in Istruzioni regole logiche.

Per verificare che ciò avvenga utilizzando la logica booleana, si consideri questo esempio:

Se si crea una regola personalizzata che corrisponde a una richiesta con i criteri: la richiesta ha URI "/test"AND l'IP di origine è nel set IP X, quindi Blocca.

Richiesta 1

Se la richiesta ha URI "/test" (Booleano 1) AND l'IP è NOT nel set IP X (booleano 0), allora Booleano 1 AND il Booleano 0 restituisce il Booleano 0.

Questa richiesta non corrisponderà alla tua regola personalizzata.

Richiesta 2

Se la richiesta non ha URI "/test" (Booleano 0) AND l'IP è NOT nel set IP X (Booleano 0), allora Booleano 0 AND Booleano 0 restituisce il Booleano 0.

Questa richiesta non corrisponderà alla tua regola personalizzata.

Richiesta 3

Se la richiesta ha URI "/test" (booleano 1) AND l'IP è nel set IP X (Booleano 1), allora Booleano 1 AND Booleano 1 restituisce il Booleano 1.

Questa richiesta corrisponderà alla tua regola personalizzata.


Questo articolo è stato utile?


Hai bisogno di supporto tecnico o per la fatturazione?