Condividi tramite


Sfida JavaScript del Web Application Firewall di Azure (anteprima)

Importante

Il test JavaScript di Web Application Firewall di Azure è attualmente disponibile in ANTEPRIMA. Vedere le condizioni per l'utilizzo supplementari per le anteprime di Microsoft Azure per termini legali aggiuntivi che si applicano a funzionalità di Azure in versione beta, in anteprima o in altro modo non ancora disponibili a livello generale.

Web application firewall di Azure (WAF) in Frontdoor di Azure e nel Gateway applicazione di Azure offre una funzionalità di test JavaScript come una delle opzioni di mitigazione per la protezione avanzata dei bot. Per Frontdoor di Azure, è disponibile nella versione Premium come azione nel set di regole personalizzato e nel set di regole di Bot Manager 1.x.

Il test JavaScript è un test Web invisibile usata per distinguere tra utenti legittimi e bot. I bot dannosi non superano il test, che protegge le applicazioni Web. Inoltre, il test JavaScript è utile perché riduce l'attrito per gli utenti legittimi perché non richiede alcun intervento umano.

Funzionamento

Quando la richiesta JS Challenge è attiva in Azure WAF e le richieste HTTP di un client corrispondono a una regola specifica, il client visualizza una pagina di test Microsoft JS. L'utente visualizza questa pagina per alcuni secondi mentre il browser dell'utente calcola la richiesta. Il browser del client deve calcolare correttamente una richiesta JavaScript in questa pagina per ricevere la convalida da Azure WAF. Quando il calcolo ha esito positivo, WAF convalida la richiesta come client nonbot ed esegue il resto delle regole WAF. Le richieste che non riescono a calcolare correttamente la richiesta di test vengono bloccate.

Le richieste CORS (Cross-Origin Resource Sharing) vengono richieste per ogni tentativo di accesso. Pertanto, se un client accede a una pagina che attiva la richiesta di test JavaScript da un dominio diverso dal dominio che ospita la richiesta, il client affronta nuovamente il test anche se il client ha superato in precedenza il test.

Inoltre, se un client risolve il test JavaScript e quindi cambia l'indirizzo IP del client, la richiesta viene generata nuovamente.

Ecco una pagina di test JavaScript di esempio:

Screenshot che mostra la pagina della richiesta di test JavaScript.

Scadenza

L'impostazione dei criteri WAF definisce la durata della validità del cookie di test JavaScript in minuti. L'utente viene contestato dopo la scadenza della durata. La durata è un numero intero compreso tra 5 e 1.440 minuti e il valore predefinito è 30 minuti. Il nome del cookie di test JavaScript si trova afd_azwaf_jsclearance in Frontdoor di Azure e appgw_azwaf_jsclearance nel gateway applicazione di Azure.

Nota

Il cookie di scadenza della richiesta di test JavaScript viene inserito nel browser dell'utente dopo aver completato correttamente la test.

Limiti

  • Le chiamate AJAX e API non sono supportate: la sfida JavaScript non si applica alle richieste AJAX e API.

  • Restrizione delle dimensioni del corpo POST: la prima richiesta che attiva una richiesta JavaScript viene bloccata se il corpo POST supera 128 KB.

  • Risorse incorporate non HTML: la sfida JavaScript è progettata per le risorse HTML. Le sfide per le risorse non HTML incorporate in una pagina, ad esempio immagini, CSS, file JavaScript o risorse simili, non sono supportate. Tuttavia, se è stata eseguita una richiesta di verifica JavaScript con esito positivo precedente, tali limitazioni vengono revocate.

  • Compatibilità del browser: la verifica JavaScript non è supportata in Microsoft Internet Explorer. È compatibile con le versioni più recenti dei Web browser Microsoft Edge, Chrome, Firefox e Safari.

  • Limite di frequenza non supportato: l'azione di verifica JavaScript nel gateway applicazioni non è supportata per le regole personalizzate del tipo limite di frequenza durante l'anteprima pubblica.