0Pricing
Cloud & IT Cert Prep · Lezione

WAF, Shield e Network Firewall

Bloccare gli attacchi della top 10 OWASP con AWS WAF, proteggersi dagli attacchi DDoS con Shield Standard e Advanced e distribuire un Network Firewall stateful nella VPC

WAF, Shield e Network Firewall è una lezione Cloud & IT Cert Prep gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Cloud & IT Cert Prep, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Cloud & IT Cert Prep include 4 lezioni in totale.

Difesa in profondità della sicurezza di rete

Proteggere le applicazioni dagli attacchi basati sulla rete richiede più livelli di difesa. AWS offre tre servizi complementari: AWS WAF filtra il traffico HTTP di livello 7 in base a regole che bloccano gli attacchi a livello applicativo. AWS Shield protegge dagli attacchi DDoS (Distributed Denial of Service) ai livelli 3 e 4. AWS Network Firewall è un firewall di rete con stato per l'ispezione e il filtraggio del traffico a livello di VPC. Insieme, questi servizi affrontano vettori di minaccia diversi e vengono in genere implementati congiuntamente per una protezione completa.

# Layer coverage:
# Network Firewall: Layer 3-7 VPC traffic (stateful)
# Shield Standard: Layer 3-4 DDoS (automatic, free)
# Shield Advanced: Layer 3-7 DDoS + response team
# WAF: Layer 7 HTTP/HTTPS (application attacks)

# Typical deployment:
# Internet -> CloudFront+WAF -> ALB+WAF -> EC2/ECS
# Network Firewall in VPC for egress/lateral inspection
# Shield protects all traffic automatically

AWS WAF: Web Application Firewall

AWS WAF filtra le richieste HTTP/HTTPS in base alle regole definite. WAF si integra con CloudFront, ALB, API Gateway, AppSync e Cognito. Le regole possono eseguire il matching su: set di indirizzi IP (blocco o autorizzazione di IP specifici), geo-match (blocco delle richieste provenienti da determinati Paesi), regole basate sulla frequenza (blocco degli IP che superano una determinata frequenza di richieste, per proteggersi dai flood), gruppi di regole gestiti (regole predefinite per i 10 principali rischi OWASP, AWS Threat Intel e Bot Control) e regole personalizzate (matching su qualsiasi componente HTTP). Gli ACL WAF (Web ACL) contengono le regole e si applicano a una o più risorse.

# Create WAF Web ACL
aws wafv2 create-web-acl \
  --name 'prod-web-acl' \
  --scope CLOUDFRONT \
  --region us-east-1 \
  --default-action Allow={} \
  --rules '[{
    "Name": "AWSManagedRulesCommonRuleSet",
    "Priority": 1,
    "OverrideAction": {"None": {}},
    "Statement": {
      "ManagedRuleGroupStatement": {
        "VendorName": "AWS",
        "Name": "AWSManagedRulesCommonRuleSet"
      }
    },
    "VisibilityConfig": {
      "SampledRequestsEnabled": true,
      "CloudWatchMetricsEnabled": true,
      "MetricName": "CommonRuleSet"
    }
  }]' \
  --visibility-config SampledRequestsEnabled=true,CloudWatchMetricsEnabled=true,MetricName=web-acl-metrics

Gruppi di regole gestiti di WAF

I gruppi di regole gestiti di AWS sono set di regole WAF predefiniti e gestiti da AWS, che proteggono dalle minacce comuni senza richiedere la scrittura di singole regole. Gruppi principali: AWSManagedRulesCommonRuleSet — protegge dai 10 principali rischi OWASP, tra cui SQL injection, XSS, RFI e LFI. AWSManagedRulesKnownBadInputsRuleSet — blocca pattern di input dannosi noti. AWSManagedRulesAmazonIpReputationList — blocca gli IP con una cattiva reputazione, ad esempio botnet o sistemi compromessi. AWSManagedRulesBotControlRuleSet — rileva e blocca bot di scraping e browser automatizzati. La maggior parte delle implementazioni WAF inizia con questi gruppi gestiti, prima di aggiungere regole personalizzate.

# Add IP reputation list managed rule group
aws wafv2 update-web-acl \
  --name 'prod-web-acl' \
  --scope CLOUDFRONT \
  --id <acl-id> \
  --lock-token <lock-token> \
  --rules '[{
    "Name": "AWSManagedRulesAmazonIpReputationList",
    "Priority": 0,
    "OverrideAction": {"None": {}},
    "Statement": {
      "ManagedRuleGroupStatement": {
        "VendorName": "AWS",
        "Name": "AWSManagedRulesAmazonIpReputationList"
      }
    }
  }, ...existing_rules...]'

Regole basate sulla frequenza di WAF

Le regole basate sulla frequenza in AWS WAF bloccano automaticamente gli indirizzi IP che superano una soglia configurabile di richieste in una finestra di 5 minuti. Questa protezione contrasta: attacchi HTTP flood (che sovraccaricano i server con le richieste), attacchi brute force (con numerosi tentativi di accesso) e abusi delle API (scraping o enumerazione). È possibile aggregare per IP, per IP e percorso della richiesta (limitando la frequenza di un endpoint specifico come /login) o in base a intestazioni personalizzate. Gli IP bloccati vengono sbloccati automaticamente quando la loro frequenza scende sotto la soglia: non è necessario alcun intervento manuale.

# Create rate-based rule for login endpoint
aws wafv2 update-web-acl \
  --rules '[{
    "Name": "RateLimitLogin",
    "Priority": 2,
    "Action": {"Block": {}},
    "Statement": {
      "RateBasedStatement": {
        "Limit": 100,
        "AggregateKeyType": "IP",
        "ScopeDownStatement": {
          "ByteMatchStatement": {
            "SearchString": "/api/login",
            "FieldToMatch": {"UriPath": {}},
            "TextTransformations": [{"Priority": 0, "Type": "LOWERCASE"}],
            "PositionalConstraint": "STARTS_WITH"
          }
        }
      }
    }
  }]'

AWS Shield Standard e Advanced

AWS Shield Standard è una protezione DDoS automatica inclusa per tutti i clienti AWS senza costi aggiuntivi. Protegge dagli attacchi DDoS più comuni ai livelli 3 (rete) e 4 (trasporto), inclusi SYN flood, UDP flood e attacchi di riflessione. AWS Shield Advanced offre una protezione avanzata dagli attacchi ai livelli 3, 4 e 7 su EC2, ALB, CloudFront, Global Accelerator e Route 53. Shield Advanced include: il supporto dell'AWS DDoS Response Team (DRT), la protezione dai costi (i costi di scaling correlati agli attacchi DDoS vengono rimborsati), metriche in tempo reale e analisi forensi avanzate degli attacchi. Shield Advanced costa 3.000 USD al mese, oltre a una tariffa per il trasferimento dei dati.

# Enable Shield Advanced protection on ALB
aws shield create-protection \
  --name 'prod-alb-protection' \
  --resource-arn arn:aws:elasticloadbalancing:us-east-1:123:loadbalancer/app/prod-alb/abc

# Associate with a WAF Web ACL for layer-7 protection
aws shield associate-drt-log-bucket \
  --log-bucket my-shield-logs

# With Shield Advanced:
# - DDoS events detected and mitigated automatically
# - DRT can tune WAF rules during active attacks
# - Real-time CloudWatch dashboard
# - AWS will refund EC2/ELB/CloudFront scaling costs from DDoS

AWS Network Firewall

AWS Network Firewall è un servizio gestito di firewall di rete con stato, implementato nel VPC per ispezionare e filtrare il traffico. A differenza dei Security Group, con stato e a livello di risorsa, e degli NACL, senza stato e a livello di subnet, Network Firewall offre: ispezione approfondita dei pacchetti (DPI), tracciamento delle connessioni con stato, filtraggio dei domini (blocco in base al nome o al pattern del dominio), regole IPS (Intrusion Prevention System) che utilizzano un formato compatibile con Suricata e filtraggio del traffico in uscita (controllo delle destinazioni Internet che le istanze EC2 possono contattare). Implementi Network Firewall in una subnet firewall dedicata in ogni AZ.

# Create Network Firewall
aws network-firewall create-firewall \
  --firewall-name prod-vpc-firewall \
  --firewall-policy-arn arn:aws:network-firewall:us-east-1:123:firewall-policy/my-policy \
  --vpc-id vpc-12345 \
  --subnet-mappings '[{"SubnetId":"subnet-firewall-AZ1"},{"SubnetId":"subnet-firewall-AZ2"}]'

# Network Firewall topology:
# Internet -> IGW -> Firewall subnet (Network FW) -> App subnet
# Egress: App subnet -> Firewall subnet (Network FW) -> IGW -> Internet

Gruppi di regole di Network Firewall

Network Firewall utilizza i gruppi di regole per definire la logica di filtraggio. I gruppi di regole senza stato elaborano i pacchetti senza tenere traccia delle connessioni, in modo simile agli NACL ma con maggiore flessibilità. I gruppi di regole con stato tengono traccia dello stato delle connessioni TCP e ispezionano sessioni HTTP/TLS complete. È possibile scrivere regole in tre modi: regole a 5 tuple (IP di origine, IP di destinazione, protocollo, porta di origine e porta di destinazione), regole con elenco di domini (autorizzazione o negazione in base al FQDN) e regole IPS compatibili con Suricata (le più potenti, con matching dei pattern e ispezione del protocollo). AWS fornisce gruppi di regole gestiti per le minacce comuni.

# Create domain list rule group (egress filtering)
aws network-firewall create-rule-group \
  --rule-group-name 'allow-egress-domains' \
  --type STATEFUL \
  --capacity 100 \
  --rules-source '{
    "RulesSourceList": {
      "Targets": [
        "amazonaws.com",
        "example.com",
        "*.npmjs.com"
      ],
      "TargetTypes": ["HTTP_HOST","TLS_SNI"],
      "GeneratedRulesType": "ALLOWLIST"
    }
  }'

# Block all other egress traffic by default
# Prevents EC2 from calling malicious external domains

Confronto tra WAF, Shield e Network Firewall

I tre servizi rispondono a casi d'uso diversi e sono complementari, non alternativi: WAF — ispezione HTTP di livello 7, blocco degli attacchi applicativi, come SQLi e XSS, limitazione della frequenza e controllo dei bot. Viene implementato su CloudFront o ALB. Shield — mitigazione degli attacchi DDoS e protezione dell'infrastruttura dagli attacchi volumetrici. Shield Standard è sempre attivo; Advanced aggiunge il supporto del team. Network Firewall — controllo del traffico VPC ai livelli 3-7, ispezione con stato, filtraggio dei domini e IPS/IDS. Viene implementato all'interno delle subnet del VPC. Utilizzi tutti e tre insieme: Network Firewall controlla il traffico a livello di VPC, WAF filtra le richieste dell'applicazione e Shield mitiga gli attacchi DDoS.

# Comparison table:
# Service          Scope     Layer  Use Case
# AWS WAF          Edge/ALB  7      App attacks, rate limits, bots
# Shield Standard  All       3-4    Auto DDoS mitigation (free)
# Shield Advanced  All       3-7    Enhanced DDoS + DRT support
# Network Firewall VPC       3-7    Stateful inspection, IPS, egress

# SAA-C03 exam keywords:
# 'SQL injection protection' -> WAF
# 'DDoS protection' -> Shield
# 'Block EC2 from calling external IPs' -> Network Firewall
# 'Block requests from country X' -> WAF geo-match

Registrazione e analisi di WAF

WAF può registrare tutte le richieste campionate, una su cinque, oppure tutte le richieste in CloudWatch Logs, S3 o Kinesis Data Firehose. I log includono tutte le intestazioni della richiesta, l'indirizzo IP, il Paese, le regole che hanno eseguito il matching e l'azione intrapresa (ALLOW/BLOCK/COUNT). Utilizzi i log di WAF per: indagare sugli attacchi, verificando esattamente quali richieste sono state bloccate; ottimizzare le regole, identificando i falsi positivi, cioè le richieste legittime bloccate, e aggiungendo eccezioni; rilevare nuove minacce, poiché i pattern nelle richieste bloccate possono rivelare nuovi vettori di attacco. Attivi la modalità COUNT per le nuove regole prima di passare a BLOCK, così da verificare che non blocchino il traffico legittimo.

# Enable WAF logging to Kinesis Firehose
aws wafv2 put-logging-configuration \
  --logging-configuration '{
    "ResourceArn": "arn:aws:wafv2:us-east-1:123:global/webacl/prod-web-acl/abc",
    "LogDestinationConfigs": [
      "arn:aws:firehose:us-east-1:123:deliverystream/waf-logs"
    ],
    "LoggingFilter": {
      "DefaultBehavior": "KEEP",
      "Filters": [{
        "Behavior": "KEEP",
        "Conditions": [{"ActionCondition":{"Action":"BLOCK"}}],
        "Requirement": "MEETS_ANY"
      }]
    }
  }'

Pattern di architettura per il deployment di WAF

Per distribuire correttamente AWS WAF è necessario capire dove collegarlo all'interno dell'architettura. Per le applicazioni esposte a Internet, colleghi WAF a CloudFront, in modo che l'ispezione avvenga all'edge prima che il traffico raggiunga l'origine: in questo modo gli attacchi vengono bloccati prima di consumare la larghezza di banda dell'origine. Per le API interne o quando CloudFront non viene utilizzato, colleghi WAF all'ALB. Per le API esposte tramite API Gateway, WAF può essere collegato a livello di API Gateway. Può collegare WAF contemporaneamente a più risorse, ad esempio a una distribuzione CloudFront E all'ALB sottostante, per applicare una difesa in profondità, anche se in questo modo i costi di ispezione raddoppiano.

# WAF attachment points:
# 1. CloudFront distribution (global edge, CLOUDFRONT scope)
aws wafv2 associate-web-acl \
  --web-acl-arn arn:aws:wafv2:us-east-1:123:global/webacl/my-acl/abc \
  --resource-arn arn:aws:cloudfront::123:distribution/EXAMPLEID

# 2. ALB (regional, REGIONAL scope)
aws wafv2 associate-web-acl \
  --web-acl-arn arn:aws:wafv2:us-east-1:123:regional/webacl/my-acl/xyz \
  --resource-arn arn:aws:elasticloadbalancing:us-east-1:123:loadbalancer/app/my-alb/abc

# 3. API Gateway REST API
# 4. AppSync GraphQL API
# 5. Amazon Cognito User Pool

Firewall Manager per WAF multi-account

AWS Firewall Manager centralizza WAF, Shield Advanced, Network Firewall e le policy dei gruppi di sicurezza in tutti gli account di un'AWS Organization. Definisca le regole WAF una sola volta in Firewall Manager e queste verranno applicate automaticamente a tutti gli ALB, alle distribuzioni CloudFront e agli API Gateway presenti negli account membri, comprese le risorse create successivamente. Se un account membro distribuisce un nuovo ALB, Firewall Manager associa automaticamente la WAF Web ACL. In questo modo viene garantita un'applicazione coerente delle policy di sicurezza nell'organizzazione, senza fare affidamento sui singoli team per configurare correttamente WAF.

# Create Firewall Manager WAF policy
aws fms put-policy \
  --policy '{
    "PolicyName": "org-wide-waf-policy",
    "SecurityServicePolicyData": {
      "Type": "WAFV2",
      "ManagedServiceData": "{\"type\":\"WAFV2\",\"preProcessRuleGroups\":[{\"managedRuleGroupIdentifier\":{\"vendorName\":\"AWS\",\"managedRuleGroupName\":\"AWSManagedRulesCommonRuleSet\"},\"ruleGroupArn\":null,\"overrideAction\":{\"type\":\"NONE\"},\"excludeRules\":[],\"ruleGroupType\":\"ManagedRuleGroup\"}]}"
    },
    "ResourceType": "AWS::ElasticLoadBalancingV2::LoadBalancer",
    "IncludeMap": {"ACCOUNT": []},
    "ExcludeResourceTags": false,
    "RemediationEnabled": true
  }'

Verifica rapida

Verifichi la Sua comprensione dei concetti di AWS Solutions Architect (SAA-C03) trattati in questa lezione.

Riepilogo della lezione

In questa lezione ha imparato che: AWS WAF filtra il traffico HTTP di livello 7 per bloccare SQL injection e XSS, identificare i bot e applicare il rate limiting agli IP che generano abusi; Shield Standard fornisce automaticamente protezione DDoS di livello 3/4, mentre Shield Advanced aggiunge il supporto del team di risposta e la protezione dai costi; inoltre, Network Firewall fornisce l'ispezione stateful del traffico a livello di VPC, con filtraggio per dominio e regole IPS. Firewall Manager applica le policy a tutti gli account di un'Organization. Congratulazioni per aver completato la sezione sull'architettura di sicurezza!

Domande Frequenti

La lezione «WAF, Shield e Network Firewall» è gratuita?

Sì — il testo completo di «WAF, Shield e Network Firewall» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Cloud & IT Cert Prep, passa a CoddyKit PRO. Il corso Cloud & IT Cert Prep include 4 lezioni in totale.

Cosa imparerò in «WAF, Shield e Network Firewall»?

Bloccare gli attacchi della top 10 OWASP con AWS WAF, proteggersi dagli attacchi DDoS con Shield Standard e Advanced e distribuire un Network Firewall stateful nella VPC Eserciti Cloud & IT Cert Prep con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Cloud & IT Cert Prep?

Non è richiesta alcuna esperienza precedente. Cloud & IT Cert Prep su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.

Quanto tempo richiede la lezione «WAF, Shield e Network Firewall»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Cloud & IT Cert Prep?

Sì. Ogni lezione Cloud & IT Cert Prep include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. KMS, ACM e pattern di crittografia
  2. GuardDuty, Inspector e Macie
  3. Secrets Manager e Parameter Store
  4. WAF, Shield e Network Firewall
← Torna a Cloud & IT Cert Prep