1. Introduzione
Ciao! Benvenuto nel codelab sulle regole WAF preconfigurate di Cloud Armor.
Google Cloud Armor è la soluzione di sicurezza di rete perimetrale aziendale di Google che fornisce protezione DDoS, applicazione delle regole WAF e gestibilità adattiva su larga scala.
Cloud Armor ha esteso i set di regole WAF preconfigurate per mitigare le vulnerabilità di sicurezza delle applicazioni web OWASP Top 10. I set di regole si basano sulla OWASP Modsecurity Core Rule Set versione 3.0.2 per proteggere da alcuni dei rischi di sicurezza delle applicazioni web più comuni, tra cui l'inclusione di file locali (LFI), l'inclusione di file remoti (RFI), l'esecuzione di codice remoto (RCE) e molti altri.
In questo codelab, imparerai a mitigare alcune delle vulnerabilità comuni utilizzando le regole WAF di Google Cloud Armor.
Cosa imparerai a fare
- Come configurare un gruppo di istanze e un bilanciatore del carico globale per supportare un servizio
- Come configurare le policy di sicurezza di Cloud Armor con regole WAF preconfigurate per proteggere da LFI, RCE, scanner, attacchi di protocollo e sessione fissa
- Come verificare che Cloud Armor abbia mitigato un attacco osservando i log.
Che cosa ti serve
- Conoscenza di base di Google Compute Engine ( codelab)
- Conoscenza di base del networking e di TCP/IP
- Conoscenza di base della riga di comando Unix/Linux
- È utile aver completato un tour del networking in GCP con Networking in the Google Cloud.
- (Facoltativo) Completa il lab Cloudnet20 Cloud Armor per imparare a proteggere i carichi di lavoro con regole basate su SQL injection, IP e posizione geografica.
Topologia e caso d'uso del codelab

Figura 1: topologia del codelab sulle regole WAF di Cloud Armor
L'applicazione OWASP Juice Shop è utile per la formazione e la sensibilizzazione in materia di sicurezza, perché contiene istanze di ciascuna delle 10 principali vulnerabilità di sicurezza OWASP, per progettazione. Un malintenzionato può sfruttarlo a scopo di test. In questo codelab, lo utilizzeremo per dimostrare alcuni attacchi alle applicazioni, seguiti dalla protezione dell'applicazione con le regole WAF di Cloud Armor. L'applicazione sarà front-end di un bilanciatore del carico Google Cloud, a cui verranno applicati i criteri di sicurezza e le regole di Cloud Armor. Verrà pubblicato su internet pubblico, quindi sarà raggiungibile da quasi ovunque e protetto utilizzando Cloud Armor e le regole firewall VPC.
2. Configurazione e requisiti
Configurazione dell'ambiente autonomo
- Accedi alla console Cloud e crea un nuovo progetto o riutilizzane uno esistente. Se non hai ancora un account Gmail o Google Workspace, devi crearne uno.



Ricorda l'ID progetto, un nome univoco tra tutti i progetti Google Cloud (il nome sopra è già stato utilizzato e non funzionerà per te, mi dispiace). In questo codelab verrà chiamato PROJECT_ID.
- Successivamente, dovrai abilitare la fatturazione in Cloud Console per utilizzare le risorse Google Cloud.
L'esecuzione di questo codelab non dovrebbe costare molto, se non nulla. Assicurati di seguire le istruzioni riportate nella sezione "Pulizia", che ti consiglia come arrestare le risorse in modo da non incorrere in addebiti oltre questo tutorial. I nuovi utenti di Google Cloud possono beneficiare del programma prova senza costi di 300$.
Avvia Cloud Shell
Sebbene Google Cloud possa essere gestito da remoto dal tuo laptop, in questo codelab utilizzerai Google Cloud Shell, un ambiente a riga di comando in esecuzione nel cloud.
Nella console GCP, fai clic sull'icona di Cloud Shell nella barra degli strumenti in alto a destra:

Bastano pochi istanti per eseguire il provisioning e connettersi all'ambiente. Al termine, dovresti vedere un risultato simile a questo:

Questa macchina virtuale è caricata con tutti gli strumenti per sviluppatori di cui avrai bisogno. Offre una home directory permanente da 5 GB e viene eseguita su Google Cloud, migliorando notevolmente le prestazioni e l'autenticazione della rete. Tutto il lavoro di questo lab può essere svolto semplicemente con un browser.
Prima di iniziare
In Cloud Shell, assicurati che l'ID progetto sia configurato.
gcloud config list project gcloud config set project [YOUR-PROJECT-NAME] PROJECT_ID=[YOUR-PROJECT-NAME] echo $PROJECT_ID
Abilita le API
Attiva tutti i servizi necessari
gcloud services enable compute.googleapis.com gcloud services enable logging.googleapis.com gcloud services enable monitoring.googleapis.com
3. crea la rete VPC
Crea una rete VPC
Da Cloud Shell
gcloud compute networks create ca-lab-vpc --subnet-mode custom
Output
Created NAME SUBNET_MODE BGP_ROUTING_MODE IPV4_RANGE GATEWAY_IPV4 ca-lab-vpc CUSTOM REGIONAL
Crea una subnet
Da Cloud Shell
gcloud compute networks subnets create ca-lab-subnet \
--network ca-lab-vpc --range 10.0.0.0/24 --region us-central1
Output
Created NAME REGION NETWORK RANGE ca-lab-subnet us-central1 ca-lab-vpc 10.0.0.0/24
Crea regole firewall VPC
Dopo aver creato il VPC e la subnet, ora configurerai alcune regole firewall. La prima regola firewall verrà utilizzata per consentire a tutti gli IP di accedere all'IP esterno del sito web dell'applicazione di test sulla porta 3000. La seconda regola firewall verrà utilizzata per consentire i controlli di integrità dall'IP di origine dei bilanciatori del carico.
Da Cloud Shell
gcloud compute firewall-rules create allow-js-site --allow tcp:3000 --network ca-lab-vpc
Output
Creating firewall...done. NAME NETWORK DIRECTION PRIORITY ALLOW DENY DISABLED allow-js-site ca-lab-vpc INGRESS 1000 tcp:3000 False
Crea regole firewall per consentire i controlli di integrità dagli intervalli di controllo di integrità di Google.
Da Cloud Shell
gcloud compute firewall-rules create allow-health-check \
--network=ca-lab-vpc \
--action=allow \
--direction=ingress \
--source-ranges=130.211.0.0/22,35.191.0.0/16 \
--target-tags=allow-healthcheck \
--rules=tcp
Output
Creating firewall...done. NAME NETWORK DIRECTION PRIORITY ALLOW DENY DISABLED allow-health-check ca-lab-vpc INGRESS 1000 tcp False
4. Configurare l'applicazione di test
Il passaggio successivo consiste nel creare l'applicazione di test, in questo caso il server web OWASP Juice Shop.
Quando creiamo l'istanza di computing, utilizziamo un'immagine container per assicurarci che il server disponga dei servizi appropriati. Questo server verrà implementato in us-central1-c e avrà un tag di rete che consentirà i controlli di integrità.
Crea l'applicazione OWASP Juice Shop
Utilizza l'applicazione open source OWASP Juice Shop nota per fungere da applicazione vulnerabile. Puoi anche utilizzare questa applicazione per affrontare le sfide di sicurezza OWASP tramite il loro sito web.
Da Cloud Shell
gcloud compute instances create-with-container owasp-juice-shop-app --container-image bkimminich/juice-shop \
--network ca-lab-vpc \
--subnet ca-lab-subnet \
--private-network-ip=10.0.0.3 \
--machine-type n1-standard-2 \
--zone us-central1-c \
--tags allow-healthcheck
Output
NAME ZONE MACHINE_TYPE PREEMPTIBLE owasp-juice-shop-app us-central1-c n1-standard-2 INTERNAL_IP EXTERNAL_IP STATUS 10.0.0.3 <public IP> RUNNING
Configura il componente bilanciatore del carico Cloud: gruppo di istanze
Crea il gruppo di istanze non gestito.
Da Cloud Shell
gcloud compute instance-groups unmanaged create juice-shop-group \
--zone=us-central1-c
Output
NAME LOCATION SCOPE NETWORK MANAGED INSTANCES juice-shop-group us-central1-c zone 0
Aggiungi l'istanza GCE Juice Shop al gruppo di istanze non gestite.
Da Cloud Shell
gcloud compute instance-groups unmanaged add-instances juice-shop-group \
--zone=us-central1-c \
--instances=owasp-juice-shop-app
Output
Updated [https://www.googleapis.com/compute/v1/projects/<project name>/zones/us-central1-c/instanceGroups/juice-shop-group].
Imposta la porta denominata su quella dell'applicazione Juice Shop.
Da Cloud Shell
gcloud compute instance-groups unmanaged set-named-ports \ juice-shop-group \ --named-ports=http:3000 \ --zone=us-central1-c
Output
Updated [https://www.googleapis.com/compute/v1/projects/<project name>/zones/us-central1-c/instanceGroups/juice-shop-group].
Ora che hai creato il gruppo di istanze non gestite, il passaggio successivo consiste nel creare un controllo di integrità, un servizio di backend, una mappa URL, un proxy di destinazione e una regola di forwarding.
Configura il componente bilanciatore del carico Cloud: controllo di integrità
Crea il controllo di integrità per la porta del servizio Juice Shop.
Da Cloud Shell
gcloud compute health-checks create tcp tcp-port-3000 \
--port 3000
Output
Created NAME PROTOCOL tcp-port-3000 TCP
Configura il componente bilanciatore del carico cloud: servizio di backend
Crea i parametri del servizio di backend.
Da Cloud Shell
gcloud compute backend-services create juice-shop-backend \
--protocol HTTP \
--port-name http \
--health-checks tcp-port-3000 \
--enable-logging \
--global
Output
NAME BACKENDS PROTOCOL juice-shop-backend HTTP
Aggiungi il gruppo di istanze Juice Shop al servizio di backend.
Da Cloud Shell
gcloud compute backend-services add-backend juice-shop-backend \
--instance-group=juice-shop-group \
--instance-group-zone=us-central1-c \
--global
Output
Updated [https://www.googleapis.com/compute/v1/projects/cythom-host1/global/backendServices/juice-shop-backend].
Configura il componente bilanciatore del carico Cloud: mappa URL
Crea la mappa URL da inviare al backend.
Da Cloud Shell
gcloud compute url-maps create juice-shop-loadbalancer \
--default-service juice-shop-backend
Output
NAME DEFAULT_SERVICE juice-shop-loadbalancer backendServices/juice-shop-backend
Configura il componente bilanciatore del carico Cloud: proxy di destinazione
Crea il proxy di destinazione per la parte anteriore della mappa URL.
Da Cloud Shell
gcloud compute target-http-proxies create juice-shop-proxy \
--url-map juice-shop-loadbalancer
Output
NAME URL_MAP juice-shop-proxy juice-shop-loadbalancer
Configura il componente bilanciatore del carico Cloud: regola di forwarding
Crea la regola di forwarding per il bilanciatore del carico.
Da Cloud Shell
gcloud compute forwarding-rules create juice-shop-rule \
--global \
--target-http-proxy=juice-shop-proxy \
--ports=80
Output
Created [https://www.googleapis.com/compute/v1/projects/cythom-host1/global/forwardingRules/juice-shop-rule].
Verificare che il servizio Juice Shop sia online
Da Cloud Shell
PUBLIC_SVC_IP="$(gcloud compute forwarding-rules describe juice-shop-rule --global --format="value(IPAddress)")"
Da Cloud Shell
echo $PUBLIC_SVC_IP
Output
<public VIP of service>
Attendi qualche minuto prima di continuare, altrimenti potresti ricevere una risposta HTTP/1.1 404 Not Found.
Da Cloud Shell
curl -Ii http://$PUBLIC_SVC_IP
Output
HTTP/1.1 200 OK <...>
Puoi anche andare al browser per visualizzare il Juice Shop.

Ora siamo pronti a esplorare le vulnerabilità di Juice Shop e come proteggerci da queste con i set di regole WAF di Cloud Armor.
5. Dimostrare le vulnerabilità note
Per risparmiare tempo, mostreremo gli stati prima e dopo la propagazione delle regole WAF di Cloud Armor in passaggi condensati.
Osservare una vulnerabilità LFI: path traversal
L'inclusione di file locali è il processo di osservazione dei file presenti sul server sfruttando la mancanza di convalida dell'input nella richiesta per esporre potenzialmente dati sensibili. Di seguito viene semplicemente mostrato che è possibile attraversare un percorso. Nel browser o con curl, osserva un percorso esistente pubblicato dall'applicazione.
Da Cloud Shell
curl -Ii http://$PUBLIC_SVC_IP/ftp
Output
HTTP/1.1 200 OK <...>
Inoltre, osserva che funziona anche l'attraversamento del percorso:
Da Cloud Shell
curl -Ii http://$PUBLIC_SVC_IP/ftp/../
Output
HTTP/1.1 200 OK <...>
Osservare una vulnerabilità RCE
L'esecuzione di codice remoto include vari scenari di inserimento di comandi UNIX e Windows che consentono agli autori degli attacchi di eseguire comandi del sistema operativo in genere riservati agli utenti con privilegi. Di seguito è riportata l'esecuzione di un semplice comando ls.
Da Cloud Shell
curl -Ii http://$PUBLIC_SVC_IP/ftp?doc=/bin/ls
Output
HTTP/1.1 200 OK <...>
Puoi rimuovere i flag curl per osservare l'output completo.
Osservare l'accesso di uno scanner noto
Le applicazioni di scansione commerciali e open source vengono utilizzate per vari scopi, tra cui la scansione delle vulnerabilità. Questi strumenti utilizzano User-Agent e altre intestazioni noti. Osserva che curl funziona con un'intestazione user agent nota:
Da Cloud Shell
curl -Ii http://$PUBLIC_SVC_IP -H "User-Agent: blackwidow"
Output
HTTP/1.1 200 OK <...>
Osserva un attacco al protocollo: HTTP splitting
Alcune applicazioni web utilizzano l'input dell'utente per generare le intestazioni nelle risposte. Se l'applicazione non filtra correttamente l'input, un malintenzionato può potenzialmente contaminare il parametro di input con la sequenza %0d%0a (la sequenza CRLF utilizzata per separare le diverse righe). La risposta potrebbe quindi essere interpretata come due risposte da qualsiasi elemento che la analizza, ad esempio un server proxy intermediario, che potrebbe pubblicare contenuti falsi nelle richieste successive. Inserisci la sequenza %0d%0a nel parametro di input, che può portare alla pubblicazione di una pagina ingannevole.
Da Cloud Shell
curl -Ii "http://$PUBLIC_SVC_IP/index.html?foo=advanced%0d%0aContent-Length:%200%0d%0a%0d%0aHTTP/1.1%20200%20OK%0d%0aContent-Type:%20text/html%0d%0aContent-Length:%2035%0d%0a%0d%0a<html>Sorry,%20System%20Down</html>"
Output
HTTP/1.1 200 OK <...>
Osserva la sessione di correzione
Da Cloud Shell
curl -Ii http://$PUBLIC_SVC_IP -H session_id=X
Output
HTTP/1.1 200 OK <...>
6. Definisci le regole WAF di Cloud Armor
Elenca le regole WAF preconfigurate:
Da Cloud Shell
gcloud compute security-policies list-preconfigured-expression-sets
Output
EXPRESSION_SET
Sqli-canary
RULE_ID
owasp-crs-v030001-id942110-sqli
owasp-crs-v030001-id942120-sqli
<...>
Crea la policy di sicurezza di Cloud Armor
Da Cloud Shell:
gcloud compute security-policies create block-with-modsec-crs \
--description "Block with OWASP ModSecurity CRS"
Aggiorna la regola predefinita della policy di sicurezza
Tieni presente che la priorità della regola predefinita ha un valore numerico di 2147483647.
Da Cloud Shell:
gcloud compute security-policies rules update 2147483647 \
--security-policy block-with-modsec-crs \
--action "deny-403"
Poiché la regola predefinita è configurata con l'azione Nega, dobbiamo consentire l'accesso dal tuo IP. Trova il tuo IP pubblico (curl, ipmonkey, whatismyip e così via).
Da Cloud Shell:
MY_IP=$(curl ifconfig.me)
Aggiungi la prima regola per consentire l'accesso dal tuo IP (INSERISCI IL TUO IP DI SEGUITO)
Da Cloud Shell:
gcloud compute security-policies rules create 10000 \
--security-policy block-with-modsec-crs \
--description "allow traffic from my IP" \
--src-ip-ranges "$MY_IP/32" \
--action "allow"
Aggiorna la policy di sicurezza per bloccare gli attacchi LFI
Applica il ModSecurity Core Rule Set di OWASP che impedisce l'attraversamento del percorso per le inclusioni di file locali.
Da Cloud Shell:
gcloud compute security-policies rules create 9000 \
--security-policy block-with-modsec-crs \
--description "block local file inclusion" \
--expression "evaluatePreconfiguredExpr('lfi-stable')" \
--action deny-403
Aggiornare le norme di sicurezza per bloccare l'esecuzione di codice remoto (RCE)
In base al ModSecurity Core Rule Set di OWASP, applica regole che cercano RCE, inclusa l'iniezione di comandi. I comandi del sistema operativo tipici vengono rilevati e bloccati.
Da Cloud Shell:
gcloud compute security-policies rules create 9001 \
--security-policy block-with-modsec-crs \
--description "block rce attacks" \
--expression "evaluatePreconfiguredExpr('rce-stable')" \
--action deny-403
Aggiorna la policy di sicurezza per bloccare gli scanner di sicurezza
Applica il ModSecurity Core Rule Set di OWASP per bloccare scanner di sicurezza, client HTTP di scripting e web crawler noti.
Da Cloud Shell:
gcloud compute security-policies rules create 9002 \
--security-policy block-with-modsec-crs \
--description "block scanners" \
--expression "evaluatePreconfiguredExpr('scannerdetection-stable')" \
--action deny-403
Aggiorna la policy di sicurezza per bloccare gli attacchi al protocollo
In base al ModSecurity Core Rule Set di OWASP, applica regole che cercano i caratteri Carriage Return (CR) %0d e Linefeed (LF) %0a e altri tipi di attacchi al protocollo come l'HTTP Request Smuggling.
Da Cloud Shell:
gcloud compute security-policies rules create 9003 \
--security-policy block-with-modsec-crs \
--description "block protocol attacks" \
--expression "evaluatePreconfiguredExpr('protocolattack-stable')" \
--action deny-403
Aggiorna la policy di sicurezza per bloccare la sessione fissa
In base al ModSecurity Core Rule Set di OWASP, applica regole che…
Da Cloud Shell:
gcloud compute security-policies rules create 9004 \
--security-policy block-with-modsec-crs \
--description "block session fixation attacks" \
--expression "evaluatePreconfiguredExpr('sessionfixation-stable')" \
--action deny-403
Collega la policy di sicurezza al servizio di backend
Da Cloud Shell:
gcloud compute backend-services update juice-shop-backend \
--security-policy block-with-modsec-crs \
--global
La propagazione delle regole potrebbe richiedere un po' di tempo (ma non più di 10 minuti). Una volta che hai la certezza che sia trascorso un tempo sufficiente, testa le vulnerabilità dimostrate in precedenza per confermare l'applicazione della regola WAF di Cloud Armor nel passaggio successivo.
7. Osserva la protezione Cloud Armor con il set di regole di base OWASP ModSecurity
Confermare che la vulnerabilità LFI sia stata mitigata
Da Cloud Shell
curl -Ii http://$PUBLIC_SVC_IP/?a=../
Output
HTTP/1.1 403 Forbidden <...>
Conferma che l'attacco RCE è stato mitigato
Da Cloud Shell
curl -Ii http://$PUBLIC_SVC_IP/ftp?doc=/bin/ls
Output
HTTP/1.1 403 Forbidden <..>
Conferma il rilevamento dello scanner noto
Da Cloud Shell
curl -Ii http://$PUBLIC_SVC_IP -H "User-Agent: blackwidow"
Output
HTTP/1.1 403 Forbidden <..>
Confermare la mitigazione di un attacco al protocollo
In base a OWASP ModSecurity Core Rule Set versione 3.0.2, l'attacco al protocollo viene mitigato da
Da Cloud Shell
curl -Ii "http://$PUBLIC_SVC_IP/index.html?foo=advanced%0d%0aContent-Length:%200%0d%0a%0d%0aHTTP/1.1%20200%20OK%0d%0aContent-Type:%20text/html%0d%0aContent-Length:%2035%0d%0a%0d%0a<html>Sorry,%20System%20Down</html>"
Output
HTTP/1.1 403 Forbidden <..>
Confermare che i tentativi di session fixation siano bloccati
Da Cloud Shell
curl -Ii http://$PUBLIC_SVC_IP/?session_id=a
Output
HTTP/1.1 403 Forbidden <..>
8. Esamina le regole di sicurezza di Cloud Armor
Ora che abbiamo creato la policy di sicurezza, vediamo quali regole sono state configurate.

Le regole vengono valutate per priorità: quelle con i numeri più bassi vengono valutate per prime e, una volta attivate, l'elaborazione non continua per le regole con valori di priorità più elevati.
- Priorità 9000 - Blocca LFI (local file inclusion)
- Priorità 9001 - Blocca RCE (remote code execution/command injection)
- Priorità 9002 - Rilevati scanner di blocchi
- Priorità 9003 - Blocca gli attacchi ai protocolli come HTTP splitting e HTTP smuggling
- Priorità 9004 - Blocca gli attacchi di session fixation
- Priorità 10000 - Consenti al tuo IP di accedere al sito web
- Priorità predefinita - Nega.
*Nota che la regola "Consenti il tuo IP" è configurata con il numero di priorità più alto per consentire l'accesso al sito, ma blocca qualsiasi attacco.
9. Osserva i log dei criteri di sicurezza di Cloud Armor
Nella pagina della console Cloud Armor, puoi visualizzare i dettagli della policy di sicurezza e fare clic sulla scheda Logs e poi sul link View policy logs per accedere alla pagina Cloud Logging. Verranno filtrati automaticamente in base alle norme di sicurezza di interesse, ad esempio resource.type:(http_load_balancer) AND jsonPayload.enforcedSecurityPolicy.name:(block-with-modsec-crs). Osserva i codici di risposta di errore 403 ed espandi i dettagli del log per osservare il nome della norma di sicurezza applicata, il valore del campo corrispondente e, più in basso, gli ID espressione preconfigurati (o l'ID firma). Gli screenshot seguenti mostrano esempi dei log per le policy di sicurezza applicate configurate in questo codelab.
Log LFI

Log RCE

Log di rilevamento dello scanner

Log degli attacchi di protocollo

Session fixation log

10. Pulizia del lab
Esegui la pulizia delle risorse ora che hai completato il lab.
Esegui questi comandi per eliminare la policy di sicurezza di Cloud Armor, il bilanciatore del carico, le istanze, le regole firewall e la rete VPC.
Rimuovi la policy di sicurezza di Cloud Armor dal servizio di backend
gcloud -q compute backend-services update juice-shop-backend --security-policy "" --global
Elimina la policy di sicurezza di Cloud Armor
L'eliminazione della policy di sicurezza comporta l'eliminazione automatica delle regole associate.
gcloud -q compute security-policies delete block-with-modsec-crs
Elimina le risorse del bilanciatore del carico
Queste risorse del bilanciatore del carico da eliminare includono la regola di forwarding, i proxy HTTP di destinazione, le mappe URL, il backend, i controlli di integrità e il gruppo di istanze.
gcloud -q compute forwarding-rules delete juice-shop-rule --global
gcloud -q compute target-http-proxies delete juice-shop-proxy
gcloud -q compute url-maps delete juice-shop-loadbalancer
gcloud -q compute backend-services delete juice-shop-backend \
--global
gcloud -q compute health-checks delete tcp-port-3000
gcloud -q compute instance-groups unmanaged delete juice-shop-group --zone=us-central1-c
Elimina l'istanza
gcloud -q compute instances delete owasp-juice-shop-app --zone us-central1-c
Elimina le regole firewall, la subnet e il VPC
gcloud -q compute firewall-rules delete allow-health-check gcloud -q compute firewall-rules delete allow-js-site gcloud -q compute networks subnets delete ca-lab-subnet --region us-central1 gcloud -q compute networks delete ca-lab-vpc
11. Complimenti!
Congratulazioni per aver completato il codelab sulle regole WAF preconfigurate di Cloud Armor.
Argomenti trattati
- Come configurare un gruppo di istanze e un bilanciatore del carico Cloud globale
- Come configurare le policy di sicurezza di Cloud Armor con regole WAF preconfigurate per proteggere da LFI, RCE, scanner, attacchi di protocollo e sessione fissa
- Come verificare che Cloud Armor abbia mitigato alcuni degli attacchi OWASP Top 10 tramite i log
Passaggi successivi
- Proteggi la tua applicazione dalle vulnerabilità OWASP Top 10 con le regole WAF preconfigurate di Cloud Armor
- Perfeziona le regole in base ai livelli di sensibilità
- Utilizza il riferimento per il linguaggio delle regole personalizzate per un'applicazione della sicurezza più specifica.