

# Protezione delle risorse di calcolo
<a name="protecting-compute"></a>

Le risorse di calcolo includono istanze EC2, container, funzioni AWS Lambda, servizi di database, dispositivi IoT e altro ancora. Ciascuno di questi tipi di risorse di calcolo richiede approcci di sicurezza diversi. Tuttavia, condividono strategie comuni da prendere in considerazione: difesa in profondità, gestione delle vulnerabilità, riduzione della superficie di attacco, automazione di configurazione e operatività ed esecuzione di attività a distanza. In questa sezione troverai linee guida generali per la protezione di risorse di calcolo per servizi chiave. Per ciascun servizio AWS utilizzato, è importante verificare i suggerimenti di sicurezza specifici nella documentazione del servizio.

**Topics**
+ [

# SEC06-BP01 Gestione delle vulnerabilità
](sec_protect_compute_vulnerability_management.md)
+ [

# SEC06-BP02 Fornitura di dati di calcolo a partire da immagini rinforzate
](sec_protect_compute_hardened_images.md)
+ [

# SEC06-BP03 Riduzione della gestione manuale e dell'accesso interattivo
](sec_protect_compute_reduce_manual_management.md)
+ [

# SEC06-BP04 Convalida l'integrità del software
](sec_protect_compute_validate_software_integrity.md)
+ [

# SEC06-BP05 Automatizzazione della protezione delle risorse di calcolo
](sec_protect_compute_auto_protection.md)

# SEC06-BP01 Gestione delle vulnerabilità
<a name="sec_protect_compute_vulnerability_management"></a>

Scansiona e correggi di frequente le vulnerabilità del codice, delle dipendenze e dell'infrastruttura per proteggerti da nuove minacce.

 **Risultato desiderato:** disponi di una soluzione che analizza continuamente il carico di lavoro alla ricerca di vulnerabilità del software, potenziali difetti ed esposizione involontaria della rete. Hai definito processi e procedure per identificare, assegnare priorità e correggere queste vulnerabilità in base a criteri di valutazione del rischio. Inoltre, hai implementato la gestione automatizzata delle patch per le istanze di calcolo. Il programma di gestione delle vulnerabilità è integrato nel ciclo di vita di sviluppo del software, con soluzioni per la scansione del codice sorgente durante la pipeline CI/CD. 

 **Anti-pattern comuni:** 
+  Assenza di un programma di gestione delle vulnerabilità. 
+  Esecuzione di patch di sistema senza considerare gravità o prevenzione del rischio. 
+  Utilizzo di software che ha superato la data di fine vita (EOL) prevista dal fornitore. 
+  Implementazione del codice in produzione prima di aver analizzato i problemi di sicurezza. 

 **Livello di rischio associato se questa best practice non fosse adottata:** elevato 

## Guida all'implementazione
<a name="implementation-guidance"></a>

 La gestione delle vulnerabilità è un aspetto fondamentale per mantenere un ambiente cloud sicuro e affidabile. Implica un processo completo che include scansioni di sicurezza, identificazione e definizione delle priorità dei problemi e operazioni di applicazione delle patch per risolvere le vulnerabilità identificate. L'automazione svolge un ruolo fondamentale in questo processo perché facilita la scansione continua dei carichi di lavoro alla ricerca di potenziali problemi ed esposizione involontaria della rete, nonché le operazioni di correzione. 

 Il [modello di responsabilità condivisa di AWS](https://docs.aws.amazon.com/wellarchitected/latest/security-pillar/shared-responsibility.html) è un concetto fondamentale alla base della gestione delle vulnerabilità. Secondo questo modello, AWS è responsabile della protezione dell'infrastruttura sottostante, compresi hardware, software, reti e strutture in cui vengono eseguiti i servizi AWS. D'altra parte, l'utente è responsabile della protezione dei dati, delle configurazioni di sicurezza e delle attività di gestione associate a servizi come le istanze Amazon EC2 e gli oggetti Amazon S3. 

 AWS offre una gamma di servizi utili per i programmi di gestione delle vulnerabilità. [Amazon Inspector](https://aws.amazon.com/inspector/) analizza continuamente i carichi di lavoro AWS alla ricerca di vulnerabilità del software e accessi involontari alla rete, mentre [Gestione patch di AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/patch-manager.html) aiuta a gestire l'applicazione delle patch sulle istanze Amazon EC2. Questi servizi possono essere integrati con [AWS Security Hub CSPM](https://aws.amazon.com/security-hub/), un servizio di gestione del livello di sicurezza nel cloud che automatizza i controlli di sicurezza di AWS, centralizza gli avvisi di sicurezza e fornisce una visione completa del livello di sicurezza di un'organizzazione. Inoltre, [Sicurezza di Amazon CodeGuru](https://aws.amazon.com/codeguru/) utilizza l'analisi statica del codice per identificare potenziali problemi nelle applicazioni Java e Python durante la fase di sviluppo. 

 Incorporando pratiche di gestione delle vulnerabilità nel ciclo di vita dello sviluppo software, puoi affrontare in modo proattivo le vulnerabilità prima che vengano introdotte negli ambienti di produzione, riducendo così il rischio di eventi di sicurezza e riducendo al minimo il potenziale impatto delle vulnerabilità. 

### Passaggi dell'implementazione
<a name="implementation-steps"></a>

1.  **Comprendi il modello di responsabilità condivisa:** consulta il modello di responsabilità condivisa di AWS per comprendere le tue responsabilità in materia di protezione dei carichi di lavoro e dei dati nel cloud. AWS è responsabile della protezione dell'infrastruttura cloud sottostante, mentre tu sei responsabile della protezione delle applicazioni, dei dati e dei servizi che utilizzi. 

1.  **Implementa la scansione delle vulnerabilità:** configura un servizio di scansione delle vulnerabilità, come Amazon Inspector, per scansionare automaticamente le istanze di calcolo (ad esempio, macchine virtuali, container o funzioni serverless) alla ricerca di vulnerabilità software, potenziali difetti ed esposizione involontaria della rete. 

1.  **Stabilisci processi di gestione delle vulnerabilità:** definisci processi e procedure per identificare, assegnare priorità e correggere le vulnerabilità. Ciò può includere la pianificazione di scansioni periodiche delle vulnerabilità, la definizione di criteri di valutazione dei rischi e l'individuazione di tempistiche di correzione in base alla gravità della vulnerabilità. 

1.  **Configura la gestione delle patch:** utilizza un servizio di gestione delle patch per automatizzare il processo di applicazione delle patch alle istanze di calcolo, sia per i sistemi operativi che per le applicazioni. Puoi configurare il servizio affinché scansioni le istanze alla ricerca di patch mancanti e installi automaticamente le patch in base a una pianificazione. Prendi in considerazione Gestione patch di AWS Systems Manager per fornire questa funzionalità. 

1.  **Configura la protezione contro i malware:** implementa meccanismi per rilevare eventuali software dannosi nel tuo ambiente. Ad esempio, puoi utilizzare strumenti come [Amazon GuardDuty](https://aws.amazon.com/guardduty/) per analizzare e rilevare eventuali malware, nonché per notificarne la presenza nei volumi EC2 ed EBS. GuardDuty può anche scansionare gli oggetti appena caricati su Amazon S3 alla ricerca di potenziali malware o virus e intervenire per isolarli prima che vengano inseriti nei processi a valle. 

1.  **Integra la scansione delle vulnerabilità nelle pipeline CI/CD:** se utilizzi una pipeline CI/CD per l'implementazione delle applicazioni, integra gli strumenti di scansione delle vulnerabilità nella pipeline. Strumenti come Sicurezza di Amazon CodeGuru e le opzioni open source consentono di scansionare il codice sorgente, le dipendenze e gli artefatti alla ricerca di potenziali problemi di sicurezza. 

1.  **Configura un servizio di monitoraggio della sicurezza:** configura un servizio di monitoraggio della sicurezza, come AWS Security Hub CSPM, per ottenere una visione completa del tuo livello di sicurezza su più servizi cloud. Il servizio deve raccogliere gli esiti in materia di sicurezza da varie origini e presentarli in un formato standardizzato per facilitare la definizione delle priorità e la correzione. 

1.  **Implementa test di penetrazione delle applicazioni web**: se la tua applicazione è un'applicazione web e la tua organizzazione dispone delle competenze necessarie o può usufruire di assistenza esterna, valuta la possibilità di implementare dei test di penetrazione delle applicazioni web per identificare potenziali vulnerabilità nella tua applicazione. 

1.  **Automatizza con l'infrastructure as code**: utilizza strumenti di infrastructure as code (IaC), come [AWS CloudFormation](https://aws.amazon.com/cloudformation/), per automatizzare l'implementazione e la configurazione delle risorse, inclusi i servizi di sicurezza menzionati in precedenza. Questa pratica consente di creare un'architettura delle risorse più coerente e standardizzata per più account e ambienti. 

1.  **Monitora e migliora continuamente**: monitora continuamente l'efficacia del programma di gestione delle vulnerabilità e apporta i miglioramenti necessari. Esamina gli esiti di sicurezza, valuta l'efficacia delle operazioni di correzione e adatta di conseguenza i tuoi processi e strumenti. 

## Risorse
<a name="resources"></a>

 **Documenti correlati:** 
+  [AWS Systems Manager](https://aws.amazon.com/systems-manager/) 
+  [Panoramica sulla sicurezza di AWS Lambda](https://pages.awscloud.com/rs/112-TZM-766/images/Overview-AWS-Lambda-Security.pdf) 
+ [ Amazon CodeGuru ](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/welcome.html)
+ [ Improved, Automated Vulnerability Management for Cloud Workloads with a New Amazon Inspector ](https://aws.amazon.com/blogs/aws/improved-automated-vulnerability-management-for-cloud-workloads-with-a-new-amazon-inspector/)
+ [ Automate vulnerability management and remediation in AWS using Amazon Inspector and AWS Systems Manager – Part 1 ](https://aws.amazon.com/blogs/mt/automate-vulnerability-management-and-remediation-in-aws-using-amazon-inspector-and-aws-systems-manager-part-1/)

 **Video correlati:** 
+  [Securing Serverless and Container Services](https://youtu.be/kmSdyN9qiXY) 
+  [Security best practices for the Amazon EC2 instance metadata service](https://youtu.be/2B5bhZzayjI) 

# SEC06-BP02 Fornitura di dati di calcolo a partire da immagini rinforzate
<a name="sec_protect_compute_hardened_images"></a>

 Riduci le opportunità di accesso involontario agli ambienti di runtime implementandoli da immagini rafforzate. Acquisisci dipendenze di runtime, come immagini di container e librerie di applicazioni, solo da registri affidabili e verifica le loro firme. Crea i tuoi registri privati per archiviare immagini e librerie attendibili da utilizzare nei tuoi processi di compilazione e implementazione. 

 **Risultato desiderato:** l'allocazione delle risorse di calcolo avviene a partire da immagini di base rinforzate. Le dipendenze esterne, ad esempio immagini dei container e librerie di applicazioni, vengono recuperate solo da registri attendibili e ne vengono verificate le firme. Queste sono archiviate in registri privati a cui i processi di compilazione e implementazione possono fare riferimento. Scansiona e aggiorna con regolarità immagini e dipendenze per proteggerti da eventuali vulnerabilità scoperte di recente. 

 **Anti-pattern comuni:** 
+  Acquisizione di immagini e librerie da registri attendibili, ma senza verificarne la firma o eseguire scansioni delle vulnerabilità prima di metterle in uso. 
+  Rafforzamento delle immagini, ma senza test regolari per individuare nuove vulnerabilità o aggiornarle alla versione più recente. 
+  Installazione o non rimozione di pacchetti software non necessari durante il ciclo di vita previsto dell'immagine. 
+  Affidamento esclusivo alle patch per mantenere aggiornate le risorse di calcolo di produzione. La sola applicazione di patch può comunque far sì che nel tempo le risorse di calcolo si allontanino dallo standard rafforzato. L'applicazione delle patch può inoltre non essere in grado di rimuovere le minacce informatiche che un attore pericoloso potrebbero aver installato durante un evento di sicurezza. 

 **Vantaggi dell'adozione di questa best practice:** il rafforzamento delle immagini favorisce la riduzione del numero di percorsi disponibili nell'ambiente di runtime, che possono consentire l'accesso non intenzionale a utenti o servizi non autorizzati. Inoltre, può ridurre l'ambito dell'impatto in caso di accesso involontario. 

 **Livello di rischio associato se questa best practice non fosse adottata:** elevato 

## Guida all'implementazione
<a name="implementation-guidance"></a>

 Per rafforzare i tuoi sistemi, occorre partire dalle versioni più recenti dei sistemi operativi, delle immagini dei container e delle librerie delle applicazioni. Applica le patch ai problemi noti. Riduci al minimo il sistema rimuovendo applicazioni, servizi, driver dei dispositivi, utenti predefiniti e altre credenziali non necessari. Adotta qualsiasi altra azione necessaria, come la disabilitazione delle porte, per creare un ambiente che disponga solo delle risorse e delle capacità necessarie per i carichi di lavoro. Da questa linea di base è possibile installare software, agenti o altri processi necessari per scopi quali il monitoraggio del carico di lavoro o la gestione delle vulnerabilità. 

 [È possibile ridurre l'onere del rafforzamento dei sistemi utilizzando le linee guida fornite da fonti attendibili, come le guide tecniche per l'implementazione della sicurezza del [Center for Internet Security](https://www.cisecurity.org/) (CIS) e della Defense Information Systems Agency (DISA). STIGs](https://public.cyber.mil/stigs/) Ti consigliamo di iniziare con una [Amazon Machine Image](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html) (AMI) pubblicata da AWS o da un APN partner e utilizzare AWS [EC2Image Builder](https://aws.amazon.com/image-builder/) per automatizzare la configurazione in base a una combinazione appropriata di CIS controlli e. STIG 

 Sebbene siano disponibili immagini rinforzate e ricette di EC2 Image Builder che applicano CIS i consigli DISA STIG o, è possibile che la loro configurazione impedisca il corretto funzionamento del software. In questa situazione, è possibile partire da un'immagine di base non protetta, installare il software e quindi applicare i CIS controlli in modo incrementale per testarne l'impatto. Per qualsiasi CIS controllo che impedisca l'esecuzione del software, verifica se invece riesci a implementare i consigli più dettagliati sulla protezione avanzata in un. DISA Tieni traccia dei diversi CIS controlli e DISA STIG configurazioni che riesci ad applicare con successo. Utilizzateli per definire di conseguenza le vostre ricette di rafforzamento delle EC2 immagini in Image Builder. 

 [Per i carichi di lavoro containerizzati, le immagini rinforzate di Docker sono disponibili nell'archivio pubblico [Amazon Elastic Container Registry](https://aws.amazon.com/ecr/) (). ECR](https://gallery.ecr.aws/docker) È possibile utilizzare EC2 Image Builder per rafforzare le immagini dei contenitori. AMIs 

 Analogamente ai sistemi operativi e alle immagini dei contenitori, è possibile ottenere pacchetti di codice (o *librerie*) da archivi pubblici, tramite strumenti come pip, npm, Maven e. NuGet Ti consigliamo di gestire i pacchetti di codice integrando repository privati, ad esempio all'interno di [AWS CodeArtifact](https://aws.amazon.com/codeartifact/), con repository pubblici affidabili. Questa integrazione può gestire il recupero, l'archiviazione e la conservazione dei pacchetti per te. up-to-date I processi di creazione delle applicazioni possono quindi ottenere e testare la versione più recente di questi pacchetti insieme all'applicazione, utilizzando tecniche come Software Composition Analysis (SCA), Static Application Security Testing (SAST) e Dynamic Application Security Testing (DAST). 

 [Per i carichi di lavoro serverless che utilizzano AWS Lambda, semplifica la gestione delle dipendenze dei pacchetti utilizzando i livelli Lambda.](https://docs.aws.amazon.com/lambda/latest/dg/chapter-layers.html) Usa i livelli Lambda per configurare un set di dipendenze standard condivise tra diverse funzioni in un archivio autonomo. È possibile creare e gestire i livelli tramite il relativo processo di compilazione, in modo da garantire la permanenza delle funzioni in modo centralizzato. up-to-date 

## Passaggi dell'implementazione
<a name="implementation-steps"></a>
+  Rafforzamento del sistema operativo. Utilizzate immagini di base provenienti da fonti attendibili come base per costruire il vostro hardenedAMIs. Usa [EC2Image Builder](https://aws.amazon.com/image-builder/) per personalizzare il software installato sulle tue immagini. 
+  Rafforzamento delle risorse containerizzate. Configura le risorse containerizzate in modo che rispettino le best practice in materia di sicurezza. Quando utilizzi i contenitori, implementa [la scansione delle ECR immagini](https://docs.aws.amazon.com/AmazonECR/latest/userguide/image-scanning.html) nella tua pipeline di creazione e, su base regolare, nel tuo archivio di immagini da cercare CVEs nei contenitori.  
+  Quando si utilizza l'implementazione serverless con AWS Lambda, utilizza i livelli [Lambda](https://docs.aws.amazon.com/lambda/latest/dg/chapter-layers.html) per separare il codice delle funzioni dell'applicazione e le librerie dipendenti condivise. Configura la [firma del codice](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) per Lambda così da garantire l'esecuzione del solo codice attendibile nelle funzioni Lambda. 

## Risorse
<a name="resources"></a>

 **Best practice correlate:** 
+  [OPS05-BP05 Esegui la gestione delle patch](https://docs.aws.amazon.com/wellarchitected/latest/framework/ops_dev_integ_patch_mgmt.html) 

 **Video correlati:** 
+  [Approfondimento sulla sicurezza AWS Lambda](https://www.youtube.com/watch?v=FTwsMYXWGB0) 

 **Esempi correlati:** 
+  [STIGCompatibile con la compilazione rapida con Image AMI Builder EC2](https://aws.amazon.com/blogs/security/quickly-build-stig-compliant-amazon-machine-images-using-amazon-ec2-image-builder/) 
+  [Building better container images](https://aws.amazon.com/blogs/containers/building-better-container-images/) 
+  [Using Lambda layers to simplify your development process](https://aws.amazon.com/blogs/compute/using-lambda-layers-to-simplify-your-development-process/) 
+  [Sviluppa e distribuisci AWS Lambda livelli utilizzando Serverless Framework](https://github.com/aws-samples/aws-serverless-lambda-layers) 
+  [Creazione di una pipeline end-to-end AWS DevSecOps CI/CD con strumenti e software open source SCA SAST DAST](https://aws.amazon.com/blogs/devops/building-end-to-end-aws-devsecops-ci-cd-pipeline-with-open-source-sca-sast-and-dast-tools/) 

# SEC06-BP03 Riduzione della gestione manuale e dell'accesso interattivo
<a name="sec_protect_compute_reduce_manual_management"></a>

 Utilizza l'automazione per eseguire attività di implementazione, configurazione, manutenzione e investigazione, laddove possibile. Quando l'automazione non è disponibile, considera l'accesso manuale alle risorse di calcolo in caso di procedure di emergenza o in ambienti sicuri (sandbox). 

 **Risultato desiderato:** acquisizione mediante script programmatici e documenti di automazione (runbook) delle azioni autorizzate sulle tue risorse di calcolo. Questi runbook vengono avviati in automatico, attraverso i sistemi di rilevamento delle modifiche, o manualmente, quando è necessario il giudizio umano. L'accesso diretto alle risorse di calcolo è disponibile solo in situazioni di emergenza, quando l'automazione non è disponibile. Tutte le attività manuali vengono inserite in un log e in un processo di revisione per migliorare in modo continuo le capacità di automazione. 

 **Anti-pattern comuni:** 
+  Accesso interattivo alle istanze Amazon EC2 con protocolli come SSH o RDP. 
+  Mantenimento degli accessi dei singoli utenti, come `/etc/passwd` o gli utenti locali di Windows. 
+  Condivisione di una password o chiave privata per accedere a un'istanza tra più utenti. 
+  Installazione del software e creazione o aggiornamento manuali dei file di configurazione. 
+  Aggiornamento o applicazione di patch manuale al software. 
+  Accesso a un'istanza per risolvere i problemi. 

 **Vantaggi dell'adozione di questa best practice:** l'esecuzione di azioni automatizzate favorisce la riduzione del rischio operativo legato a modifiche non intenzionali ed errori di configurazione. Abolire l'uso di Secure Shell (SSH) e Remote Desktop Protocol (RDP) per l'accesso interattivo significa ridurre la portata dell'accesso alle risorse di calcolo. In tal modo si elimina un percorso comune per le azioni non autorizzate. Acquisire le attività di gestione delle risorse di calcolo in documenti di automazione e script di programmazione significa definire e sottoporre ad audit l'intero ambito delle attività autorizzate a un livello di dettaglio granulare. 

 **Livello di rischio associato se questa best practice non fosse adottata:** medio 

## Guida all’implementazione
<a name="implementation-guidance"></a>

 L'accesso a un'istanza è un approccio classico all'amministrazione del sistema. Dopo aver installato il sistema operativo del server, gli utenti in genere accedono manualmente per configurare il sistema e installare il software desiderato. Nel corso del ciclo di vita del server, gli utenti possono accedere per eseguire aggiornamenti del software, applicare patch, modificare le configurazioni e risolvere i problemi. 

 L'accesso manuale comporta tuttavia una serie di rischi. Richiede un server che ascolti le richieste, come un servizio SSH o RDP, in grado di fornire un potenziale percorso di accesso non autorizzato. Inoltre, aumenta il rischio di errore umano associato all'esecuzione di operazioni manuali. Le conseguenze possono essere incidenti sul carico di lavoro, danneggiamento o distruzione dei dati o altri problemi di sicurezza. L'accesso umano richiede inoltre protezioni contro la condivisione delle credenziali, creando ulteriori costi di gestione.  

 Per mitigare questi rischi, è possibile implementare una soluzione di accesso remoto basata su agenti, come [AWS Systems Manager](https://aws.amazon.com/systems-manager/). AWS Systems Manager L'agente (SSM Agent) avvia un canale crittografato, pertanto non si avvale dell'ascolto di richieste esterne. Per [stabilire questo canale su un endpoint VPC](https://docs.aws.amazon.com/systems-manager/latest/userguide/setup-create-vpc.html), valuta il ricorso alla configurazione di SSM Agent. 

 Systems Manager offre un controllo granulare delle modalità di interazione con le istanze gestite. Sei tu a definire le automazioni da eseguire, chi può eseguirle e quando possono essere eseguite. Systems Manager è in grado di applicare patch, installare software e apportare modifiche alla configurazione senza accesso interattivo all'istanza. Systems Manager può inoltre fornire l'accesso a una shell (interprete di comandi) remota e registrare ogni comando richiamato e il relativo output durante la sessione nei log e in [Amazon S3](https://aws.amazon.com/s3/). [AWS CloudTrail](https://aws.amazon.com/cloudtrail/) registra le invocazioni delle API di Systems Manager per l'ispezione. 

### Passaggi dell'implementazione
<a name="implementation-steps"></a>

1.  [Installa AWS Systems Manager Agent](https://docs.aws.amazon.com/systems-manager/latest/userguide/manually-install-ssm-agent-linux.html) (SSM Agent) sulle istanze Amazon EC2. Verifica se SSM Agent è incluso e avviato in automatico nell'ambito della configurazione AMI di base. 

1.  Verifica che i ruoli IAM associati ai profili dei tuoi profili delle istanze EC2 includano la [policy IAM gestita](https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonSSMManagedInstanceCore.html) di `AmazonSSMManagedInstanceCore`. 

1.  Disabilita SSH, RDP e altri servizi di accesso remoto in esecuzione sulle tue istanze. Puoi farlo eseguendo script configurati nella sezione dei dati utente dei tuoi modelli di avvio o creando AMI personalizzate con strumenti come EC2 Image Builder. 

1.  Verifica che le regole di ingresso del gruppo di sicurezza applicabili alle tue istanze EC2 non consentano l'accesso sulla porta 22/tcp (SSH) o sulla porta 3389/tcp (RDP). Implementa il rilevamento e l'invio di avvisi su gruppi di sicurezza non configurati correttamente utilizzando servizi come AWS Config. 

1.  Definisci automazioni, runbook ed esegui comandi appropriati in Systems Manager. Utilizza le policy IAM per definire chi può eseguire queste azioni e le condizioni in base alle quali sono consentite. Testa in modo approfondito queste automazioni in un ambiente non di produzione. Richiama queste automazioni quando necessario, invece di accedere in modo interattivo all'istanza. 

1.  Utilizza [AWS Systems Manager Session Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager.html) per fornire un accesso interattivo alle istanze, quando necessario. Attiva la creazione di log delle attività di sessione per mantenere un audit trail in [Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html) o [Amazon S3](https://aws.amazon.com/s3/).  

## Risorse
<a name="resources"></a>

 **Best practice correlate:** 
+  [REL08-BP04 Esecuzione dell'implementazione utilizzando un'infrastruttura immutabile](https://docs.aws.amazon.com/wellarchitected/latest/framework/rel_tracking_change_management_immutable_infrastructure.html) 

 **Esempi correlati:** 
+  [Replacing SSH access to reduce management and security overhead with AWS Systems Manager](https://aws.amazon.com/blogs/mt/vr-beneficios-session-manager/) 

 **Strumenti correlati:** 
+  [AWS Systems Manager](https://aws.amazon.com/systems-manager/) 

 **Video correlati:** 
+  [Controlling User Session Access to Instances in AWS Systems Manager Session Manager](https://www.youtube.com/watch?v=nzjTIjFLiow) 

# SEC06-BP04 Convalida l'integrità del software
<a name="sec_protect_compute_validate_software_integrity"></a>

 Utilizza la verifica crittografica per convalidare l'integrità degli artefatti software (comprese le immagini) utilizzati dal tuo carico di lavoro.  La firma crittografica del software è una tutela contro le modifiche non autorizzate eseguite negli ambienti di calcolo. 

 **Risultato desiderato:** ottenimento di tutti gli artefatti da fonti attendibili. I certificati del sito Web del fornitore sono convalidati.  Gli artefatti scaricati vengono verificati a livello crittografico tramite le relative firme. Il tuo software è firmato e verificato a livello crittografico dai tuoi ambienti di elaborazione. 

 **Anti-pattern comuni:** 
+  Affidarsi a siti Web di fornitori attendibili per ottenere artefatti software, ma ignorare gli avvisi di scadenza dei certificati.  Download senza confermare la validità dei certificati. 
+  Convalida dei certificati dei siti Web dei fornitori, ma senza verificare a livello crittografico gli artefatti scaricati da questi siti Web. 
+  Affidarsi esclusivamente a digest o hash per convalidare l'integrità del software.  Gli hash stabiliscono che gli artefatti non sono stati modificati rispetto alla versione originale, ma non ne convalidano l'origine. 
+  Mancata firma di software, codice o librerie di proprietà, anche se utilizzati solo per le proprie implementazioni.  

 **Vantaggi dell'adozione di questa best practice:** la convalida dell'integrità degli artefatti da cui dipende il carico di lavoro consente di prevenire l'ingresso di malware negli ambienti di calcolo.  La firma del software aiuta a proteggerti dall'esecuzione non autorizzata nei tuoi ambienti di calcolo.   Proteggi la catena di approvvigionamento del software firmando e verificando il codice. 

 **Livello di rischio associato se questa best practice non fosse adottata:** medio 

## Guida all'implementazione
<a name="implementation-guidance"></a>

 Immagini del sistema operativo, immagini dei container e artefatti del codice sono spesso distribuiti con controlli di integrità disponibili, ad esempio attraverso un digest o un hash.  Questi permettono ai client di verificare l'integrità elaborando il proprio hash del payload e verificando che sia uguale a quello pubblicato.  Sebbene questi controlli aiutino a verificare l'assenza di manomissioni del payload, non ne convalidano la provenienza dalla fonte originale (la sua *provenienza*).  La verifica della provenienza richiede un certificato rilasciato da un'autorità attendibile per firmare digitalmente l'artefatto. 

 Se utilizzi un software o artefatti scaricati nel tuo carico di lavoro, controlla se il fornitore offre una chiave pubblica per la verifica della firma digitale.  Ecco alcuni esempi di come AWS fornisce una chiave pubblica e le istruzioni di verifica per il software che pubblichiamo: 
+  [EC2Image Builder: verifica la firma del download di installazione AWS TOE](https://docs.aws.amazon.com/imagebuilder/latest/userguide/awstoe-verify-sig.html) 
+  [AWS Systems Manager: verifica della firma dell'agente SSM](https://docs.aws.amazon.com/systems-manager/latest/userguide/verify-agent-signature.html) 
+  [Amazon CloudWatch: verifica della firma del pacco dell' CloudWatch agente](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/verify-CloudWatch-Agent-Package-Signature.html) 

 Incorpora la verifica della firma digitale nei processi utilizzati per ottenere e rafforzare le immagini, come discusso in [SEC06-BP02](https://docs.aws.amazon.com/wellarchitected/latest/framework/sec_protect_compute_hardened_images.html) Provision compute from hardened images. 

 È possibile utilizzare [AWS Signer](https://docs.aws.amazon.com/signer/latest/developerguide/Welcome.html) per la gestione della verifica delle firme, nonché del ciclo di vita di firma del codice per il tuo software e i tuoi artefatti.  [AWS Lambda](https://aws.amazon.com/lambda/) e [Amazon Elastic Container Registry](https://aws.amazon.com/ecr/) offrono entrambi integrazioni con Signer per verificare le firme di codice e immagini.  Utilizzando gli esempi nella sezione Risorse, puoi incorporare Signer nelle tue pipeline di integrazione e distribuzione continua (CI/CD) per automatizzare la verifica delle firme e la firma del tuo codice e delle tue immagini. 

## Risorse
<a name="resources"></a>

 **Documenti correlati:** 
+  [Cryptographic Signing for Containers](https://aws.amazon.com/blogs/containers/cryptographic-signing-for-containers/) 
+  [Le migliori pratiche per proteggere la pipeline di creazione delle immagini dei container utilizzando AWS Signer](https://aws.amazon.com/blogs/security/best-practices-to-help-secure-your-container-image-build-pipeline-by-using-aws-signer/) 
+  [Annuncio della firma di Container Image con AWS Signer Amazon EKS](https://aws.amazon.com/blogs/containers/announcing-container-image-signing-with-aws-signer-and-amazon-eks/) 
+  [Configurazione della firma del codice per AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/configuration-codesigning.html) 
+  [Best practices and advanced patterns for Lambda code signing](https://aws.amazon.com/blogs/security/best-practices-and-advanced-patterns-for-lambda-code-signing/) 
+  [Firma del codice tramite CA AWS Certificate Manager privata e chiavi AWS Key Management Service asimmetriche](https://aws.amazon.com/blogs/security/code-signing-aws-certificate-manager-private-ca-aws-key-management-service-asymmetric-keys/) 

 **Esempi correlati:** 
+  [Automatizza la firma del codice Lambda con Amazon e CodeCatalyst AWS Signer](https://aws.amazon.com/blogs/devops/automate-lambda-code-signing-with-amazon-codecatalyst-and-aws-signer/) 
+  [Firma e convalida OCI degli artefatti con AWS Signer](https://aws.amazon.com/blogs/containers/signing-and-validating-oci-artifacts-with-aws-signer/) 

 **Strumenti correlati:** 
+  [AWS Lambda](https://aws.amazon.com/lambda/) 
+  [AWS Signer](https://docs.aws.amazon.com/signer/latest/developerguide/Welcome.html) 
+  [AWS Certificate Manager](https://aws.amazon.com/certificate-manager/) 
+  [AWS Key Management Service](https://aws.amazon.com/kms/) 
+  [AWS CodeArtifact](https://aws.amazon.com/codeartifact/) 

# SEC06-BP05 Automatizzazione della protezione delle risorse di calcolo
<a name="sec_protect_compute_auto_protection"></a>

 Automatizza le operazioni di protezione delle risorse di calcolo per ridurre la necessità di intervento umano. Usa la scansione automatica per rilevare potenziali problemi all’interno delle tue risorse di calcolo e rimedia con risposte programmatiche automatiche o operazioni di gestione del parco.  Incorpora l’automazione nei tuoi processi CI/CD per implementare carichi di lavoro affidabili con dipendenze aggiornate. 

 **Risultato desiderato:** tutte le scansioni e le applicazioni di patch alle risorse di calcolo avvengono per mezzo di sistemi automatizzati. Utilizzi la verifica automatica per controllare che immagini e dipendenze del software provengano da origini attendibili e non siano state manomesse. Il controllo dei carichi di lavoro avviene in automatico per verificare la presenza di dipendenze aggiornate, così come la relativa firma per stabilire l’affidabilità negli ambienti di calcolo AWS.  Le correzioni automatiche vengono avviate al rilevamento di risorse non conformi.  

 **Anti-pattern comuni:** 
+  Adozione della pratica dell’infrastruttura immutabile, senza però disporre di una soluzione di patch di emergenza o di sostituzione dei sistemi di produzione. 
+  Utilizzo dell’automazione per correggere le risorse non correttamente configurate, ma senza un meccanismo di annullamento manuale.  Possono verificarsi situazioni in cui è necessario modificare i requisiti e sospendere le automazioni fino a quando non si modificano. 

 **Vantaggi dell’adozione di questa best practice:** riduzione del rischio di accessi alle risorse di calcolo e relativi utilizzi non autorizzati mediante l’automazione.  Contribuisce a evitare che le configurazioni errate si diffondano negli ambienti di produzione e a rilevare e correggere tali configurazioni nel caso in cui si verifichino.  L’automazione aiuta anche a rilevare l’accesso non autorizzato delle risorse di calcolo e il loro utilizzo, riducendo i tempi di risposta.  In questo modo è possibile ridurre la portata complessiva dell’impatto del problema. 

 **Livello di rischio associato se questa best practice non fosse adottata:** medio 

## Guida all’implementazione
<a name="implementation-guidance"></a>

 È possibile applicare le automazioni descritte nelle pratiche del pilastro della sicurezza per proteggere le risorse di calcolo. [SEC06-BP01 Gestione delle vulnerabilità](https://docs.aws.amazon.com/wellarchitected/latest/framework/sec_protect_compute_vulnerability_management.html) illustra come utilizzare [Amazon Inspector](https://aws.amazon.com/inspector/) nelle pipeline CI/CD e per la scansione continua degli ambienti di runtime alla ricerca di vulnerabilità ed esposizioni comuni (CVE) note.  Puoi utilizzare [AWS Systems Manager](https://aws.amazon.com/systems-manager/) per applicare patch o eseguire nuove implementazioni da nuove immagini tramite runbook automatizzati in modo da mantenere il tuo parco di calcolo aggiornato con software e librerie più recenti.  Utilizza queste tecniche per ridurre la necessità di processi manuali e l’accesso interattivo alle tue risorse di elaborazione.  Consulta [SEC06-BP03 Riduzione della gestione manuale e dell’accesso interattivo](https://docs.aws.amazon.com/wellarchitected/latest/framework/sec_protect_compute_reduce_manual_management.html) per scoprire di più. 

 L’automazione contribuisce anche all’implementazione di carichi di lavoro affidabili, come illustrato in [SEC06-BP02 Provisioning di calcolo da immagini rafforzate](https://docs.aws.amazon.com/wellarchitected/latest/framework/sec_protect_compute_hardened_images.html) e [SEC06-BP04 Convalida dell’integrità del software](https://docs.aws.amazon.com/wellarchitected/latest/framework/sec_protect_compute_validate_software_integrity.html).  Puoi utilizzare servizi come [EC2 Image Builder](https://aws.amazon.com/image-builder/), [AWS Signer](https://docs.aws.amazon.com/signer/latest/developerguide/Welcome.html), [AWS CodeArtifact](https://aws.amazon.com/codeartifact/) e [Amazon Elastic Container Registry (ECR)](https://aws.amazon.com/ecr/) per scaricare, verificare, costruire e archiviare immagini e dipendenze di codice rafforzate e approvate.   Oltre a Inspector, ognuno di questi può svolgere un ruolo nel processo CI/CD, in modo che il carico di lavoro arrivi in produzione solo quando è confermato che le sue dipendenze sono aggiornate e provengono da origini affidabili.  Il carico di lavoro è inoltre firmato in modo che gli ambienti di calcolo AWS, come [AWS Lambda](https://aws.amazon.com/lambda/) e [Amazon Elastic Kubernetes Service (EKS)](https://aws.amazon.com/eks/), possano verificare l’assenza di manomissioni prima di consentirne l’esecuzione. 

 Oltre a questi controlli preventivi, è possibile utilizzare l’automazione nei controlli investigativi anche per le risorse di calcolo.  Ad esempio, [AWS Security Hub CSPM](https://aws.amazon.com/security-hub/) offre lo standard [NIST 800-53 Rev. 5](https://docs.aws.amazon.com/securityhub/latest/userguide/nist-standard.html) che include controlli come le [[EC2.8] EC2 le istanze devono utilizzare Instance Metadata Service versione 2 (IMDSv2).](https://docs.aws.amazon.com/securityhub/latest/userguide/ec2-controls.html#ec2-8).  IMDSv2 utilizza le tecniche di autenticazione della sessione, il blocco delle richieste che contengono un’intestazione X-Forwarded-For HTTP e un TTL di rete pari a 1 per bloccare il traffico proveniente da origini esterne al fine di recuperare informazioni sull’istanza EC2. Questo controllo in Security Hub CSPM può rilevare quando le istanze EC2 utilizzano IMDSv1 e avviare una riparazione automatizzata. Scopri di più su rilevamento e riparazioni automatiche in [SEC04-BP04 Avvio della riparazione delle risorse non conformi](https://docs.aws.amazon.com/wellarchitected/latest/framework/sec_detect_investigate_events_noncompliant_resources.html). 

### Passaggi dell’implementazione
<a name="implementation-steps"></a>

1.  Automatizza la creazione di AMI rafforzate, conformi e consolidate con [EC2 Image Builder](https://docs.aws.amazon.com/imagebuilder/latest/userguide/integ-compliance-products.html).  È possibile produrre immagini che incorporano i controlli dei benchmark del Center for Internet Security (CIS) o gli standard della Security Technical Implementation Guide (STIG) dalle immagini di base di AWS e dei partner APN. 

1.  Automatizza la gestione delle configurazioni. Applica e convalida in automatico le configurazioni sicure nelle risorse di calcolo utilizzando un servizio o uno strumento di gestione della configurazione.  

   1.  Gestione automatizzata della configurazione tramite [AWS Config](https://aws.amazon.com/config/) 

   1.  Gestione automatizzata del livello di sicurezza e conformità tramite [AWS Security Hub CSPM](https://aws.amazon.com/security-hub/) 

1.  Automatizza applicazione delle patch o sostituzione delle istanze Amazon Elastic Compute Cloud (Amazon EC2). AWS Gestione patch di Systems Manager automatizza il processo di applicazione di patch alle istanze gestite con aggiornamenti correlati alla sicurezza e di altro tipo. Gestione patch consente di applicare patch sia per i sistemi operativi sia per le applicazioni 

   1.  [AWS Systems Manager Patch Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-patch.html) 

1.  Automatizza la scansione delle risorse di calcolo alla ricerca di vulnerabilità ed esposizioni comuni (CVE) e integra le soluzioni di scansione della sicurezza nella tua pipeline di compilazione. 

   1.  [Amazon Inspector](https://aws.amazon.com/inspector/) 

   1.  [Scansione delle immagini ECR](https://docs.aws.amazon.com/AmazonECR/latest/userguide/image-scanning.html) 

1.  Prendi in considerazione Amazon GuardDuty per il rilevamento automatico di malware e minacce al fine di proteggere le risorse di calcolo. GuardDuty può anche identificare potenziali problemi in caso di richiamo di una funzione [AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/welcome.html) nel tuo ambiente AWS.  

   1.  [Amazon GuardDuty](https://aws.amazon.com/guardduty/) 

1.  Prendi in considerazione le soluzioni dei partner AWS. AWS I partner offrono prodotti leader nel settore che sono equivalenti, identici o si integrano ai controlli esistenti negli ambienti on-premises. Questi prodotti integrano i servizi AWS esistenti per permettere di implementare un’architettura di sicurezza completa e un’esperienza più fluida nel cloud e negli ambienti on-premises. 

   1.  [Sicurezza dell’infrastruttura](https://aws.amazon.com/security/partner-solutions/#infrastructure_security) 

## Risorse
<a name="resources"></a>

 **Best practice correlate:** 
+  [SEC01-BP06 Implementazione automatizzata dei controlli di sicurezza standard](https://docs.aws.amazon.com/wellarchitected/latest/framework/sec_securely_operate_automate_security_controls.html) 

 **Documenti correlati:** 
+  [Get the full benefits of IMDSv2 and disable IMDSv1 across your AWS infrastructure](https://aws.amazon.com/blogs/security/get-the-full-benefits-of-imdsv2-and-disable-imdsv1-across-your-aws-infrastructure/) 

 **Video correlati:** 
+  [Security best practices for the Amazon EC2 instance metadata service](https://youtu.be/2B5bhZzayjI) 