Codelab sulle regole WAF preconfigurate di Cloud Armor

1. Introduzione

Ciao! Ti diamo il benvenuto nel codelab delle regole WAF preconfigurate di Cloud Armor.

Google Cloud Armor è la soluzione di sicurezza di rete perimetrale di Google che offre protezione dagli attacchi DDoS, applicazione delle regole WAF e gestibilità adattiva su larga scala.

Cloud Armor ha esteso i set di regole WAF preconfigurati per mitigare le vulnerabilità di sicurezza delle applicazioni web OWASP Top 10. Le serie di regole si basano sul core rule set OWASP Modsecurity versione 3.0.2 per proteggere da alcuni dei rischi più comuni per la sicurezza delle applicazioni web, tra cui l'inclusione locale dei file (lfi), l'inclusione remota dei file (rfi), l'esecuzione remota di codice (rce) e molti altri.

In questo codelab, imparerai come mitigare alcune delle vulnerabilità comuni utilizzando le regole WAF di Google Cloud Armor.

Cosa imparerai a fare

  • Configurare un gruppo di istanze e un bilanciatore del carico globale per supportare un servizio
  • Come configurare i criteri di sicurezza di Cloud Armor con regole WAF preconfigurate per la protezione da lfi, rce, scanner, attacchi di protocollo e fissazione di sessione
  • Come verificare che Cloud Armor abbia mitigato un attacco mediante l'osservazione dei 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 Google Cloud con Networking in Google Cloud
  • (Facoltativo) Completa il lab Cloudnet20 Cloud Armor per imparare a proteggere i carichi di lavoro con regole SQL injection e basate su IP e dati geografici.

Topologia codelab e caso d'uso

119e13312f3cec25.jpeg

Figura 1 - Topologia codelab delle regole WAF Cloud Armor

L'applicazione OWASP Juice Shop è utile per la formazione e la sensibilizzazione in materia di sicurezza, in quanto contiene istanze di ciascuna delle 10 principali vulnerabilità di sicurezza di OWASP, fin dalla progettazione. Un aggressore può sfruttarla a scopo di test. In questo codelab, lo utilizzeremo per dimostrare alcuni attacchi alle applicazioni seguiti per proteggere l'applicazione con le regole WAF di Cloud Armor. L'applicazione si trova a fronte di un bilanciatore del carico Google Cloud, a cui verranno applicati i criteri e le regole di sicurezza di Cloud Armor. Verrà pubblicata sulla rete internet pubblica, quindi sarà raggiungibile praticamente da qualsiasi luogo e protetta tramite Cloud Armor e le regole firewall VPC.

2. Configurazione e requisiti

Configurazione dell'ambiente da seguire in modo autonomo

  1. 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.

96a9c957bc475304.png

b9a10ebdf5b5a448.png

a1e3c01a38fa61c2.png

Ricorda l'ID progetto, un nome univoco in tutti i progetti Google Cloud (il nome precedente è già stato utilizzato e non funzionerà correttamente). Verrà indicato più avanti in questo codelab come PROJECT_ID.

  1. Successivamente, dovrai abilitare la fatturazione in Cloud Console per utilizzare le risorse Google Cloud.

Eseguire questo codelab non dovrebbe costare molto. Assicurati di seguire le istruzioni nella sezione "Pulizia" in cui viene spiegato come arrestare le risorse in modo da non incorrere in fatturazione oltre questo tutorial. I nuovi utenti di Google Cloud sono idonei al programma prova senza costi di 300$.

Avvia Cloud Shell

Anche se Google Cloud può essere utilizzato da remoto dal tuo laptop, in questo codelab utilizzerai Google Cloud Shell, un ambiente a riga di comando in esecuzione nel cloud.

Dalla console di Google Cloud, fai clic sull'icona di Cloud Shell nella barra degli strumenti in alto a destra:

bce75f34b2c53987.png

Dovrebbe richiedere solo qualche istante per eseguire il provisioning e connettersi all'ambiente. Al termine, dovresti vedere una schermata simile al seguente:

f6ef2b5f13479f3a.png

Questa macchina virtuale viene caricata con tutti gli strumenti di sviluppo necessari. Offre una home directory permanente da 5 GB e viene eseguita su Google Cloud, migliorando notevolmente le prestazioni di rete e l'autenticazione. Tutto il lavoro in questo lab può essere svolto semplicemente con un browser.

Prima di iniziare

All'interno di 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

Abilita 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, 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 FW per consentire i controlli di integrità da parte degli intervalli dei controlli 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. Configura 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 Compute, utilizziamo un'immagine container per assicurarci che il server disponga dei servizi appropriati. Il deployment di questo server verrà eseguito in us-central1-c e avrà un tag di rete che consentirà i controlli di integrità.

Crea l'applicazione OWASP Juice Shop

Utilizza la nota applicazione open source OWASP Juice Shop come applicazione vulnerabile. Puoi utilizzare questa applicazione anche per completare 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 del bilanciatore del carico Cloud: gruppo di istanze

Creare il gruppo di istanze non gestite.

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 di 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.

Configurazione del componente del bilanciatore del carico Cloud: controllo di integrità

Crea il controllo di integrità per la porta di 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 del bilanciatore del carico Cloud: servizio di backend

Creare 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 del 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 del bilanciatore del carico Cloud: proxy di destinazione

Crea il proxy di destinazione per far fronte alla 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 del 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 recuperare una risposta HTTP/1.1 404 - Non trovato.

Da Cloud Shell

curl -Ii http://$PUBLIC_SVC_IP

Output

HTTP/1.1 200 OK
<...>

Per visualizzare Juice Shop, puoi anche accedere al browser.

428c18eee6708c28.png

Siamo ora pronti a esplorare le vulnerabilità di Juice Shop e a come proteggerle con i set di regole WAF di Cloud Armor.

5. Dimostrare le vulnerabilità note

Per risparmiare tempo, dimostreremo gli stati precedenti e successivi alla propagazione delle regole WAF di Cloud Armor in passaggi ridotti.

Osservazione di una vulnerabilità LFI: path traversal

L'inclusione locale dei file è 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 mostrato semplicemente che è possibile un attraversamento del percorso. Nel browser o con curl, osserva un percorso esistente fornito dall'applicazione.

Da Cloud Shell

curl -Ii http://$PUBLIC_SVC_IP/ftp

Output

HTTP/1.1 200 OK
<...>

Nota anche che l'attraversamento del percorso funziona:

Da Cloud Shell

curl -Ii http://$PUBLIC_SVC_IP/ftp/../

Output

HTTP/1.1 200 OK
<...>

Osserva una vulnerabilità RCE

L’esecuzione di codice remoto include vari scenari di command injection su UNIX e Windows, consentendo agli utenti malintenzionati di eseguire comandi del sistema operativo solitamente limitati a utenti con privilegi. Di seguito è riportata una semplice esecuzione di un comando ls passato.

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

Sia le applicazioni commerciali che quelle open source analizzano le applicazioni per vari scopi, inclusa la scansione delle vulnerabilità. Questi strumenti usano i noti user agent e altre intestazioni. Osserva il funzionamento di curl con una nota intestazione User-Agent:

Da Cloud Shell

curl -Ii http://$PUBLIC_SVC_IP -H "User-Agent: blackwidow"

Output

HTTP/1.1 200 OK
<...>

Osservare un attacco al protocollo: suddivisione HTTP

Alcune applicazioni web utilizzano l'input dell'utente per generare le intestazioni nelle risposte. Se l'applicazione non filtra correttamente l'input, un aggressore può potenzialmente avvelenare il parametro di input con la sequenza %0d%0a (la sequenza CRLF utilizzata per separare linee diverse). La risposta potrebbe quindi essere interpretata come due risposte da qualsiasi cosa accade per analizzarla, come un server proxy intermediario, che potenzialmente pubblica contenuti falsi nelle richieste successive. Inserisci la sequenza %0d%0a nel parametro di input, che può portare alla pubblicazione di una pagina fuorviante.

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 fissazione della sessione

Da Cloud Shell

curl -Ii http://$PUBLIC_SVC_IP -H session_id=X

Output

HTTP/1.1 200 OK
<...>

6. Definizione delle 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 il criterio di sicurezza di Cloud Armor

Da Cloud Shell:

gcloud compute security-policies create block-with-modsec-crs \
    --description "Block with OWASP ModSecurity CRS"

Aggiornare la regola predefinita del criterio di sicurezza

Tieni presente che la priorità della regola predefinita ha un valore numerico pari a 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 un'azione di negazione, 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"

Aggiornare il criterio di sicurezza per bloccare gli attacchi LFI

Applica il set di regole di base OWASP ModSecurity 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 il criterio di sicurezza per bloccare Remote Code Execution (rce)

In base al set di regole di base OWASP ModSecurity, applicare regole che cercano rce, incluso l'inserimento di comandi. I tipici comandi del sistema operativo 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

Aggiornare il criterio di sicurezza per bloccare gli scanner di sicurezza

Applicare il set di regole di base OWASP ModSecurity 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

Aggiornare il criterio di sicurezza per bloccare gli attacchi di protocollo

In base al set di regole di base OWASP ModSecurity, applicare regole che cercano i caratteri Carriage Return (CR) %0d e Linefeed (LF) %0a e altri tipi di attacchi di protocollo come il contrabbando di richieste HTTP.

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

Aggiornare il criterio di sicurezza per bloccare la fissazione della sessione

In base al set di regole di base OWASP ModSecurity, 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 il criterio 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 può richiedere un po' di tempo (ma non più di 10 minuti). Dopo aver verificato che sia trascorso tempo sufficiente, testa le vulnerabilità dimostrate in precedenza per confermare l'applicazione delle regole WAF di Cloud Armor nel passaggio successivo.

7. Osserva la protezione di Cloud Armor con il set di regole di base ModSecurity OWASP

Conferma che la vulnerabilità LFI è mitigata

Da Cloud Shell

curl -Ii http://$PUBLIC_SVC_IP/?a=../

Output

HTTP/1.1 403 Forbidden
<...>

Conferma che l'attacco RCE è mitigato

Da Cloud Shell

curl -Ii http://$PUBLIC_SVC_IP/ftp?doc=/bin/ls

Output

HTTP/1.1 403 Forbidden
<..>

Verificare il rilevamento di dispositivi conosciuti

Da Cloud Shell

curl -Ii http://$PUBLIC_SVC_IP -H "User-Agent: blackwidow"

Output

HTTP/1.1 403 Forbidden
<..>

Confermare che un attacco al protocollo è mitigato

Secondo il set di regole OWASP ModSecurity Core Rule Set ver.3.0.2, l'attacco al protocollo è mitigato dalla

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
<..>

Verificare che i tentativi di correzione della sessione siano bloccati

Da Cloud Shell

curl -Ii http://$PUBLIC_SVC_IP/?session_id=a

Output

HTTP/1.1 403 Forbidden
<..>

8. Rivedi le regole di sicurezza di Cloud Armor

Ora che abbiamo creato il criterio di sicurezza, vediamo esattamente quali regole sono state configurate.

d00e4102fc89e44f.png

Le regole vengono valutate in base alla priorità: vengono valutati per primi i numeri più bassi e, una volta attivate, l'elaborazione non continua per le regole con valori di priorità più elevati.

  • Priorità 9000 - Blocca LFI (inclusione di file locale)
  • Priorità 9001 - RCE blocco (esecuzione di codice remoto/iniezione di comandi)
  • Priorità 9002 - Scanner a blocchi rilevati
  • Priorità 9003 - Attacchi al protocollo a blocchi come la suddivisione HTTP e il contrabbando HTTP
  • Priorità 9004 - Attacchi di fissazione della sessione con blocco
  • Priorità 10000 - Consenti al tuo IP di accedere al sito web
  • Priorità predefinita - Nega.

*Nota il pulsante "Consenti IP" è configurata con il numero di priorità più alta per consentire l'accesso al sito, ma blocca qualsiasi attacco.

9. Osserva i log dei criteri di sicurezza di Cloud Armor

Dalla pagina della console di Cloud Armor, puoi visualizzare i dettagli del criterio di sicurezza e fare clic sulla scheda Logs seguito dal link View policy logs per accedere alla pagina di Cloud Logging. Filtra automaticamente in base al criterio 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 del criterio di sicurezza applicato, il valore del campo corrispondente e gli ID di espressione preconfigurati (o l'ID firma). Gli screenshot seguenti mostrano esempi di log per i criteri di sicurezza applicati configurati in questo codelab.

Log LFI

983a6cab0cff940d.png

Log RCE

988a3a571f9d9d45.png

Log di rilevamento dello scanner

7ed661863ba27555.png

Log degli attacchi di protocollo

17ee3cbe0bd98939.png

Log della correzione della sessione

80d1ddfd0fe982e1.png

10. Pulizia del lab

Esegui la pulizia delle risorse ora che hai completato il lab.

Esegui questi comandi per eliminare il criterio di sicurezza di Cloud Armor, il bilanciatore del carico, le istanze, le regole del firewall e la rete VPC.

Rimuovi il criterio di sicurezza di Cloud Armor dal servizio di backend

gcloud -q compute backend-services update juice-shop-backend --security-policy "" --global

Elimina il criterio di sicurezza di Cloud Armor

Se elimini il criterio di sicurezza, verranno eliminate automaticamente le 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!

Complimenti per aver completato il codelab sulle regole WAF preconfigurate di Cloud Armor.

Argomenti trattati

  • Configurare un gruppo di istanze e un bilanciatore del carico Cloud globale
  • Come configurare i criteri di sicurezza di Cloud Armor con regole WAF preconfigurate per la protezione da lfi, rce, scanner, attacchi di protocollo e fissazione di sessione
  • Come verificare che Cloud Armor abbia mitigato alcuni dei 10 principali attacchi OWASP tramite i log

Passaggi successivi