View a markdown version of this page

Implementazione automatizzata - StackSets - Risposta di sicurezza automatizzata su AWS

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Implementazione automatizzata - StackSets

Nota

Ti consigliamo di eseguire la distribuzione con. StackSets Tuttavia, per le distribuzioni con un singolo account o per scopi di test o valutazione, considera l'opzione di distribuzione degli stack.

Prima di lanciare la soluzione, esaminate l'architettura, i componenti della soluzione, la sicurezza e le considerazioni di progettazione discusse in questa guida. Segui le istruzioni dettagliate in questa sezione per configurare e distribuire la soluzione nelle tue organizzazioni AWS.

Tempo di distribuzione: circa 30 minuti per account, a seconda dei parametri. StackSet

Prerequisiti

AWS Organizations ti aiuta a gestire e governare centralmente l'ambiente e le risorse AWS con più account. StackSets funziona al meglio con AWS Organizations.

Se hai già installato la versione 1.3.x o una versione precedente di questa soluzione, devi disinstallare la soluzione esistente. Per ulteriori informazioni, fare riferimento a Aggiornare la soluzione. Aggiorna la soluzione

Prima di distribuire questa soluzione, rivedi la tua distribuzione di AWS Security Hub:

  • Nella tua organizzazione AWS deve essere presente un account amministratore delegato di Security Hub.

  • Security Hub deve essere configurato per aggregare i risultati tra le regioni. Per ulteriori informazioni, consulta Aggregazione dei risultati tra le regioni nella Guida per l'utente di AWS Security Hub.

  • Dovresti attivare Security Hub per la tua organizzazione in ogni regione in cui utilizzi AWS.

Questa procedura presuppone che tu disponga di più account che utilizzano AWS Organizations e che tu abbia delegato un account amministratore di AWS Organizations e un account amministratore di AWS Security Hub.

Questa soluzione funziona sia con AWS Security Hub che con AWS Security Hub CSPM.

Panoramica dell'implementazione

Nota

StackSets l'implementazione di questa soluzione utilizza una combinazione di servizi gestiti e autogestiti. StackSets Self-managed StackSets devono essere utilizzati attualmente perché utilizzano stack annidati, che non sono ancora supportati da service-managed. StackSets

Distribuiscili StackSets da un account amministratore delegato nelle tue organizzazioni AWS.

Pianificazione

Usa il seguente modulo per facilitare la distribuzione. StackSets Prepara i dati, quindi copia e incolla i valori durante la distribuzione.

AWS Organizations admin account ID: _______________
Security Hub admin account ID: _______________
CloudTrail Logs Group: ______________________________
Member account IDs (comma-separated list):
___________________,
___________________,
___________________,
___________________,
___________________
AWS Organizations OUs (comma-separated list):
___________________,
___________________,
___________________,
___________________,
___________________

(Facoltativo) Passaggio 0: implementa lo stack di integrazione dei ticket

  • Se intendi utilizzare la funzione di ticketing, implementa prima lo stack di integrazione dei ticket nel tuo account amministratore di Security Hub.

  • Copia il nome della funzione Lambda da questo stack e forniscilo come input allo stack di amministrazione (vedi Passaggio 1).

Passaggio 1: avvia lo stack di amministrazione nell'account amministratore delegato di Security Hub

  • Utilizzando un modello autogestito StackSet, avvia il CloudFormation modello automated-security-response-admin.template AWS nel tuo account amministratore di AWS Security Hub nella stessa regione dell'amministratore di Security Hub. Questo modello utilizza stack annidati.

  • Scegli quali standard di sicurezza installare. Per impostazione predefinita, è selezionato solo SC (consigliato).

  • Scegliete un gruppo di log di Orchestrator esistente da utilizzare. Scegli Yes se esiste SO0111-ASR-Orchestrator già da un'installazione precedente.

  • Scegli se abilitare l'interfaccia utente Web della soluzione. Se scegli di abilitare questa funzionalità, devi anche inserire un indirizzo email a cui assegnare un ruolo di amministratore.

  • Scegli le tue preferenze per la raccolta CloudWatch delle metriche relative allo stato operativo della soluzione.

Per ulteriori informazioni sull'autogestione StackSets, consulta la sezione Concessione di autorizzazioni autogestite nella AWS User Guide. CloudFormation

Passaggio 2: installa i ruoli di correzione in ogni account membro di AWS Security Hub

Attendi il completamento della distribuzione nella Fase 1, perché il modello nella Fase 2 fa riferimento ai ruoli IAM creati dalla Fase 1.

  • Utilizzando un servizio gestito StackSet, avvia il CloudFormation modello automated-security-response-member-roles.template AWS in una singola regione in ogni account delle tue organizzazioni AWS.

  • Scegli di installare questo modello automaticamente quando un nuovo account entra a far parte dell'organizzazione.

  • Inserisci l'ID dell'account amministratore di AWS Security Hub.

  • Inserisci un valore namespace che verrà utilizzato per evitare conflitti tra i nomi delle risorse e una distribuzione precedente o contemporanea nello stesso account. Inserisci una stringa composta da un massimo di 9 caratteri alfanumerici minuscoli.

Passaggio 3: avvia lo stack di membri in ogni account e regione membro di AWS Security Hub

  • In modalità autogestita StackSets, avvia il CloudFormation modello automated-security-response-member.template AWS in tutte le regioni in cui sono presenti risorse AWS in ogni account della tua organizzazione AWS gestito dallo stesso amministratore di Security Hub.

    Nota

    Fino agli stack annidati del StackSets supporto gestito dal servizio, devi eseguire questo passaggio per tutti i nuovi account che entrano a far parte dell'organizzazione.

  • Scegli quali playbook Security Standard installare.

  • Fornisci il nome di un gruppo di CloudTrail log (utilizzato per alcune correzioni).

  • Inserisci l'ID dell'account amministratore di AWS Security Hub.

  • Inserisci un valore namespace che verrà utilizzato per evitare conflitti tra i nomi delle risorse e una distribuzione precedente o contemporanea nello stesso account. Inserisci una stringa composta da un massimo di 9 caratteri alfanumerici minuscoli. Dovrebbe corrispondere al namespace valore selezionato per lo stack dei ruoli dei membri. Inoltre, il valore dello spazio dei nomi non deve essere univoco per account membro.

(Facoltativo) Passaggio 0: Avvia uno stack di integrazione del sistema di ticket

  1. Se intendi utilizzare la funzione di ticketing, avvia prima il rispettivo stack di integrazione.

  2. Scegli gli stack di integrazione forniti per Jira o ServiceNow, oppure usali come modello per implementare la tua integrazione personalizzata.

    Per distribuire lo stack Jira:

    1. Inserisci un nome per il tuo stack.

    2. Fornisci l'URI alla tua istanza Jira.

    3. Fornisci la chiave di progetto per il progetto Jira a cui desideri inviare i ticket.

    4. Crea un nuovo segreto chiave-valore in AWS Secrets Manager che contiene Jira e. Username Password

      Nota

      Puoi scegliere di utilizzare una chiave API Jira al posto della tua password fornendo il tuo nome utente come Username e la tua chiave API come. Password

    5. Aggiungi l'ARN di questo segreto come input allo stack.

      Fornisci il nome dello stack, le informazioni sul progetto Jira e le credenziali dell'API Jira.

      Configurazione dello stack di integrazione del sistema di ticket Jira

      Configurazione di Jira Field:

      Dopo aver distribuito lo stack Jira, puoi personalizzare i campi del ticket di Jira impostando la variabile di JIRA_FIELDS_MAPPING ambiente sulla funzione Lambda. Questa stringa JSON sovrascrive i campi predefiniti del ticket Jira e deve seguire la struttura dei campi dell'API Jira.

      Valori predefiniti quando JIRA_FIELDS_MAPPING è vuoto o i campi non sono specificati:

      • priorità: {"id": "3"} (priorità media)

      • tipo di problema: {"id": "10006"} (Attività)

      • AccountID: recuperato automaticamente utilizzando l'endpoint API GET /rest/api/2/myself

        Esempio di configurazione con campi personalizzati:

        { "reporter": {"accountId": "123456:494dcbff-1b80-482c-a89d-56ae81c145a4"}, "priority": {"id": "1"}, "issuetype": {"id": "10006"}, "assignee": {"accountId": "123456:another-user-id"}, "customfield_10001": "custom value" }

        ID di campo Jira comuni:

      • ID di priorità: 1 (massimo), 2 (alto), 3 (medio), 4 (basso), 5 (minimo)

      • ID del tipo di problema: varia in base al progetto Jira (ad esempio, 10006 per Task)

      • ID account: formato 123456:494dcbff-1b80-482c-a89d-56ae81c145a4

        Puoi trovare gli ID di campo e gli ID account di Jira utilizzando l'API REST di Jira:

      • GET /rest/api/2/myselfper l'ID dell'account

      • GET /rest/api/2/priorityper gli ID prioritari

      • GET /rest/api/2/project/{projectKey}per gli ID dei tipi di problema

        Per ulteriori informazioni, consulta il formato Jira REST API v2 Issue POST.

        Per distribuire lo stack: ServiceNow

    6. Inserisci un nome per il tuo stack.

    7. Fornisci l'URI della tua ServiceNow istanza.

    8. Fornisci il nome della tua ServiceNow tabella.

    9. Crea una chiave API ServiceNow con il permesso di modificare la tabella su cui intendi scrivere.

    10. Crea un segreto in Secrets Manager con la chiave API_Key e fornisci l'ARN segreto come input per lo stack.

      Fornisci il nome dello stack, le informazioni sul ServiceNow progetto e le credenziali ServiceNow API.

      ServiceNow configurazione dello stack di integrazione del sistema di ticket

      Per creare uno stack di integrazione personalizzato: includi una funzione Lambda che l'orchestrator della soluzione Step Functions può chiamare per ogni correzione. La funzione Lambda dovrebbe prendere l'input fornito da Step Functions, creare un payload in base ai requisiti del sistema di ticketing e inviare una richiesta al sistema per creare il ticket.

Passaggio 1: avvia lo stack di amministrazione nell'account amministratore delegato di Security Hub

  1. Avvia lo stack di amministrazione con automated-security-response-admin.template il tuo account amministratore di Security Hub. In genere, uno per organizzazione in una singola regione. Poiché questo stack utilizza stack annidati, è necessario distribuire questo modello in modalità autogestita. StackSet

Parameters

Parametro Predefinita Description

Carica SC Admin Stack

yes

Specifica se installare i componenti di amministrazione per la correzione automatica dei controlli SC.

Carica lo stack di amministrazione AFSBP

no

Specifica se installare i componenti di amministrazione per la correzione automatica dei controlli FSBP.

Carica CIS120 Admin Stack

no

Specifica se installare i componenti di amministrazione per la correzione automatica dei controlli CIS120.

Carica CIS140 Admin Stack

no

Specifica se installare i componenti di amministrazione per la correzione automatica dei controlli CIS140.

Carica CIS300 Admin Stack

no

Specifica se installare i componenti di amministrazione per la correzione automatica dei controlli CIS300.

Carica lo stack di amministrazione PCI321

no

Specifica se installare i componenti di amministrazione per la correzione automatica dei controlli PCI321.

Carica NIST Admin Stack

no

Specifica se installare i componenti di amministrazione per la correzione automatica dei controlli NIST.

Riutilizza Orchestrator Log Group

no

Seleziona se riutilizzare o meno un gruppo di log esistente. SO0111-ASR-Orchestrator CloudWatch Ciò semplifica la reinstallazione e gli aggiornamenti senza perdere i dati di registro di una versione precedente. Riutilizza quelli esistenti, Orchestrator Log Group scegli yes se Orchestrator Log Group sono ancora presenti in una distribuzione precedente in questo account, altrimenti. no Se stai eseguendo un aggiornamento dello stack da una versione precedente alla v2.3.0, scegli no

ShouldDeployWebUI

yes

Implementa i componenti dell'interfaccia utente Web tra cui API Gateway, funzioni Lambda e distribuzione. CloudFront Scegli «sì» per abilitare l'interfaccia utente basata sul Web per visualizzare i risultati e lo stato della correzione. Se scegli di disabilitare questa funzionalità, puoi comunque configurare le correzioni automatiche ed eseguirle su richiesta utilizzando l'azione personalizzata Security Hub CSPM.

AdminUserEmail

(Inserimento opzionale)

Indirizzo email dell'utente amministratore iniziale. Questo utente avrà accesso amministrativo completo all'interfaccia utente Web ASR. Richiesto solo quando l'interfaccia utente Web è abilitata.

Usa le CloudWatch metriche

yes

Specifica se abilitare le CloudWatch metriche per il monitoraggio della soluzione. Verrà creata una CloudWatch dashboard per la visualizzazione delle metriche.

Usa le CloudWatch metriche e gli allarmi

yes

Specifica se abilitare gli allarmi CloudWatch metrici per la soluzione. Questo creerà allarmi per determinate metriche raccolte dalla soluzione.

RemediationFailureAlarmThreshold

5

Specifica la soglia per la percentuale di errori di riparazione per ID di controllo. Ad esempio, se si immette5, si riceve un avviso se un ID di controllo non supera più del 5% delle correzioni in un determinato giorno.

Questo parametro funziona solo se vengono creati allarmi (vedi il parametro Use CloudWatch Metrics Alarms).

EnableEnhancedCloudWatchMetrics

no

Seyes, crea CloudWatch metriche aggiuntive per tenere traccia di tutti gli ID di controllo singolarmente sulla CloudWatch dashboard e come allarmi. CloudWatch

Consulta la sezione Costo per comprendere i costi aggiuntivi che ciò comporta.

TicketGenFunctionName

(Inserimento opzionale)

Opzionale. Lascia vuoto se non desideri integrare un sistema di biglietteria. Altrimenti, fornisci il nome della funzione Lambda dall'output dello stack di Step 0, ad esempio:. SO0111-ASR-ServiceNow-TicketGenerator

Configura le opzioni StackSet

Pagina di configurazione StackSet delle opzioni
  1. Per il parametro Account numbers, inserisci l'ID dell'account amministratore di AWS Security Hub.

  2. Per il parametro Specify regions, seleziona solo la regione in cui è attivato l'amministratore di Security Hub. Attendi il completamento di questo passaggio prima di passare al passaggio 2.

    Puoi visualizzare lo stato dell' StackSet operazione nella CloudFormation console AWS nella pagina dei StackSet dettagli. Dovresti ricevere lo stato dell'operazione RIUSCITO in circa 15 minuti.

Passaggio 2: installa i ruoli di correzione in ogni account membro di AWS Security Hub

Utilizza un servizio gestito StackSets per distribuire il modello dei ruoli dei membri,. automated-security-response-member-roles.template Questo StackSet deve essere distribuito in una regione per account membro. Definisce i ruoli globali che consentono le chiamate API tra più account dalla funzione step di ASR Orchestrator.

Parameters

Parametro Predefinita Description

Spazio dei nomi

<Requires input>

Inserisci una stringa composta da un massimo di 9 caratteri alfanumerici minuscoli. Namespace univoco da aggiungere come suffisso ai nomi dei ruoli IAM di Remediation. Lo stesso namespace deve essere utilizzato nei ruoli dei membri e negli stack dei membri. Questa stringa deve essere univoca per ogni distribuzione della soluzione, ma non deve essere modificata durante gli aggiornamenti dello stack. Non è necessario che il valore dello spazio dei nomi sia univoco per account membro.

Account amministratore Sec Hub

<Requires input>

Inserisci l'ID dell'account di 12 cifre per l'account amministratore di AWS Security Hub. Questo valore concede le autorizzazioni per il ruolo di soluzione dell'account amministratore.

  1. Esegui la distribuzione nell'intera organizzazione (tipica) o nelle unità organizzative, in base alle politiche della tua organizzazione.

  2. Attiva la distribuzione automatica in modo che i nuovi account in AWS Organizations ricevano queste autorizzazioni.

  3. Per il parametro Specify regions, seleziona una singola regione. I ruoli IAM sono globali. Puoi continuare con la Fase 3 mentre questa operazione StackSet viene implementata.

    Puoi visualizzare lo stato dell' StackSet operazione nella CloudFormation console AWS nella pagina dei StackSet dettagli. Dovresti ricevere lo stato dell'operazione RIUSCITO in circa 5 minuti.

    Specifica i dettagli StackSet

    Specifica la pagina StackSet dei dettagli

Fase 3: Avvia lo stack di membri in ogni account e regione membro di AWS Security Hub

Poiché lo stack di membri utilizza stack annidati, è necessario eseguire l'implementazione in modalità autogestita. StackSet Ciò non supporta la distribuzione automatica su nuovi account nell'organizzazione AWS.

Parameters

Parametro Predefinita Description

Fornisci il nome LogGroup da utilizzare per creare filtri metrici e allarmi

<Requires input>

Specifica il nome di un gruppo di CloudWatch CloudTrail log in cui vengono registrate le chiamate API. Viene utilizzato per le correzioni CIS 3.1-3.14.

Carica SC Member Stack

yes

Specifica se installare i componenti dei membri per la correzione automatica dei controlli SC.

Carica AFSBP Member Stack

no

Specifica se installare i componenti dei membri per la correzione automatica dei controlli FSBP.

Carica lo stack di membri CIS120

no

Specificare se installare i componenti membri per la riparazione automatica dei controlli CIS120.

Carica lo stack di membri CIS140

no

Specificare se installare i componenti membri per la riparazione automatica dei controlli CIS140.

Carica lo stack di membri CIS300

no

Specifica se installare i componenti membri per la correzione automatica dei controlli CIS300.

Carica PCI321 Member Stack

no

Specifica se installare i componenti membri per la correzione automatica dei controlli PCI321.

Carica NIST Member Stack

no

Specifica se installare i componenti dei membri per la correzione automatica dei controlli NIST.

Crea un bucket S3 per Redshift Audit Logging

no

Scegli yes di creare il bucket S3 per la correzione FSBP. RedShift.4 Per i dettagli sul bucket S3 e sulla correzione, consulta la correzione nella Guida per l'utente di AWS Security Redshift.4 Hub.

Account amministratore Sec Hub

<Requires input>

Inserisci l'ID dell'account di 12 cifre per l'account amministratore di AWS Security Hub.

Spazio dei nomi

<Requires input>

Inserisci una stringa composta da un massimo di 9 caratteri alfanumerici minuscoli. Questa stringa diventa parte dei nomi dei ruoli IAM e del bucket Action Log S3. Utilizza lo stesso valore per la distribuzione dello stack dei membri e per la distribuzione dello stack dei ruoli dei membri. La stringa deve essere univoca per ogni distribuzione della soluzione, ma non deve essere modificata durante gli aggiornamenti dello stack.

EnableCloudTrailForASRActionLog

no

Seleziona yes se desideri monitorare gli eventi di gestione condotti dalla soluzione sulla CloudWatch dashboard. La soluzione crea un CloudTrail percorso nell'account di ogni membro selezionatoyes. È necessario distribuire la soluzione in un'organizzazione AWS per abilitare questa funzionalità. Inoltre, puoi abilitare questa funzionalità solo in una singola regione all'interno dello stesso account. Consulta la sezione Costo per comprendere i costi aggiuntivi che ciò comporta.

Account

Pagina di configurazione della distribuzione degli account

Sedi di distribuzione: è possibile specificare un elenco di numeri di account o unità organizzative.

Specifica le regioni: seleziona tutte le regioni in cui desideri correggere i risultati. Puoi modificare le opzioni di distribuzione in base al numero di account e alle regioni. La concorrenza tra regioni può essere parallela.

Puoi visualizzare lo stato dell' StackSet operazione nella CloudFormation console AWS nella pagina dei StackSet dettagli. Dovresti ricevere lo stato dell'operazione RIUSCITA per ogni combinazione di account e regione. Il tempo di distribuzione varia in base al numero di account e alle regioni selezionate.