Correzione dei risultati di Security Health Analytics

Questa pagina fornisce un elenco di guide e tecniche di riferimento per correggere i risultati di Security Health Analytics utilizzando Security Command Center.

Devi disporre di ruoli IAM (Identity and Access Management) adeguati per visualizzare o modificare i risultati e per accedere o modificare le risorse Google Cloud. Se si verificano errori di autorizzazione quando accedi a Security Command Center nella console Google Cloud, chiedi assistenza all'amministratore e, per saperne di più sui ruoli, consulta Controllo dell'accesso. Per risolvere gli errori delle risorse, leggi la documentazione dei prodotti interessati.

Correzione di Security Health Analytics

Questa sezione include istruzioni di correzione per tutti i risultati di Security Health Analytics.

Disattivazione dei risultati dopo la correzione

Dopo aver corretto una vulnerabilità o una configurazione errata, Security Health Analytics imposta automaticamente lo stato del risultato su INACTIVE la prossima volta che analizza il risultato. Il tempo necessario per Security Health Analytics per impostare un risultato corretto su INACTIVE dipende dal momento in cui il risultato viene corretto e dalla pianificazione della scansione che rileva il risultato.

Security Health Analytics imposta anche lo stato di un risultato su INACTIVE quando una scansione rileva che la risorsa interessata dal risultato viene eliminata. Se vuoi rimuovere dal display un risultato relativo a una risorsa eliminata mentre attendi che Security Health Analytics rilevi che la risorsa è stata eliminata, puoi disattivare il risultato. Per disattivare un risultato, vedi Disattivare i risultati in Security Command Center.

Non utilizzare la disattivazione dell'audio per nascondere i risultati corretti per le risorse esistenti. Se il problema si ripete e Security Health Analytics ripristina lo stato ACTIVE del risultato, potresti non vedere il risultato riattivato, perché i risultati disattivati vengono esclusi da qualsiasi query che specifichi NOT mute="MUTED", ad esempio la query dei risultati predefinita.

Per informazioni sugli intervalli di scansione, consulta Tipi di analisi di Security Health Analytics.

Access Transparency disabled

Nome categoria nell'API: ACCESS_TRANSPARENCY_DISABLED

Log di Access Transparency quando i dipendenti di Google Cloud accedono ai progetti della tua organizzazione per fornire assistenza. Abilita Access Transparency per registrare chi di Google Cloud accede alle tue informazioni, quando e perché. Per ulteriori informazioni, consulta Access Transparency.

Per attivare Access Transparency su un progetto, quest'ultimo deve essere associato a un account di fatturazione.

Ruoli obbligatori

Per ottenere le autorizzazioni necessarie per eseguire questa attività, chiedi all'amministratore di concederti il ruolo IAM Amministratore Access Transparency (roles/axt.admin) a livello di organizzazione. Per ulteriori informazioni sull'assegnazione dei ruoli, consulta Gestire l'accesso.

Questo ruolo predefinito contiene le autorizzazioni axt.labels.get e axt.labels.set, necessarie per eseguire questa attività. Potresti anche riuscire a ottenere queste autorizzazioni con un ruolo personalizzato o altri ruoli predefiniti.

Passaggi per correggere l'errore

Per correggere questo esito, procedi nel seguente modo:

  1. Controlla le autorizzazioni a livello di organizzazione:

    1. Vai alla pagina Identity and Access Management nella console Google Cloud.

      Vai a Identity and Access Management

    2. Se richiesto, seleziona l'organizzazione Google Cloud nel menu del selettore.

  2. Seleziona un progetto Google Cloud all'interno dell'organizzazione utilizzando il menu del selettore.

    Access Transparency viene configurato nella pagina di un progetto Google Cloud, ma è abilitato per l'intera organizzazione.

  3. Vai alla pagina IAM e amministrazione > Impostazioni.

  4. Fai clic su Attiva Access Transparency.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

AlloyDB auto backup disabled

Nome categoria nell'API: ALLOYDB_AUTO_BACKUP_DISABLED

I backup automatici non sono abilitati per un cluster AlloyDB per PostgreSQL.

Per evitare la perdita di dati, attiva i backup automatici per il cluster. Per ulteriori informazioni, consulta Configurare backup automatici aggiuntivi.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina dei cluster AlloyDB per PostgreSQL nella console Google Cloud.

    Vai ai cluster AlloyDB per PostgreSQL

  2. Fai clic su un cluster nella colonna Nome risorsa.

  3. Fai clic su Protezione dei dati.

  4. Nella sezione Criterio di backup automatico, fai clic su Modifica nella riga Backup automatici.

  5. Seleziona la casella di controllo Automatizza i backup.

  6. Fai clic su Update (Aggiorna).

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

AlloyDB log min error statement severity

Nome categoria nell'API: ALLOYDB_LOG_MIN_ERROR_STATEMENT_SEVERITY

Per un'istanza AlloyDB per PostgreSQL non ha il flag di database log_min_error_statement impostato su error o su un altro valore consigliato.

Il flag log_min_error_statement controlla se le istruzioni SQL che causano condizioni di errore vengono registrate nei log del server. Vengono registrate le istruzioni SQL con il livello di gravità specificato o superiore. Più elevata è la gravità, minore è il numero di messaggi registrato. Se impostato su un livello di gravità troppo alto, i messaggi di errore potrebbero non essere registrati.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina dei cluster AlloyDB per PostgreSQL nella console Google Cloud.

    Vai ai cluster AlloyDB per PostgreSQL

  2. Fai clic sul cluster nella colonna Nome risorsa.

  3. Nella sezione Istanze nel tuo cluster, fai clic su Modifica per l'istanza.

  4. Fai clic su Opzioni di configurazione avanzate.

  5. Nella sezione Flag, imposta il flag di database log_min_error_statement su uno dei seguenti valori consigliati, in base al criterio di logging della tua organizzazione.

    • debug5
    • debug4
    • debug3
    • debug2
    • debug1
    • info
    • notice
    • warning
    • error
  6. Fai clic su Aggiorna istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

AlloyDB log min messages

Nome categoria nell'API: ALLOYDB_LOG_MIN_MESSAGES

In un'istanza AlloyDB per PostgreSQL non è impostato il flag di database log_min_messages su un valore minimo di warning.

Il flag log_min_messages controlla quali livelli di messaggi vengono registrati nei log del server. Più elevata è la gravità, minore è il numero di messaggi registrato. L'impostazione di una soglia troppo bassa può comportare un aumento della dimensione e della durata dell'archiviazione dei log, il che complica l'individuazione di errori effettivi.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina dei cluster AlloyDB per PostgreSQL nella console Google Cloud.

    Vai ai cluster AlloyDB per PostgreSQL

  2. Fai clic sul cluster nella colonna Nome risorsa.

  3. Nella sezione Istanze nel tuo cluster, fai clic su Modifica per l'istanza.

  4. Fai clic su Opzioni di configurazione avanzate.

  5. Nella sezione Flag, imposta il flag di database log_min_messages su uno dei seguenti valori consigliati, in base al criterio di logging della tua organizzazione.

    • debug5
    • debug4
    • debug3
    • debug2
    • debug1
    • info
    • notice
    • warning
  6. Fai clic su Aggiorna istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

AlloyDB log error verbosity

Nome categoria nell'API: ALLOYDB_LOG_ERROR_VERBOSITY

Per un'istanza AlloyDB per PostgreSQL non ha il flag di database log_error_verbosity impostato su default o su un altro valore meno restrittivo.

Il flag log_error_verbosity controlla la quantità di dettagli nei messaggi registrati. Maggiore è il livello di dettaglio, maggiori saranno i dettagli registrati nei messaggi. Ti consigliamo di impostare questo flag su default o su un altro valore meno restrittivo.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina dei cluster AlloyDB per PostgreSQL nella console Google Cloud.

    Vai ai cluster AlloyDB per PostgreSQL

  2. Fai clic sul cluster nella colonna Nome risorsa.

  3. Nella sezione Istanze nel tuo cluster, fai clic su Modifica per l'istanza.

  4. Fai clic su Opzioni di configurazione avanzate.

  5. Nella sezione Flag, imposta il flag di database log_error_verbosity su uno dei seguenti valori consigliati, in base al criterio di logging della tua organizzazione.

    • default
    • verbose
  6. Fai clic su Aggiorna istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Admin service account

Nome categoria nell'API: ADMIN_SERVICE_ACCOUNT

Un account di servizio nell'organizzazione o nel progetto dispone dei privilegi Amministratore, Proprietario o Editor. Questi ruoli hanno autorizzazioni ampie e non devono essere assegnati agli account di servizio. Per saperne di più sugli account di servizio e sui ruoli disponibili, consulta Account di servizio.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina del criterio IAM nella console Google Cloud.

    Vai al criterio IAM

  2. Per ogni entità identificata nel risultato:

    1. Fai clic su Modifica accanto all'entità.
    2. Per rimuovere le autorizzazioni, fai clic su Elimina accanto al ruolo in questione.
    3. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Alpha cluster enabled

Nome categoria nell'API: ALPHA_CLUSTER_ENABLED

Le funzionalità alpha del cluster sono abilitate per un cluster Google Kubernetes Engine (GKE).

I cluster alpha consentono agli early adopter di sperimentare con carichi di lavoro che utilizzano nuove funzionalità prima che vengano rilasciate al pubblico. I cluster alpha dispongono di tutte le funzionalità dell'API GKE abilitate, ma non sono coperti dallo SLA di GKE, non ricevono aggiornamenti di sicurezza, hanno l'upgrade automatico dei nodi e la riparazione automatica dei nodi disabilitati e non possono essere sottoposti ad upgrade. Inoltre, vengono eliminati automaticamente dopo 30 giorni.

Per correggere questo esito, procedi nel seguente modo:

Impossibile disabilitare i cluster alpha. Occorre creare un nuovo cluster con le funzionalità alpha disabilitate.

  1. Vai alla pagina Cluster Kubernetes nella console Google Cloud.

    Vai ai cluster Kubernetes

  2. Fai clic su Crea.

  3. Seleziona Configura accanto al tipo di cluster che vuoi creare.

  4. Nella scheda Funzionalità, assicurati che l'opzione Abilita le funzionalità alpha di Kubernetes in questo cluster sia disabilitata.

  5. Fai clic su Crea.

  6. Per spostare i carichi di lavoro nel nuovo cluster, consulta Migrazione dei carichi di lavoro a tipi di macchine diversi.

  7. Per eliminare il cluster originale, vedi Eliminazione di un cluster.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

API key APIs unrestricted

Nome categoria nell'API: API_KEY_APIS_UNRESTRICTED

Alcune chiavi API vengono utilizzate in modo troppo ampio.

Le chiavi API senza restrizioni non sono sicure perché possono essere recuperate da dispositivi in cui la chiave è archiviata o può essere visualizzata pubblicamente, ad esempio da un browser. In conformità al principio del privilegio minimo, configura le chiavi API in modo da chiamare solo le API richieste dall'applicazione. Per maggiori informazioni, consulta Applicare limitazioni alle chiavi API.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Chiavi API nella console Google Cloud.

    Vai alle chiavi API

  2. Per ogni chiave API:

    1. Nella sezione Chiavi API, nella riga di ciascuna chiave API per cui devi limitare le API, fai clic sull'icona per visualizzare il menu Azioni.
    2. Nel menu Azioni, fai clic su Modifica chiave API. Viene visualizzata la pagina Modifica chiave API.
    3. Nella sezione Limitazioni API, seleziona Limita API. Viene visualizzato il menu a discesa Seleziona API.
    4. Nell'elenco a discesa Seleziona API, seleziona le API da autorizzare.
    5. Fai clic su Salva. L'applicazione delle impostazioni potrebbe richiedere fino a cinque minuti.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

API key apps unrestricted

Nome categoria nell'API: API_KEY_APPS_UNRESTRICTED

Le chiavi API vengono utilizzate senza restrizioni, consentendo l'uso da parte di qualsiasi app non attendibile.

Le chiavi API senza restrizioni non sono sicure perché possono essere recuperate su dispositivi in cui la chiave è archiviata o può essere visualizzata pubblicamente, ad esempio da un browser. In conformità al principio del privilegio minimo, limita l'utilizzo delle chiavi API a host, referrer HTTP e app attendibili. Per maggiori informazioni, consulta Applicare limitazioni alle chiavi API.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Chiavi API nella console Google Cloud.

    Vai alle chiavi API

  2. Per ogni chiave API:

    1. Nella sezione Chiavi API, nella riga di ciascuna chiave API per la quale devi limitare le applicazioni, fai clic sull'icona per visualizzare il menu Azioni.
    2. Nel menu Azioni, fai clic su Modifica chiave API. Viene visualizzata la pagina Modifica chiave API.
    3. Nella pagina Modifica chiave API, in Limitazioni delle applicazioni, seleziona una categoria di restrizione. Puoi impostare una limitazione delle applicazioni per ogni chiave.
    4. Nel campo Aggiungi un elemento che viene visualizzato quando selezioni una restrizione, fai clic su Aggiungi un elemento per aggiungere limitazioni in base alle esigenze della tua applicazione.
    5. Dopo aver aggiunto gli elementi, fai clic su Fine.
    6. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

API key exists

Nome categoria nell'API: API_KEY_EXISTS

Un progetto utilizza chiavi API anziché l'autenticazione standard.

Le chiavi API sono meno sicure di altri metodi di autenticazione poiché sono stringhe criptate semplici e facili da scoprire e usare per gli altri. Possono essere recuperate sui dispositivi in cui la chiave viene archiviata o può essere visualizzata pubblicamente, ad esempio, dall'interno di un browser. Inoltre, le chiavi API non identificano in modo univoco gli utenti o le applicazioni che effettuano richieste. In alternativa, puoi utilizzare un flusso di autenticazione standard con account di servizio o account utente.

Per correggere questo esito, procedi nel seguente modo:

  1. Assicurati che le applicazioni siano configurate con una forma di autenticazione alternativa.
  2. Vai alla pagina Credenziali API nella console Google Cloud.

    Vai a Credenziali API

  3. Nella sezione Chiavi API della riga di ciascuna chiave API che devi eliminare, fai clic sull'icona per visualizzare il menu Azioni.

  4. Nel menu Azioni, fai clic su Elimina chiave API.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

API key not rotated

Nome categoria nell'API: API_KEY_NOT_ROTATED

Una chiave API non viene ruotata per più di 90 giorni.

Le chiavi API non hanno una scadenza, quindi se una viene rubata, potrebbe essere utilizzata a tempo indeterminato, a meno che il proprietario del progetto non revochi o ruoti la chiave. La rigenerazione frequente delle chiavi API riduce il tempo in cui una chiave API rubata può essere utilizzata per accedere ai dati su un account compromesso o chiuso. Ruota le chiavi API almeno ogni 90 giorni. Per maggiori informazioni, consulta Proteggere una chiave API.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Chiavi API nella console Google Cloud.

    Vai alle chiavi API

  2. Per ogni chiave API:

    1. Nella sezione Chiavi API, nella riga di ciascuna chiave API che devi ruotare, fai clic sull'icona per visualizzare il menu Azioni.
    2. Nel menu Azioni, fai clic su Modifica chiave API. Viene visualizzata la pagina Modifica chiave API.
    3. Nella pagina Modifica chiave API, se la data nel campo Data di creazione risale a più di 90 giorni fa, sostituisci la chiave facendo clic su Rigenera chiave nella parte superiore della pagina. Viene generata una nuova chiave di sostituzione.
    4. Fai clic su Salva.
    5. Per far sì che le applicazioni continuino a funzionare senza interruzioni, aggiornale in modo da usare la nuova chiave API. La vecchia chiave API funziona per 24 ore prima di essere disattivata definitivamente.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Audit config not monitored

Nome categoria nell'API: AUDIT_CONFIG_NOT_MONITORED

Le metriche e gli avvisi dei log non sono configurati per monitorare le modifiche alla configurazione dell'audit.

Cloud Logging produce log delle attività di amministrazione e degli accessi ai dati che consentono l'analisi della sicurezza, il monitoraggio delle modifiche alle risorse e i controlli di conformità. Monitorando le modifiche alla configurazione dell'audit, ti assicuri che tutte le attività nel tuo progetto possano essere controllate in qualsiasi momento. Per ulteriori informazioni, consulta Panoramica delle metriche basate su log.

A seconda della quantità di informazioni, i costi di Cloud Monitoring possono essere significativi. Per comprendere l'utilizzo del servizio e i relativi costi, consulta Ottimizzazione dei costi per l'osservabilità di Google Cloud.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per risolvere questo problema, crea metriche, se necessario, e criteri di avviso:

Crea metrica

  1. Vai alla pagina Metriche basate su log nella console Google Cloud.

    Vai a Metriche basate su log

  2. Fai clic su Crea metrica.

  3. In Tipo di metrica, seleziona Contatore.

  4. In Dettagli:

    1. Imposta un Nome metrica di log.
    2. Aggiungi una descrizione.
    3. Imposta Unità su 1.
  5. In Selezione filtro, copia e incolla il seguente testo nella casella Crea filtro, sostituendo il testo esistente, se necessario:

      protoPayload.methodName="SetIamPolicy"
      AND protoPayload.serviceData.policyDelta.auditConfigDeltas:*
    

  6. Fai clic su Crea metrica. Viene visualizzata una conferma.

Crea criterio di avviso

  1. Nel pannello di navigazione della console Google Cloud, seleziona Logging, quindi Metriche basate su log:

    Vai a Metriche basate su log

  2. Nella sezione Metriche definite dall'utente, seleziona la metrica creata nella sezione precedente.
  3. Fai clic su Altro e poi su Crea avviso da metrica.

    Viene visualizzata la finestra di dialogo Nuova condizione con le opzioni della metrica e della trasformazione dei dati precompilate.

  4. Tocca Avanti.
    1. Rivedi le impostazioni precompilate. Ti consigliamo di modificare il Valore soglia.
    2. Fai clic su Nome condizione e inserisci un nome per la condizione.
  5. Tocca Avanti.
  6. Per aggiungere notifiche al criterio di avviso, fai clic su Canali di notifica. Nella finestra di dialogo, seleziona uno o più canali di notifica dal menu, quindi fai clic su OK.

    Per ricevere una notifica quando gli incidenti vengono aperti e chiusi, consulta Notifica sulla chiusura dell'incidente. Per impostazione predefinita, le notifiche vengono inviate solo quando gli incidenti sono aperti.

  7. (Facoltativo) Aggiorna la Durata della chiusura automatica dell'incidente. Questo campo determina quando Monitoring chiude gli incidenti in assenza di dati delle metriche.
  8. (Facoltativo) Fai clic su Documentazione, quindi aggiungi le informazioni che vuoi includere in un messaggio di notifica.
  9. Fai clic su Nome avviso e inserisci un nome per il criterio di avviso.
  10. Fai clic su Crea criterio.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Audit logging disabled

Nome categoria nell'API: AUDIT_LOGGING_DISABLED

Questo risultato non è disponibile per le attivazioni a livello di progetto.

L'audit logging è disabilitato per uno o più servizi Google Cloud oppure una o più entità sono esenti dall'audit logging degli accessi ai dati.

Abilita Cloud Logging per tutti i servizi al fine di monitorare tutte le attività di amministrazione e l'accesso in lettura e in scrittura ai dati utente. A seconda della quantità di informazioni, i costi di Cloud Logging possono essere significativi. Per comprendere l'utilizzo del servizio e il relativo costo, consulta Ottimizzazione dei costi per l'osservabilità di Google Cloud.

Se un'entità è esente dall'audit logging degli accessi ai dati nella configurazione predefinita dell'audit logging degli accessi ai dati o nelle configurazioni di logging per i singoli servizi, rimuovi l'esenzione.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Configurazione predefinita degli audit log di accesso ai dati nella console Google Cloud.

    Vai alla configurazione predefinita

  2. Nella scheda Tipi di log, attiva l'audit logging degli accessi ai dati nella configurazione predefinita:

    1. Seleziona Lettura amministratore, Lettura dati e Scrittura dati.
    2. Fai clic su Salva.
  3. Nella scheda Entità esenti, rimuovi tutti gli utenti esenti dalla configurazione predefinita:

    1. Rimuovi ogni entità elencata facendo clic su Elimina accanto a ogni nome.
    2. Fai clic su Salva.
  4. Vai alla pagina Audit log.

    Vai agli audit log

  5. Rimuovi eventuali entità esenti dalle configurazioni degli audit log di accesso ai dati dei singoli servizi.

    1. In Configurazione degli audit log di accesso ai dati, fai clic sul servizio per ogni servizio che mostra un'entità esente. Si apre un riquadro di configurazione degli audit log per il servizio.
    2. Nella scheda Entità esenti, rimuovi tutte le entità esenti facendo clic su Elimina accanto a ciascun nome.
    3. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Auto backup disabled

Nome categoria nell'API: AUTO_BACKUP_DISABLED

Un database Cloud SQL non ha i backup automatici abilitati.

Per evitare perdite di dati, attiva i backup automatici per le istanze SQL. Per saperne di più, consulta Creazione e gestione dei backup on demand e automatici.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Backup delle istanze SQL nella console Google Cloud.

    Vai ai backup delle istanze SQL

  2. Accanto a Impostazioni, fai clic su Modifica .

  3. Seleziona la casella Backup automatici.

  4. Nel menu a discesa, scegli un intervallo di tempo per il backup automatico dei dati.

  5. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Auto repair disabled

Nome categoria nell'API: AUTO_REPAIR_DISABLED

La funzionalità di riparazione automatica di un cluster Google Kubernetes Engine (GKE), che mantiene i nodi in stato integro e in esecuzione, è disabilitata.

Se abilitato, GKE esegue controlli periodici sullo stato di integrità di ciascun nodo nel cluster. Se un nodo non supera controlli di integrità consecutivi in un periodo di tempo prolungato, GKE avvia un processo di riparazione per quel nodo. Per ulteriori informazioni, consulta Riparazione automatica dei nodi.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Cluster Kubernetes nella console Google Cloud.

    Vai ai cluster Kubernetes

  2. Fai clic sulla scheda Nodi.

  3. Per ogni pool di nodi:

    1. Fai clic sul nome del pool di nodi per andare alla relativa pagina dei dettagli.
    2. Fai clic su Modifica .
    3. In Gestione, seleziona Abilita riparazione automatica.
    4. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Auto upgrade disabled

Nome categoria nell'API: AUTO_UPGRADE_DISABLED

La funzionalità di upgrade automatico di un cluster GKE, che mantiene i cluster e i pool di nodi sull'ultima versione stabile di Kubernetes, è disabilitata.

Per maggiori informazioni, consulta Upgrade automatico dei nodi.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Cluster Kubernetes nella console Google Cloud.

    Vai ai cluster Kubernetes

  2. Nell'elenco dei cluster, fai clic sul nome del cluster.

  3. Fai clic sulla scheda Nodi.

  4. Per ogni pool di nodi:

    1. Fai clic sul nome del pool di nodi per andare alla relativa pagina dei dettagli.
    2. Fai clic su Modifica .
    3. In Gestione, seleziona Abilita l'upgrade automatico.
    4. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

BigQuery table CMEK disabled

Nome categoria nell'API: BIGQUERY_TABLE_CMEK_DISABLED

Una tabella BigQuery non è configurata per l'utilizzo di una chiave di crittografia gestita dal cliente (CMEK).

Con CMEK, le chiavi che crei e gestisci in Cloud KMS eseguono il wrapping delle chiavi utilizzate da Google Cloud per criptare i tuoi dati, offrendoti un maggiore controllo sull'accesso ai dati. Per ulteriori informazioni, consulta Protezione dei dati con le chiavi Cloud KMS.

Per correggere questo esito, procedi nel seguente modo:

  1. Crea una tabella protetta da Cloud Key Management Service.
  2. Copia la tua tabella nella nuova tabella abilitata per CMEK.
  3. Elimina la tabella originale.

Per impostare una chiave CMEK predefinita che cripta tutte le nuove tabelle in un set di dati, vedi Imposta una chiave predefinita del set di dati.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Binary authorization disabled

Nome categoria nell'API: BINARY_AUTHORIZATION_DISABLED

Autorizzazione binaria è disabilitata su un cluster GKE.

Autorizzazione binaria include una funzionalità facoltativa che protegge la sicurezza della catena di fornitura consentendo il deployment nel cluster solo di immagini container firmate da autorità attendibili durante il processo di sviluppo. Se applichi il deployment basato sulla firma, puoi controllare più strettamente l'ambiente dei container e assicurarti che sia possibile eseguire il deployment solo delle immagini verificate.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Cluster Kubernetes nella console Google Cloud.

    Vai ai cluster Kubernetes

  2. Nella sezione Sicurezza, fai clic sull'icona di modifica () nella riga Autorizzazione binaria.

    Se la configurazione del cluster è stata modificata di recente, il pulsante di modifica potrebbe essere disabilitato. Se non riesci a modificare le impostazioni del cluster, attendi alcuni minuti e riprova.

  3. Nella finestra di dialogo, seleziona Attiva Autorizzazione binaria.

  4. Fai clic su Salva modifiche.

  5. Vai alla pagina di configurazione di Autorizzazione binaria.

    Vai ad Autorizzazione binaria

  6. Assicurati che sia configurato un criterio che richiede attestatori e che la regola predefinita del progetto non sia configurata su Consenti tutte le immagini. Per maggiori informazioni, consulta la sezione Configurazione per GKE.

    Per assicurarti che sia consentito il deployment delle immagini che violano il criterio e che le violazioni siano registrate in Cloud Audit Logs, puoi abilitare la modalità di prova.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Bucket CMEK disabled

Nome categoria nell'API: BUCKET_CMEK_DISABLED

Un bucket non è criptato con chiavi di crittografia gestite dal cliente (CMEK).

L'impostazione di una CMEK predefinita in un bucket offre un maggiore controllo sull'accesso ai tuoi dati. Per ulteriori informazioni, consulta Chiavi di crittografia gestite dal cliente.

Per risolvere questo risultato, utilizza CMEK con un bucket seguendo la procedura in Utilizzo delle chiavi di crittografia gestite dal cliente. CMEK comporta costi aggiuntivi relativi a Cloud KMS.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Bucket IAM not monitored

Nome categoria nell'API: BUCKET_IAM_NOT_MONITORED

Le metriche e gli avvisi dei log non sono configurati per monitorare le modifiche alle autorizzazioni IAM di Cloud Storage.

Il monitoraggio delle modifiche alle autorizzazioni dei bucket Cloud Storage consente di identificare gli utenti con privilegi in eccesso o le attività sospette. Per ulteriori informazioni, consulta Panoramica delle metriche basate su log.

A seconda della quantità di informazioni, i costi di Cloud Monitoring possono essere significativi. Per comprendere l'utilizzo del servizio e i relativi costi, consulta Ottimizzazione dei costi per l'osservabilità di Google Cloud.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

Crea metrica

  1. Vai alla pagina Metriche basate su log nella console Google Cloud.

    Vai a Metriche basate su log

  2. Fai clic su Crea metrica.

  3. In Tipo di metrica, seleziona Contatore.

  4. In Dettagli:

    1. Imposta un Nome metrica di log.
    2. Aggiungi una descrizione.
    3. Imposta Unità su 1.
  5. In Selezione filtro, copia e incolla il seguente testo nella casella Crea filtro, sostituendo il testo esistente, se necessario:

      resource.type=gcs_bucket
      AND protoPayload.methodName="storage.setIamPermissions"
    

  6. Fai clic su Crea metrica. Viene visualizzata una conferma.

Crea criterio di avviso

  1. Nel pannello di navigazione della console Google Cloud, seleziona Logging, quindi Metriche basate su log:

    Vai a Metriche basate su log

  2. Nella sezione Metriche definite dall'utente, seleziona la metrica creata nella sezione precedente.
  3. Fai clic su Altro e poi su Crea avviso da metrica.

    Viene visualizzata la finestra di dialogo Nuova condizione con le opzioni della metrica e della trasformazione dei dati precompilate.

  4. Tocca Avanti.
    1. Rivedi le impostazioni precompilate. Ti consigliamo di modificare il Valore soglia.
    2. Fai clic su Nome condizione e inserisci un nome per la condizione.
  5. Tocca Avanti.
  6. Per aggiungere notifiche al criterio di avviso, fai clic su Canali di notifica. Nella finestra di dialogo, seleziona uno o più canali di notifica dal menu, quindi fai clic su OK.

    Per ricevere una notifica quando gli incidenti vengono aperti e chiusi, consulta Notifica sulla chiusura dell'incidente. Per impostazione predefinita, le notifiche vengono inviate solo quando gli incidenti sono aperti.

  7. (Facoltativo) Aggiorna la Durata della chiusura automatica dell'incidente. Questo campo determina quando Monitoring chiude gli incidenti in assenza di dati delle metriche.
  8. (Facoltativo) Fai clic su Documentazione, quindi aggiungi le informazioni che vuoi includere in un messaggio di notifica.
  9. Fai clic su Nome avviso e inserisci un nome per il criterio di avviso.
  10. Fai clic su Crea criterio.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Bucket logging disabled

Nome categoria nell'API: BUCKET_LOGGING_DISABLED

Esiste un bucket di archiviazione senza logging abilitato.

Per facilitare l'analisi dei problemi di sicurezza e il monitoraggio del consumo dello spazio di archiviazione, abilita i log di accesso e le informazioni sullo spazio di archiviazione per i bucket Cloud Storage. I log degli accessi forniscono informazioni su tutte le richieste effettuate su un bucket specificato, mentre i log di archiviazione forniscono informazioni sul consumo di spazio di archiviazione di quel bucket.

Per risolvere questo risultato, configura il logging per il bucket indicato nel risultato di Security Health Analytics completando la guida Log di utilizzo e log di archiviazione.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Bucket policy only disabled

Nome categoria nell'API: BUCKET_POLICY_ONLY_DISABLED

L'accesso uniforme a livello di bucket, in precedenza denominato Solo criterio bucket, non è configurato.

L'accesso uniforme a livello di bucket semplifica il controllo dell'accesso al bucket disattivando le autorizzazioni a livello di oggetto (ACL). Quando sono abilitate, solo le autorizzazioni IAM a livello di bucket concedono l'accesso al bucket e agli oggetti che contiene. Per saperne di più, consulta Accesso uniforme a livello di bucket.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina del browser Cloud Storage nella console Google Cloud.

    Vai al browser Cloud Storage

  2. Nell'elenco dei bucket, fai clic sul nome del bucket che ti interessa.

  3. Fai clic sulla scheda Configuration (Configurazione).

  4. In Autorizzazioni, nella riga Controllo dell'accesso, fai clic sull'icona di modifica ().

  5. Nella finestra di dialogo, seleziona Uniforme.

  6. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Cloud Asset API disabled

Nome categoria nell'API: CLOUD_ASSET_API_DISABLED

Il servizio Cloud Asset Inventory non è abilitato per il progetto.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Libreria API nella console Google Cloud.

    Vai alla libreria API

  2. Cerca Cloud Asset Inventory.

  3. Seleziona il risultato per il servizio API Cloud Asset.

  4. Assicurati che sia visualizzato API abilitata.

Cluster logging disabled

Nome categoria nell'API: CLUSTER_LOGGING_DISABLED

Logging non è abilitato per un cluster GKE.

Per facilitare l'analisi dei problemi di sicurezza e il monitoraggio dell'utilizzo, abilita Cloud Logging sui tuoi cluster.

A seconda della quantità di informazioni, i costi di Cloud Logging possono essere significativi. Per comprendere l'utilizzo del servizio e il relativo costo, consulta Ottimizzazione dei costi per l'osservabilità di Google Cloud.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Cluster Kubernetes nella console Google Cloud.

    Vai ai cluster Kubernetes

  2. Seleziona il cluster elencato nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

    Se la configurazione del cluster è stata modificata di recente, il pulsante di modifica potrebbe essere disabilitato. Se non riesci a modificare le impostazioni del cluster, attendi qualche minuto e riprova.

  4. Nell'elenco a discesa Legacy Stackdriver Logging o Stackdriver Kubernetes Engine Monitoring, seleziona Abilitato.

    Queste opzioni non sono compatibili. Assicurati di utilizzare Stackdriver Kubernetes Engine Monitoring da solo oppure Stackdriver Logging legacy con Stackdriver Monitoring legacy.

  5. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Cluster monitoring disabled

Nome categoria nell'API: CLUSTER_MONITORING_DISABLED

Il monitoraggio è disabilitato sui cluster GKE.

Per facilitare l'analisi dei problemi di sicurezza e il monitoraggio dell'utilizzo, abilita Cloud Monitoring sui tuoi cluster.

A seconda della quantità di informazioni, i costi di Cloud Monitoring possono essere significativi. Per comprendere l'utilizzo del servizio e i relativi costi, consulta Ottimizzazione dei costi per l'osservabilità di Google Cloud.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Cluster Kubernetes nella console Google Cloud.

    Vai ai cluster Kubernetes

  2. Seleziona il cluster elencato nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

    Se la configurazione del cluster è stata modificata di recente, il pulsante di modifica potrebbe essere disabilitato. Se non riesci a modificare le impostazioni del cluster, attendi qualche minuto e riprova.

  4. Nell'elenco a discesa Legacy Stackdriver Monitoring o Stackdriver Kubernetes Engine Monitoring, seleziona Abilitato.

    Queste opzioni non sono compatibili. Assicurati di utilizzare Stackdriver Kubernetes Engine Monitoring da solo oppure Stackdriver Monitoring legacy con Stackdriver Logging legacy.

  5. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Cluster private Google access disabled

Nome categoria nell'API: CLUSTER_PRIVATE_GOOGLE_ACCESS_DISABLED

Gli host del cluster non sono configurati per utilizzare solo indirizzi IP interni privati per accedere alle API di Google.

L'accesso privato Google consente alle istanze di macchine virtuali (VM) con solo indirizzi IP interni privati di raggiungere gli indirizzi IP pubblici delle API e dei servizi Google. Per ulteriori informazioni, consulta Configurazione dell'accesso privato di Google.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Reti Virtual Private Cloud nella console Google Cloud.

    Vai a Reti VPC

  2. Nell'elenco delle reti, fai clic sul nome della rete desiderata.

  3. Nella pagina Dettagli rete VPC, fai clic sulla scheda Subnet.

  4. Nell'elenco delle subnet, fai clic sul nome della subnet associata al cluster Kubernetes nel risultato.

  5. Nella pagina Dettagli subnet, fai clic su Modifica .

  6. In Accesso privato Google, seleziona On.

  7. Fai clic su Salva.

  8. Per rimuovere gli IP pubblici (esterni) dalle istanze VM il cui unico traffico esterno è verso le API di Google, consulta Annullare l'assegnazione di un indirizzo IP esterno statico.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Cluster secrets encryption disabled

Nome categoria nell'API: CLUSTER_SECRETS_ENCRYPTION_DISABLED

La crittografia dei secret a livello di applicazione è disabilitata su un cluster GKE.

La crittografia dei secret a livello di applicazione assicura che i secret di GKE vengano criptati mediante chiavi Cloud KMS. La funzionalità fornisce un ulteriore livello di sicurezza per i dati sensibili, come secret definiti dall'utente e secret necessari per il funzionamento del cluster, ad esempio le chiavi degli account di servizio, che sono tutte archiviate in etcd.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Chiavi Cloud KMS nella console Google Cloud.

    Vai alle chiavi Cloud KMS

  2. Esamina le chiavi dell'applicazione o crea una chiave di crittografia del database (DEK). Per saperne di più, consulta Creazione di una chiave Cloud KMS.

  3. Vai alla pagina Cluster Kubernetes.

    Vai ai cluster Kubernetes

  4. Seleziona il cluster nel risultato.

  5. In Sicurezza, nel campo Crittografia dei secret a livello di applicazione, fai clic su Modifica crittografia dei secret a livello di applicazione.

  6. Seleziona la casella di controllo Abilita la crittografia dei secret a livello di applicazione, quindi scegli la DEK che hai creato.

  7. Fai clic su Salva modifiche.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Cluster shielded nodes disabled

Nome categoria nell'API: CLUSTER_SHIELDED_NODES_DISABLED

I nodi GKE schermati non sono abilitati per un cluster.

Senza nodi GKE schermati, gli utenti malintenzionati possono sfruttare una vulnerabilità in un pod per esfiltrare le credenziali di bootstrap e impersonare i nodi nel cluster. La vulnerabilità può consentire agli utenti malintenzionati di accedere ai secret del cluster.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Cluster Kubernetes nella console Google Cloud.

    Vai ai cluster Kubernetes

  2. Seleziona il cluster nel risultato.

  3. In Sicurezza, nel campo Nodi GKE schermati, fai clic su Modifica nodi GKE schermati.

  4. Seleziona la casella di controllo Abilita nodi GKE schermati.

  5. Fai clic su Salva modifiche.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Compute project wide SSH keys allowed

Nome categoria nell'API: COMPUTE_PROJECT_WIDE_SSH_KEYS_ALLOWED

Vengono utilizzate chiavi SSH a livello di progetto che consentono l'accesso a tutte le istanze del progetto.

L'utilizzo di chiavi SSH a livello di progetto semplifica la gestione delle chiavi SSH ma, se compromesse, rappresenta un rischio per la sicurezza che può interessare tutte le istanze di un progetto. Dovresti utilizzare chiavi SSH specifiche dell'istanza, che limitano la superficie di attacco in caso di compromissione delle chiavi SSH. Per ulteriori informazioni, consulta Gestione delle chiavi SSH nei metadati.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze VM nella console Google Cloud.

    Vai a Istanze VM

  2. Nell'elenco delle istanze, fai clic sul nome dell'istanza nel risultato.

  3. Nella pagina Dettagli istanza VM, fai clic su Modifica.

  4. In Chiavi SSH, seleziona Blocca chiavi SSH a livello di progetto.

  5. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Compute Secure Boot disabled

Nome categoria nell'API: COMPUTE_SECURE_BOOT_DISABLED

In una Shielded VM non è abilitato l'avvio protetto.

L'utilizzo dell'Avvio protetto consente di proteggere le macchine virtuali da rootkit e bootkit. Compute Engine non abilita l'avvio protetto per impostazione predefinita perché alcuni driver non firmati e software di basso livello non sono compatibili. Se la tua VM non utilizza software incompatibile e si avvia con Avvio protetto abilitato, Google consiglia di utilizzare Avvio protetto. Se utilizzi moduli di terze parti con driver NVIDIA, assicurati che siano compatibili con Avvio protetto prima di abilitarlo.

Per ulteriori informazioni, vedi Avvio protetto.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze VM nella console Google Cloud.

    Vai a Istanze VM

  2. Nell'elenco delle istanze, fai clic sul nome dell'istanza nel risultato.

  3. Nella pagina Dettagli istanza VM, fai clic su Arresta.

  4. Una volta arrestata l'istanza, fai clic su Modifica.

  5. In Shielded VM, seleziona Attiva l'avvio protetto.

  6. Fai clic su Salva.

  7. Fai clic su Avvia per avviare l'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Compute serial ports enabled

Nome categoria nell'API: COMPUTE_SERIAL_PORTS_ENABLED

Le porte seriali sono abilitate per un'istanza, consentendo le connessioni alla console seriale dell'istanza.

Se abiliti la console seriale interattiva su un'istanza, i client possono tentare di connettersi all'istanza da qualsiasi indirizzo IP. Pertanto, il supporto della console seriale interattiva deve essere disabilitato. Per ulteriori informazioni, consulta Abilitazione dell'accesso per un progetto.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze VM nella console Google Cloud.

    Vai a Istanze VM

  2. Nell'elenco delle istanze, fai clic sul nome dell'istanza nel risultato.

  3. Nella pagina Dettagli istanza VM, fai clic su Modifica.

  4. In Accesso remoto, deseleziona Attiva connessione a porte seriali.

  5. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Confidential Computing disabled

Nome categoria nell'API: CONFIDENTIAL_COMPUTING_DISABLED

Confidential Computing non è abilitato per un'istanza di Compute Engine.

Confidential Computing aggiunge un terzo pilastro alla storia della crittografia end-to-end criptando i dati durante l'uso. Con gli ambienti di esecuzione riservati forniti da Confidential Computing e AMD Secure Encrypted Virtualization (SEV), Google Cloud mantiene criptati in memoria il codice sensibile e altri dati durante l'elaborazione.

Confidential Computing può essere abilitato solo quando viene creata un'istanza. Di conseguenza, devi eliminare l'istanza corrente e crearne una nuova.

Per saperne di più, consulta Confidential VM e Compute Engine.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze VM nella console Google Cloud.

    Vai a Istanze VM

  2. Nell'elenco delle istanze, fai clic sul nome dell'istanza nel risultato.

  3. Nella pagina Dettagli istanza VM, fai clic su Elimina.

  4. Creare una Confidential VM utilizzando la console Google Cloud.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

COS not used

Nome categoria nell'API: COS_NOT_USED

Le VM di Compute Engine non utilizzano Container-Optimized OS, progettato per eseguire in sicurezza i container Docker su Google Cloud.

Container-Optimized OS è il sistema operativo consigliato da Google per l'hosting e l'esecuzione di container su Google Cloud. Le dimensioni ridotte del sistema operativo riducono l'esposizione alla sicurezza, mentre gli aggiornamenti automatici applicano le patch alle vulnerabilità di sicurezza in modo tempestivo. Per ulteriori informazioni, consulta la panoramica del sistema operativo ottimizzato per i container.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Cluster Kubernetes nella console Google Cloud.

    Vai ai cluster Kubernetes

  2. Nell'elenco dei cluster, fai clic sul nome del cluster nel risultato.

  3. Fai clic sulla scheda Nodi.

  4. Per ogni pool di nodi:

    1. Fai clic sul nome del pool di nodi per andare alla relativa pagina dei dettagli.
    2. Fai clic su Modifica .
    3. In Nodi -> Tipo di immagine, fai clic su Cambia.
    4. Seleziona Container-Optimized OS e poi fai clic su Cambia.
    5. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Custom role not monitored

Nome categoria nell'API: CUSTOM_ROLE_NOT_MONITORED

Le metriche e gli avvisi dei log non sono configurati per monitorare le modifiche ai ruoli personalizzati.

IAM fornisce ruoli predefiniti e personalizzati che concedono l'accesso a specifiche risorse Google Cloud. Monitorando le attività di creazione, eliminazione e aggiornamento dei ruoli, puoi identificare i ruoli con privilegi in eccesso. Per saperne di più, consulta la Panoramica delle metriche basate su log.

A seconda della quantità di informazioni, i costi di Cloud Monitoring possono essere significativi. Per comprendere l'utilizzo del servizio e i relativi costi, consulta Ottimizzazione dei costi per l'osservabilità di Google Cloud.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

Crea metrica

  1. Vai alla pagina Metriche basate su log nella console Google Cloud.

    Vai a Metriche basate su log

  2. Fai clic su Crea metrica.

  3. In Tipo di metrica, seleziona Contatore.

  4. In Dettagli:

    1. Imposta un Nome metrica di log.
    2. Aggiungi una descrizione.
    3. Imposta Unità su 1.
  5. In Selezione filtro, copia e incolla il seguente testo nella casella Crea filtro, sostituendo il testo esistente, se necessario:

      resource.type="iam_role"
      AND (protoPayload.methodName="google.iam.admin.v1.CreateRole"
      OR protoPayload.methodName="google.iam.admin.v1.DeleteRole"
      OR protoPayload.methodName="google.iam.admin.v1.UpdateRole")
    

  6. Fai clic su Crea metrica. Viene visualizzata una conferma.

Crea criterio di avviso

  1. Nel pannello di navigazione della console Google Cloud, seleziona Logging, quindi Metriche basate su log:

    Vai a Metriche basate su log

  2. Nella sezione Metriche definite dall'utente, seleziona la metrica creata nella sezione precedente.
  3. Fai clic su Altro e poi su Crea avviso da metrica.

    Viene visualizzata la finestra di dialogo Nuova condizione con le opzioni della metrica e della trasformazione dei dati precompilate.

  4. Tocca Avanti.
    1. Rivedi le impostazioni precompilate. Ti consigliamo di modificare il Valore soglia.
    2. Fai clic su Nome condizione e inserisci un nome per la condizione.
  5. Tocca Avanti.
  6. Per aggiungere notifiche al criterio di avviso, fai clic su Canali di notifica. Nella finestra di dialogo, seleziona uno o più canali di notifica dal menu, quindi fai clic su OK.

    Per ricevere una notifica quando gli incidenti vengono aperti e chiusi, consulta Notifica sulla chiusura dell'incidente. Per impostazione predefinita, le notifiche vengono inviate solo quando gli incidenti sono aperti.

  7. (Facoltativo) Aggiorna la Durata della chiusura automatica dell'incidente. Questo campo determina quando Monitoring chiude gli incidenti in assenza di dati delle metriche.
  8. (Facoltativo) Fai clic su Documentazione, quindi aggiungi le informazioni che vuoi includere in un messaggio di notifica.
  9. Fai clic su Nome avviso e inserisci un nome per il criterio di avviso.
  10. Fai clic su Crea criterio.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Dataproc CMEK disabled

Nome categoria nell'API: DATAPROC_CMEK_DISABLED

Un cluster Dataproc è stato creato senza una CMEK configurazione di crittografia. Con CMEK, le chiavi che crei e gestisci in Cloud Key Management Service eseguono il wrapping delle chiavi utilizzate da Google Cloud per criptare i tuoi dati, offrendoti un maggiore controllo sull'accesso ai dati.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Cluster Dataproc nella console Google Cloud.

    Vai ai cluster Dataproc

  2. Seleziona il progetto e fai clic su Crea cluster.

  3. Nella sezione Gestisci sicurezza, fai clic su Crittografia e seleziona Chiave gestita dal cliente.

  4. Seleziona una chiave gestita dal cliente dall'elenco.

    Se non hai una chiave gestita dal cliente, devi crearne una da utilizzare. Per ulteriori informazioni, consulta Chiavi di crittografia gestite dal cliente.

  5. Assicurati che alla chiave KMS selezionata sia assegnato il ruolo Autore crittografia/decrittografia CryptoKey Cloud KMS all'account di servizio del cluster Dataproc ("serviceAccount:service-project_number@compute-system.iam.gserviceaccount.com").

  6. Dopo aver creato il cluster, esegui la migrazione di tutti i carichi di lavoro dal cluster precedente a quello nuovo.

  7. Vai a Cluster Dataproc e seleziona il tuo progetto.

  8. Seleziona il cluster precedente e fai clic su Elimina cluster.

  9. Ripeti tutti i passaggi precedenti per gli altri cluster Dataproc disponibili nel progetto selezionato.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Dataproc image outdated

Nome categoria nell'API: DATAPROC_IMAGE_OUTDATED

Un cluster Dataproc è stato creato utilizzando una versione immagine Dataproc interessata da vulnerabilità di sicurezza nell'utilità Apache Log4j 2 (CVE-2021-44228 e CVE-2021-45046).

Questo rilevatore trova le vulnerabilità controllando se il campo softwareConfig.imageVersion nella proprietà config di una Cluster ha una delle seguenti versioni interessate:

  • Versioni dell'immagine precedenti alla 1.3.95.
  • Versioni di immagini inferiori precedenti alla 1.4.77, 1.5.53 e 2.0.27.

Il numero di versione di un'immagine Dataproc personalizzata può essere sostituito manualmente Considera i seguenti scenari:

  • Puoi modificare la versione di un'immagine personalizzata interessata per farla sembrare non interessata. In questo caso, questo rilevatore non emette un risultato.
  • È possibile eseguire l'override della versione di un'immagine personalizzata non interessata con una che è nota per avere la vulnerabilità. In questo caso, questo rilevatore emette un falso risultato positivo. Per eliminare questi risultati falsi positivi, puoi disattivarli.

Per risolvere questo problema, ricrea e aggiorna il cluster interessato.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Dataset CMEK disabled

Nome categoria nell'API: DATASET_CMEK_DISABLED

Un set di dati BigQuery non è configurato per utilizzare una chiave di crittografia gestita dal cliente (CMEK) predefinita.

Con CMEK, le chiavi che crei e gestisci in Cloud KMS eseguono il wrapping delle chiavi utilizzate da Google Cloud per criptare i tuoi dati, offrendoti un maggiore controllo sull'accesso ai dati. Per ulteriori informazioni, consulta Protezione dei dati con le chiavi Cloud KMS.

Per correggere questo esito, procedi nel seguente modo:

Non puoi passare da una tabella all'altra tra le crittografia predefinite e la crittografia CMEK. Per impostare una chiave CMEK predefinita con cui criptare tutte le nuove tabelle nel set di dati, segui le istruzioni per impostare una chiave predefinita del set di dati.

L'impostazione di una chiave predefinita non cripterà nuovamente in modo retroattivo le tabelle attualmente nel set di dati con una nuova chiave. Per utilizzare CMEK per i dati esistenti:

  1. Crea un nuovo set di dati.
  2. Imposta una chiave CMEK predefinita sul set di dati che hai creato.
  3. Per copiare le tabelle nel set di dati abilitato per CMEK, segui le istruzioni per copiare una tabella.
  4. Dopo aver copiato i dati, elimina i set di dati originali.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Default network

Nome categoria nell'API: DEFAULT_NETWORK

La rete predefinita esiste in un progetto.

Le reti predefinite hanno creato automaticamente regole firewall e configurazioni di rete che potrebbero non essere sicure. Per ulteriori informazioni, consulta Rete predefinita.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Reti VPC nella console Google Cloud.

    Vai a Reti VPC

  2. Nell'elenco delle reti, fai clic sul nome della rete predefinita.

  3. Nella pagina Dettagli rete VPC, fai clic su Elimina rete VPC.

  4. Per creare una nuova rete con regole firewall personalizzate, consulta Creazione di reti.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Default service account used

Nome categoria nell'API: DEFAULT_SERVICE_ACCOUNT_USED

Un'istanza Compute Engine è configurata in modo da utilizzare l'account di servizio predefinito.

L'account di servizio predefinito di Compute Engine ha il ruolo Editor per il progetto, che consente l'accesso in lettura e scrittura alla maggior parte dei servizi Google Cloud. Per difenderti da escalation dei privilegi e accessi non autorizzati, non utilizzare l'account di servizio predefinito di Compute Engine. Puoi invece creare un nuovo account di servizio e assegnare solo le autorizzazioni necessarie per la tua istanza. Per informazioni su ruoli e autorizzazioni, consulta Controllo dell'accesso.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze VM nella console Google Cloud.

    Vai a Istanze VM

  2. Seleziona l'istanza relativa al risultato di Security Health Analytics.

  3. Nella pagina Dettagli istanza che viene caricata, fai clic su Arresta.

  4. Una volta arrestata l'istanza, fai clic su Modifica.

  5. Nella sezione Account di servizio, seleziona un account di servizio diverso da quello predefinito di Compute Engine. Prima potrebbe essere necessario creare un nuovo account di servizio. Per informazioni su ruoli e autorizzazioni IAM, consulta Controllo dell'accesso.

  6. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Dettagli istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Disk CMEK disabled

Nome categoria nell'API: DISK_CMEK_DISABLED

I dischi di questa VM non sono criptati con chiavi di crittografia gestite dal cliente (CMEK).

Con CMEK, le chiavi che crei e gestisci in Cloud KMS eseguono il wrapping delle chiavi utilizzate da Google Cloud per criptare i tuoi dati, offrendoti un maggiore controllo sull'accesso ai dati. Per ulteriori informazioni, consulta Protezione delle risorse con le chiavi Cloud KMS.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Dischi di Compute Engine nella console Google Cloud.

    Vai ai dischi Compute Engine

  2. Nell'elenco dei dischi, fai clic sul nome del disco indicato nel risultato.

  3. Nella pagina Gestisci disco, fai clic su Elimina.

  4. Per creare un nuovo disco con CMEK abilitata, vedi Criptare un nuovo disco permanente con le tue chiavi. CMEK comporta costi aggiuntivi relativi a Cloud KMS.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Disk CSEK disabled

Nome categoria nell'API: DISK_CSEK_DISABLED

I dischi su questa VM non sono criptati con chiavi di crittografia fornite dal cliente (CSEK). I dischi delle VM critiche devono essere criptati con CSEK.

Se fornisci chiavi di crittografia personalizzate, Compute Engine le utilizza per proteggere le chiavi generate da Google utilizzate per criptare e decriptare i tuoi dati. Per ulteriori informazioni, consulta Chiavi di crittografia fornite dal cliente. CSEK comporta costi aggiuntivi relativi a Cloud KMS.

Per correggere questo esito, procedi nel seguente modo:

Elimina e crea disco

Puoi criptare solo nuovi dischi permanenti con la tua chiave. Non puoi criptare i dischi permanenti esistenti con la tua chiave.

  1. Vai alla pagina Dischi di Compute Engine nella console Google Cloud.

    Vai ai dischi Compute Engine

  2. Nell'elenco dei dischi, fai clic sul nome del disco indicato nel risultato.

  3. Nella pagina Gestisci disco, fai clic su Elimina.

  4. Per creare un nuovo disco con CSEK abilitata, consulta Criptare i dischi con chiavi di crittografia fornite dal cliente.

  5. Completa i passaggi rimanenti per attivare il rilevatore.

Abilita il rilevatore

  1. Vai alla pagina Asset di Security Command Center nella console Google Cloud.

    Vai ad Asset

  2. Nella sezione Tipo di risorsa del riquadro Filtri rapidi, seleziona compute.Disk.

    Se non vedi compute.Disk, fai clic su Mostra altro, inserisci Disk nel campo di ricerca e fai clic su Applica.

    Il riquadro Risultati si aggiorna per mostrare solo le istanze del tipo di risorsa compute.Disk.

  3. Nella colonna Nome visualizzato, seleziona la casella accanto al nome del disco che vuoi utilizzare con CSEK, quindi fai clic su Imposta contrassegni di sicurezza.

  4. Nella finestra di dialogo, fai clic su Aggiungi contrassegno.

  5. Nel campo key (chiave), inserisci enforce_customer_supplied_disk_encryption_keys e nel campo value (valore), inserisci true.

  6. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

DNS logging disabled

Nome categoria nell'API: DNS_LOGGING_DISABLED

Il monitoraggio dei log di Cloud DNS fornisce visibilità sui nomi DNS richiesti dai client all'interno della rete VPC. Questi log possono essere monitorati per verificare la presenza di nomi di dominio anomali e valutati in base alle informazioni sulle minacce. Ti consigliamo di abilitare il logging DNS per le reti VPC.

A seconda della quantità di informazioni, i costi di logging di Cloud DNS possono essere significativi. Per comprendere l'utilizzo del servizio e il relativo costo, consulta la sezione Prezzi per l'osservabilità di Google Cloud: Cloud Logging.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Reti VPC nella console Google Cloud.

    Vai a Reti VPC

  2. Nell'elenco delle reti, fai clic sul nome della rete VPC.

  3. Crea un nuovo criterio del server (se non esiste) o modificane uno esistente:

    • Se la rete non ha un criterio del server DNS, completa i seguenti passaggi:

      1. Fai clic su Modifica.
      2. Nel campo Criterio server DNS, fai clic su Crea un nuovo criterio del server.
      3. Inserisci un nome per il nuovo criterio del server.
      4. Imposta Log su On.
      5. Fai clic su Salva.
    • Se la rete dispone di un criterio del server DNS, completa i seguenti passaggi:

      1. Nel campo Criterio del server DNS, fai clic sul nome del criterio DNS.
      2. Fai clic su Modifica criterio.
      3. Imposta Log su On.
      4. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

DNSSEC disabled

Nome categoria nell'API: DNSSEC_DISABLED

Le estensioni Domain Name System Security Extensions (DNSSEC) sono disabilitate per le zone Cloud DNS.

Le DNSSEC convalidano le risposte DNS e mitigano i rischi, come la compromissione DNS e gli attacchi person in the middle, mediante la firma crittografica dei record DNS. Dovresti abilitare le DNSSEC. Per ulteriori informazioni, consulta la panoramica delle estensioni di sicurezza DNS (DNSSEC).

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Cloud DNS nella console Google Cloud.

    Vai alle reti Cloud DNS

  2. Individua la riga con la zona DNS indicata nel risultato.

  3. Fai clic sull'impostazione DNSSEC nella riga e, in DNSSEC, seleziona On.

  4. Esamina la finestra di dialogo visualizzata. Se le impostazioni sono corrette, fai clic su Attiva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Egress deny rule not set

Nome categoria nell'API: EGRESS_DENY_RULE_NOT_SET

Su un firewall non è impostata una regola di negazione in uscita.

Un firewall che nega tutto il traffico di rete in uscita impedisce le connessioni di rete in uscita indesiderate, tranne quelle autorizzate in modo esplicito da altri firewall. Per ulteriori informazioni, consulta Casi in uscita.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Fai clic su Crea regola firewall.

  3. Assegna un nome al firewall e, facoltativamente, una descrizione.

  4. In Direzione del traffico, seleziona In uscita.

  5. In Azione in caso di corrispondenza, seleziona Rifiuta.

  6. Nel menu a discesa Destinazioni, seleziona Tutte le istanze nella rete.

  7. Nel menu a discesa Filtro di destinazione, seleziona Intervalli IP, quindi digita 0.0.0.0/0 nella casella Intervalli IP di destinazione.

  8. In Protocolli e porte, seleziona Nega tutto.

  9. Fai clic su Disattiva regola e, in Applicazione, seleziona Abilitata.

  10. Fai clic su Crea.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Essential contacts not configured

Nome categoria nell'API: ESSENTIAL_CONTACTS_NOT_CONFIGURED

La tua organizzazione non ha designato una persona o un gruppo che riceva notifiche da Google Cloud su eventi importanti, come attacchi, vulnerabilità e incidenti relativi ai dati all'interno della tua organizzazione Google Cloud. Ti consigliamo di indicare come contatto essenziale una o più persone o gruppi della tua organizzazione aziendale.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Contatti necessari nella console Google Cloud.

    Vai a Contatti necessari

  2. Assicurati che l'organizzazione venga visualizzata nel selettore di risorse nella parte superiore della pagina. Il selettore di risorse indica il progetto, la cartella o l'organizzazione per cui stai gestendo i contatti.

  3. Fai clic su +Aggiungi contatto. Viene visualizzato il riquadro Aggiungi un contatto.

  4. Nei campi Email e Conferma email, inserisci l'indirizzo email del contatto.

  5. Nella sezione Categorie di notifica, seleziona le categorie di notifica per cui il contatto deve ricevere le comunicazioni. Assicurati di aver configurato indirizzi email appropriati per ognuna delle seguenti categorie di notifica:

    1. Legale
    2. Sicurezza
    3. Suspension
    4. Abilitazione tecnica
  6. Fai clic su Salva. Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Firewall not monitored

Nome categoria nell'API: FIREWALL_NOT_MONITORED

Le metriche e gli avvisi di log non sono configurati per monitorare le modifiche alle regole firewall di rete VPC.

Il monitoraggio degli eventi di creazione e aggiornamento delle regole firewall ti offre insight sulle modifiche dell'accesso alla rete e può aiutarti a rilevare rapidamente le attività sospette. Per saperne di più, consulta Panoramica delle metriche basate su log.

A seconda della quantità di informazioni, i costi di Cloud Monitoring possono essere significativi. Per comprendere l'utilizzo del servizio e i relativi costi, consulta Ottimizzazione dei costi per l'osservabilità di Google Cloud.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

Crea metrica

  1. Vai alla pagina Metriche basate su log nella console Google Cloud.

    Vai a Metriche basate su log

  2. Fai clic su Crea metrica.

  3. In Tipo di metrica, seleziona Contatore.

  4. In Dettagli:

    1. Imposta un Nome metrica di log.
    2. Aggiungi una descrizione.
    3. Imposta Unità su 1.
  5. In Selezione filtro, copia e incolla il seguente testo nella casella Crea filtro, sostituendo il testo esistente, se necessario:

      resource.type="gce_firewall_rule"
      AND (protoPayload.methodName:"compute.firewalls.insert"
      OR protoPayload.methodName:"compute.firewalls.patch"
      OR protoPayload.methodName:"compute.firewalls.delete")
    

  6. Fai clic su Crea metrica. Viene visualizzata una conferma.

Crea criterio di avviso

  1. Nel pannello di navigazione della console Google Cloud, seleziona Logging, quindi Metriche basate su log:

    Vai a Metriche basate su log

  2. Nella sezione Metriche definite dall'utente, seleziona la metrica creata nella sezione precedente.
  3. Fai clic su Altro e poi su Crea avviso da metrica.

    Viene visualizzata la finestra di dialogo Nuova condizione con le opzioni della metrica e della trasformazione dei dati precompilate.

  4. Tocca Avanti.
    1. Rivedi le impostazioni precompilate. Ti consigliamo di modificare il Valore soglia.
    2. Fai clic su Nome condizione e inserisci un nome per la condizione.
  5. Tocca Avanti.
  6. Per aggiungere notifiche al criterio di avviso, fai clic su Canali di notifica. Nella finestra di dialogo, seleziona uno o più canali di notifica dal menu, quindi fai clic su OK.

    Per ricevere una notifica quando gli incidenti vengono aperti e chiusi, consulta Notifica sulla chiusura dell'incidente. Per impostazione predefinita, le notifiche vengono inviate solo quando gli incidenti sono aperti.

  7. (Facoltativo) Aggiorna la Durata della chiusura automatica dell'incidente. Questo campo determina quando Monitoring chiude gli incidenti in assenza di dati delle metriche.
  8. (Facoltativo) Fai clic su Documentazione, quindi aggiungi le informazioni che vuoi includere in un messaggio di notifica.
  9. Fai clic su Nome avviso e inserisci un nome per il criterio di avviso.
  10. Fai clic su Crea criterio.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Firewall rule logging disabled

Nome categoria nell'API: FIREWALL_RULE_LOGGING_DISABLED

Il logging delle regole firewall è disabilitato.

Il logging delle regole firewall consente di controllare, verificare e analizzare gli effetti delle regole firewall. Può essere utile per controllare l'accesso alla rete o per avvisare in anticipo che la rete viene utilizzata in un modo non approvato. Il costo dei log può essere significativo. Per ulteriori informazioni sul logging delle regole firewall e sul relativo costo, consulta Utilizzo del logging delle regole firewall.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall che ti interessa.

  3. Fai clic su Modifica.

  4. In Log, seleziona On.

  5. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Flow logs disabled

Nome categoria nell'API: FLOW_LOGS_DISABLED

È presente una subnet VPC in cui i log di flusso sono disabilitati.

I log di flusso VPC registrano un campione di flussi di rete inviati e ricevuti dalle istanze VM. Questi log possono essere utilizzati per monitoraggio della rete, analisi forense, analisi della sicurezza in tempo reale e ottimizzazione delle spese. Per ulteriori informazioni sui log di flusso e sui relativi costi, consulta Utilizzo dei log di flusso VPC.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Reti VPC nella console Google Cloud.

    Vai a Reti VPC

  2. Nell'elenco delle reti, fai clic sul nome della rete desiderata.

  3. Nella pagina Dettagli rete VPC, fai clic sulla scheda Subnet.

  4. Nell'elenco delle subnet, fai clic sul nome della subnet indicato nei risultati.

  5. Nella pagina Dettagli subnet, fai clic su Modifica.

  6. In Log di flusso, seleziona On.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Nome categoria nell'API: VPC_FLOW_LOGS_SETTINGS_NOT_RECOMMENDED

Nella configurazione di una subnet in una rete VPC, il servizio Log di flusso VPC è disattivato o non è configurato in base ai suggerimenti di CIS Benchmark 1.3. I log di flusso VPC registrano un campione di flussi di rete inviati e ricevuti dalle istanze VM, che può essere utilizzato per rilevare minacce.

Per ulteriori informazioni sui log di flusso VPC e sui relativi costi, consulta Utilizzo dei log di flusso VPC.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Reti VPC nella console Google Cloud.

    Vai a Reti VPC

  2. Nell'elenco delle reti, fai clic sul nome della rete.

  3. Nella pagina Dettagli rete VPC, fai clic sulla scheda Subnet.

  4. Nell'elenco delle subnet, fai clic sul nome della subnet indicato nei risultati.

  5. Nella pagina Dettagli subnet, fai clic su Modifica.

  6. In Log di flusso, seleziona On.

    1. Facoltativamente, modifica la configurazione dei log facendo clic sul pulsante Configura log per espandere la scheda. CIS Benchmarks consiglia le seguenti impostazioni:
      1. Imposta l'intervallo di aggregazione su 5 sec.
      2. Per la casella di controllo Campi aggiuntivi, seleziona l'opzione Includi metadati.
      3. Imposta Frequenza di campionamento su 100%.
      4. Fai clic sul pulsante SALVA.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Full API access

Nome categoria nell'API: FULL_API_ACCESS

Un'istanza Compute Engine è configurata in modo da utilizzare l'account di servizio predefinito con accesso completo a tutte le API Google Cloud.

Un'istanza configurata con l'ambito predefinito dell'account di servizio, Consenti l'accesso completo a tutte le API Cloud, potrebbe consentire agli utenti di eseguire operazioni o chiamate API per le quali non dispongono di autorizzazioni IAM. Per ulteriori informazioni, consulta Account di servizio predefinito di Compute Engine.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze VM nella console Google Cloud.

    Vai a Istanze VM

  2. Nell'elenco delle istanze, fai clic sul nome dell'istanza nel risultato.

  3. Fai clic su Arresta se l'istanza è attualmente avviata.

  4. Una volta arrestata l'istanza, fai clic su Modifica.

  5. In Account di servizio, nel menu a discesa, seleziona Account di servizio predefinito di Compute Engine.

  6. Nella sezione Ambiti di accesso, assicurati che l'opzione Consenti l'accesso completo a tutte le API Cloud non sia selezionata.

  7. Fai clic su Salva.

  8. Fai clic su Avvia per avviare l'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

HTTP load balancer

Nome categoria nell'API: HTTP_LOAD_BALANCER

Un'istanza Compute Engine utilizza un bilanciatore del carico configurato per l'utilizzo di un proxy HTTP di destinazione anziché di un proxy HTTPS di destinazione.

Per proteggere l'integrità dei tuoi dati e impedire a intrusi di manomettere le comunicazioni, configura i bilanciatori del carico HTTP(S) in modo da consentire solo il traffico HTTPS. Per saperne di più, consulta Panoramica del bilanciamento del carico HTTP(S) esterno.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Proxy di destinazione nella console Google Cloud.

    Vai a Proxy di destinazione

  2. Nell'elenco dei proxy di destinazione, fai clic sul nome del proxy di destinazione nei risultati.

  3. Fai clic sul link sotto la mappa URL.

  4. Fai clic su Modifica.

  5. Fai clic su Configurazione frontend.

  6. Elimina tutte le configurazioni IP di frontend e di porte che consentono il traffico HTTP e creane di nuove che consentono il traffico HTTPS.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Instance OS login disabled

Nome categoria nell'API: INSTANCE_OS_LOGIN_DISABLED

OS Login è disabilitato su questa istanza Compute Engine.

OS Login consente la gestione centralizzata delle chiavi SSH con IAM e disabilita la configurazione delle chiavi SSH basata su metadati in tutte le istanze di un progetto. Scopri come impostare e configurare OS Login.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze VM nella console Google Cloud.

    Vai a Istanze VM

  2. Nell'elenco delle istanze, fai clic sul nome dell'istanza nel risultato.

  3. Nella pagina Dettagli istanza che viene caricata, fai clic su Arresta.

  4. Dopo l'arresto dell'istanza, fai clic su Modifica.

  5. Nella sezione Metadati personalizzati, assicurati che l'elemento con la chiave enable-oslogin abbia il valore TRUE.

  6. Fai clic su Salva.

  7. Fai clic su Avvia per avviare l'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Integrity monitoring disabled

Nome categoria nell'API: INTEGRITY_MONITORING_DISABLED

Il monitoraggio dell'integrità è disabilitato su un cluster GKE.

Il monitoraggio dell'integrità consente di controllare e verificare l'integrità in fase di avvio runtime dei nodi schermati utilizzando Monitoring. In questo modo puoi rispondere a errori di integrità e impedire il deployment dei nodi compromessi nel cluster.

Per correggere questo esito, procedi nel seguente modo:

Una volta eseguito il provisioning di un nodo, non è possibile aggiornarlo per abilitare il monitoraggio dell'integrità. Devi creare un nuovo pool di nodi con il monitoraggio dell'integrità abilitato.

  1. Vai alla pagina Cluster Kubernetes nella console Google Cloud.

    Vai ai cluster Kubernetes

  2. Fai clic sul nome del cluster nel risultato.

  3. Fai clic su Aggiungi pool di nodi.

  4. Nella scheda Sicurezza, assicurati che l'opzione Abilita il monitoraggio dell'integrità sia abilitata.

  5. Fai clic su Crea.

  6. Per eseguire la migrazione dei carichi di lavoro dai pool di nodi non conformi esistenti ai nuovi pool di nodi, consulta Migrazione dei carichi di lavoro a tipi di macchine diversi.

  7. Dopo lo spostamento dei carichi di lavoro, elimina il pool di nodi non conforme originale.

    1. Nella pagina Cluster Kubernetes, all'interno del menu Pool di nodi, fai clic sul nome del pool di nodi che vuoi eliminare.
    2. Fai clic su Rimuovi pool di nodi.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Intranode visibility disabled

Nome categoria nell'API: INTRANODE_VISIBILITY_DISABLED

La visibilità tra nodi è disabilitata per un cluster GKE.

Se abiliti la visibilità tra nodi, il traffico tra i pod tra nodi sarà visibile nell'infrastruttura di networking. Questa funzionalità consente di utilizzare il logging dei flussi VPC o altre funzionalità VPC per monitorare o controllare il traffico tra nodi. Per ottenere i log, devi abilitare quelli del flusso VPC nella subnet selezionata. Per ulteriori informazioni, consulta Utilizzo dei log di flusso VPC.

Per correggere questo esito, procedi nel seguente modo:

Una volta eseguito il provisioning di un nodo, non è possibile aggiornarlo per abilitare il monitoraggio dell'integrità. Devi creare un nuovo pool di nodi con il monitoraggio dell'integrità abilitato.

  1. Vai alla pagina Cluster Kubernetes nella console Google Cloud.

    Vai ai cluster Kubernetes

  2. Nella sezione Networking, fai clic sull'icona di modifica () nella riga Visibilità tra nodi.

    Se la configurazione del cluster è stata modificata di recente, il pulsante di modifica potrebbe essere disabilitato. Se non riesci a modificare le impostazioni del cluster, attendi alcuni minuti e riprova.

  3. Nella finestra di dialogo, seleziona Abilita visibilità tra nodi.

  4. Fai clic su Salva modifiche.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

IP alias disabled

Nome categoria nell'API: IP_ALIAS_DISABLED

È stato creato un cluster GKE con intervalli IP alias disabilitati.

Quando abiliti intervalli IP alias, i cluster GKE allocano indirizzi IP da un blocco CIDR noto, in modo che il cluster sia scalabile e interagisca meglio con i prodotti e le entità Google Cloud. Per maggiori informazioni, consulta Panoramica degli intervalli IP alias.

Per correggere questo esito, procedi nel seguente modo:

Non puoi eseguire la migrazione di un cluster esistente per utilizzare IP alias. Per creare un nuovo cluster con IP alias abilitati:

  1. Vai alla pagina Cluster Kubernetes nella console Google Cloud.

    Vai ai cluster Kubernetes

  2. Fai clic su Crea.

  3. Nel riquadro di navigazione, in Cluster, fai clic su Networking.

  4. In Opzioni di networking avanzate, seleziona Abilita il routing del traffico VPC nativo (mediante IP alias).

  5. Fai clic su Crea.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

IP forwarding enabled

Nome categoria nell'API: IP_FORWARDING_ENABLED

L'IP forwarding è abilitato sulle istanze di Compute Engine.

Impedisci la perdita di dati o la divulgazione di informazioni disabilitando l'inoltro IP dei pacchetti di dati per le tue VM.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze VM nella console Google Cloud.

    Vai a Istanze VM

  2. Nell'elenco delle istanze, seleziona la casella accanto al nome dell'istanza nel risultato.

  3. Fai clic su Elimina.

  4. Seleziona Crea istanza per creare una nuova istanza in sostituzione di quella eliminata.

  5. Per assicurarti che l'opzione Inoltro IP sia disattivato, fai clic su Gestione, dischi, networking, chiavi SSH, quindi fai clic su Networking.

  6. In Interfacce di rete, fai clic su Modifica.

  7. In Inoltro IP, nel menu a discesa, assicurati che sia selezionata l'opzione Off.

  8. Specifica eventuali altri parametri di istanza e fai clic su Crea. Per saperne di più, consulta Creazione e avvio di un'istanza VM.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

KMS key not rotated

Nome categoria nell'API: KMS_KEY_NOT_ROTATED

La rotazione non è configurata su una chiave di crittografia Cloud KMS.

La rotazione regolare delle chiavi di crittografia garantisce protezione nel caso in cui una chiave venga compromessa e limita il numero di messaggi criptati disponibili per la crittoanalisi per una versione specifica della chiave. Per ulteriori informazioni, consulta Rotazione della chiave.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Chiavi Cloud KMS nella console Google Cloud.

    Vai alle chiavi Cloud KMS

  2. Fai clic sul nome del keyring indicato nel risultato.

  3. Fai clic sul nome della chiave indicato nel risultato.

  4. Fai clic su Modifica periodo di rotazione.

  5. Imposta il periodo di rotazione su un massimo di 90 giorni.

  6. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

KMS project has owner

Nome categoria nell'API: KMS_PROJECT_HAS_OWNER

Un utente dispone delle autorizzazioni roles/Owner su un progetto con chiavi di crittografia. Per ulteriori informazioni, consulta Autorizzazioni e ruoli.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina IAM nella console Google Cloud.

    Vai alla pagina IAM

  2. Se necessario, seleziona il progetto nel risultato.

  3. Per ogni entità a cui è assegnato il ruolo Proprietario:

    1. Fai clic su Modifica.
    2. Nel riquadro Modifica autorizzazioni, accanto al ruolo Proprietario, fai clic su Elimina.
    3. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

KMS public key

Nome categoria nell'API: KMS_PUBLIC_KEY

Una crittografia Cloud KMS o un keyring Cloud KMS sono pubblici e accessibili a chiunque su internet. Per ulteriori informazioni, consulta Utilizzo di IAM con Cloud KMS.

Per correggere questo risultato, se è correlato a una crittografia:

  1. Vai alla pagina Chiavi di crittografia nella console Google Cloud.

    Chiavi crittografiche

  2. In Nome, seleziona il keyring contenente la chiave di crittografia relativa al risultato di Security Health Analytics.

  3. Nella pagina Dettagli del keyring visualizzata, seleziona la casella di controllo accanto alla chiave di crittografia.

  4. Se il RIQUADRO INFORMAZIONI non viene visualizzato, fai clic sul pulsante MOSTRA RIQUADRO INFORMAZIONI.

  5. Utilizza la casella di filtro che precede Ruolo / Entità per cercare le entità allUsers e allAuthenticatedUsers, quindi fai clic su Elimina per rimuovere l'accesso per queste entità.

Per risolvere questo problema, se è correlato a un keyring:

  1. Vai alla pagina Chiavi di crittografia nella console Google Cloud.

    Chiavi crittografiche

  2. Trova la riga con il keyring nel risultato e seleziona la casella di controllo.

  3. Se il RIQUADRO INFORMAZIONI non viene visualizzato, fai clic sul pulsante MOSTRA RIQUADRO INFORMAZIONI.

  4. Utilizza la casella di filtro che precede Ruolo / Entità per cercare le entità allUsers e allAuthenticatedUsers, quindi fai clic su Elimina per rimuovere l'accesso per queste entità.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

KMS role separation

Nome categoria nell'API: KMS_ROLE_SEPARATION

Questo risultato non è disponibile per le attivazioni a livello di progetto.

A una o più entità sono assegnate più autorizzazioni Cloud KMS. Consigliamo che nessun account disponga simultaneamente delle autorizzazioni di Amministratore Cloud KMS e di altre autorizzazioni Cloud KMS. Per maggiori informazioni, consulta Autorizzazioni e ruoli.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina IAM nella console Google Cloud.

    Vai a IAM

  2. Per ogni entità elencata nel risultato:

    1. Controlla se il ruolo è stato ereditato da una cartella o una risorsa dell'organizzazione esaminando la colonna Ereditarietà. Se la colonna contiene un link a una risorsa padre, fai clic sul link per passare alla pagina IAM della risorsa padre.
    2. Fai clic su Modifica accanto a un'entità.
    3. Per rimuovere le autorizzazioni, fai clic su Elimina accanto ad Amministratore Cloud KMS. Se vuoi rimuovere tutte le autorizzazioni per l'entità, fai clic su Elimina accanto a tutte le altre autorizzazioni.
  3. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Legacy authorization enabled

Nome categoria nell'API: LEGACY_AUTHORIZATION_ENABLED

L'autorizzazione precedente è abilitata sui cluster GKE.

In Kubernetes, controllo dell'accesso basato su ruoli (RBAC) consente di definire ruoli con regole contenenti un insieme di autorizzazioni e di concedere autorizzazioni a livello di cluster e spazio dei nomi. Questa funzionalità migliora la sicurezza garantendo che gli utenti hanno accesso solo a risorse specifiche. Valuta la possibilità di disabilitare il controllo controllo dell'accesso basato su attributi (ABAC) legacy.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Cluster Kubernetes nella console Google Cloud.

    Vai ai cluster Kubernetes

  2. Seleziona il cluster elencato nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

    Se la configurazione del cluster è stata modificata di recente, il pulsante di modifica potrebbe essere disabilitato. Se non riesci a modificare le impostazioni del cluster, attendi qualche minuto e riprova.

  4. Nell'elenco a discesa Autorizzazione precedente, seleziona Disabilitata.

  5. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Legacy metadata enabled

Nome categoria nell'API: LEGACY_METADATA_ENABLED

I metadati legacy sono abilitati nei cluster GKE.

Il server dei metadati delle istanze di Compute Engine espone gli endpoint legacy /0.1/ e /v1beta1/, che non applicano le intestazioni delle query dei metadati. Questa è una funzionalità delle API /v1/ che rende più difficile per un potenziale utente malintenzionato recuperare i metadati dell'istanza. Se non richiesto, ti consigliamo di disattivare queste API legacy /0.1/ e /v1beta1/.

Per ulteriori informazioni, consulta la sezione Disabilitazione e transizione dalle API di metadati legacy.

Per correggere questo esito, procedi nel seguente modo:

Puoi disabilitare le API di metadati legacy solo quando crei un nuovo cluster o quando aggiungi un nuovo pool di nodi a un cluster esistente. Per aggiornare un cluster esistente e disabilitare le API dei metadati legacy, consulta Migrazione dei carichi di lavoro in tipi di macchine diversi.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Legacy network

Nome categoria nell'API: LEGACY_NETWORK

In un progetto esiste una rete legacy.

Le reti legacy non sono consigliate perché molte nuove funzionalità di sicurezza di Google Cloud non sono supportate nelle reti legacy. Utilizza invece le reti VPC. Per ulteriori informazioni, consulta la sezione Reti legacy.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Reti VPC nella console Google Cloud.

    Vai a Reti VPC

  2. Per creare una nuova rete non legacy, fai clic su Crea rete.

  3. Torna alla pagina Reti VPC.

  4. Nell'elenco delle reti, fai clic su legacy_network.

  5. Nella pagina Dettagli rete VPC, fai clic su Elimina rete VPC.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Load balancer logging disabled

Nome categoria nell'API: LOAD_BALANCER_LOGGING_DISABLED

Il logging è disabilitato per il servizio di backend in un bilanciatore del carico.

L'abilitazione del logging per un bilanciatore del carico consente di visualizzare il traffico di rete HTTP(S) per le applicazioni web. Per ulteriori informazioni, consulta Bilanciatore del carico.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Cloud Load Balancing nella console Google Cloud.

    Vai a Cloud Load Balancing

  2. Fai clic sul nome del bilanciatore del carico.

  3. Fai clic su Modifica .

  4. Fai clic su Configurazione backend.

  5. Nella pagina Configurazione backend, fai clic su .

  6. Nella sezione Logging, seleziona Abilita il logging e scegli la frequenza di campionamento migliore per il progetto.

  7. Per completare la modifica del servizio di backend, fai clic su Aggiorna.

  8. Per completare la modifica del bilanciatore del carico, fai clic su Aggiorna.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Locked retention policy not set

Nome categoria nell'API: LOCKED_RETENTION_POLICY_NOT_SET

Non è impostato un criterio di conservazione bloccato per i log.

Un criterio di conservazione bloccato impedisce la sovrascrittura dei log e l'eliminazione del bucket di log. Per ulteriori informazioni, consulta Blocco di bucket.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Browser Storage nella console Google Cloud.

    Vai al browser Storage

  2. Seleziona il bucket elencato nel risultato Security Health Analytics.

  3. Nella pagina Dettagli bucket, fai clic sulla scheda Conservazione.

  4. Se non è stato impostato un criterio di conservazione, fai clic su Imposta criterio di conservazione.

  5. Inserisci un periodo di conservazione.

  6. Fai clic su Salva. Il criterio di conservazione viene visualizzato nella scheda Conservazione.

  7. Fai clic su Blocca per assicurarti che il periodo di conservazione non venga ridotto o rimosso.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Log not exported

Nome categoria nell'API: LOG_NOT_EXPORTED

Per una risorsa non è configurato un sink di log appropriato.

Cloud Logging consente di trovare rapidamente la causa principale dei problemi del sistema e delle applicazioni. Tuttavia, per impostazione predefinita, la maggior parte dei log viene conservata solo per 30 giorni. Esporta copie di tutte le voci di log per estendere il periodo di archiviazione. Per ulteriori informazioni, consulta Panoramica delle esportazioni dei log.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Router dei log nella console Google Cloud.

    Vai al router dei log

  2. Fai clic su Crea sink.

  3. Per assicurarti che vengano esportati tutti i log, lascia vuoti i filtri di inclusione ed esclusione.

  4. Fai clic su Crea sink.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Master authorized networks disabled

Nome categoria nell'API: MASTER_AUTHORIZED_NETWORKS_DISABLED

Le reti autorizzate del piano di controllo non sono abilitate nei cluster GKE.

Le reti autorizzate del piano di controllo migliorano la sicurezza del tuo cluster di container, impedendo a specifici indirizzi IP di accedere al piano di controllo del cluster. Per saperne di più, consulta Aggiunta di reti autorizzate per l'accesso al piano di controllo.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Cluster Kubernetes nella console Google Cloud.

    Vai ai cluster Kubernetes

  2. Seleziona il cluster elencato nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

    Se la configurazione del cluster è stata modificata di recente, il pulsante di modifica potrebbe essere disabilitato. Se non riesci a modificare le impostazioni del cluster, attendi qualche minuto e riprova.

  4. Nell'elenco a discesa Reti autorizzate piano di controllo, seleziona Abilitata.

  5. Fai clic su Aggiungi rete autorizzata.

  6. Specifica le reti autorizzate che vuoi utilizzare.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

MFA not enforced

Nome categoria nell'API: MFA_NOT_ENFORCED

Questo risultato non è disponibile per le attivazioni a livello di progetto.

L'autenticazione a più fattori, in particolare la verifica in due passaggi (V2P), è disattivata per alcuni utenti della tua organizzazione.

L'autenticazione a più fattori viene utilizzata per proteggere gli account da accessi non autorizzati ed è lo strumento più importante per proteggere l'organizzazione contro le credenziali di accesso compromesse. Per ulteriori informazioni, consulta Proteggere la tua attività con la verifica in due passaggi.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina della Console di amministrazione nella console Google Cloud.

    Vai alla Console di amministrazione

  2. Applica la verifica in due passaggi a tutte le unità organizzative.

Elimina risultati di questo tipo

Per eliminare i risultati di questo tipo, definisci una regola di disattivazione che disattivi automaticamente i risultati futuri di questo tipo. Per maggiori informazioni, consulta Disattivare i risultati in Security Command Center.

Sebbene non sia un modo consigliato per eliminare i risultati, puoi anche aggiungere contrassegni di sicurezza dedicati agli asset in modo che i rilevatori di Security Health Analytics non creino risultati di sicurezza per questi asset.

  • Per evitare che questo risultato venga attivato di nuovo, aggiungi il contrassegno di sicurezza allow_mfa_not_enforced con valore true all'asset.
  • Per ignorare le potenziali violazioni per unità organizzative specifiche, aggiungi il contrassegno di sicurezza excluded_orgunits all'asset con un elenco separato da virgole di percorsi di unità organizzative nel campo value. Ad esempio, excluded_orgunits:/people/vendors/vendorA,/people/contractors/contractorA.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Network not monitored

Nome categoria nell'API: NETWORK_NOT_MONITORED

Le metriche e gli avvisi dei log non sono configurati per monitorare le modifiche alla rete VPC.

Per rilevare modifiche errate o non autorizzate alla configurazione della rete, monitora le modifiche alla rete VPC. Per ulteriori informazioni, consulta la Panoramica delle metriche basate su log.

A seconda della quantità di informazioni, i costi di Cloud Monitoring possono essere significativi. Per comprendere l'utilizzo del servizio e i relativi costi, consulta Ottimizzazione dei costi per l'osservabilità di Google Cloud.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

Crea metrica

  1. Vai alla pagina Metriche basate su log nella console Google Cloud.

    Vai a Metriche basate su log

  2. Fai clic su Crea metrica.

  3. In Tipo di metrica, seleziona Contatore.

  4. In Dettagli:

    1. Imposta un Nome metrica di log.
    2. Aggiungi una descrizione.
    3. Imposta Unità su 1.
  5. In Selezione filtro, copia e incolla il seguente testo nella casella Crea filtro, sostituendo il testo esistente, se necessario:

      resource.type="gce_network"
      AND (protoPayload.methodName:"compute.networks.insert"
      OR protoPayload.methodName:"compute.networks.patch"
      OR protoPayload.methodName:"compute.networks.delete"
      OR protoPayload.methodName:"compute.networks.removePeering"
      OR protoPayload.methodName:"compute.networks.addPeering")
    

  6. Fai clic su Crea metrica. Viene visualizzata una conferma.

Crea criterio di avviso

  1. Nel pannello di navigazione della console Google Cloud, seleziona Logging, quindi Metriche basate su log:

    Vai a Metriche basate su log

  2. Nella sezione Metriche definite dall'utente, seleziona la metrica creata nella sezione precedente.
  3. Fai clic su Altro e poi su Crea avviso da metrica.

    Viene visualizzata la finestra di dialogo Nuova condizione con le opzioni della metrica e della trasformazione dei dati precompilate.

  4. Tocca Avanti.
    1. Rivedi le impostazioni precompilate. Ti consigliamo di modificare il Valore soglia.
    2. Fai clic su Nome condizione e inserisci un nome per la condizione.
  5. Tocca Avanti.
  6. Per aggiungere notifiche al criterio di avviso, fai clic su Canali di notifica. Nella finestra di dialogo, seleziona uno o più canali di notifica dal menu, quindi fai clic su OK.

    Per ricevere una notifica quando gli incidenti vengono aperti e chiusi, consulta Notifica sulla chiusura dell'incidente. Per impostazione predefinita, le notifiche vengono inviate solo quando gli incidenti sono aperti.

  7. (Facoltativo) Aggiorna la Durata della chiusura automatica dell'incidente. Questo campo determina quando Monitoring chiude gli incidenti in assenza di dati delle metriche.
  8. (Facoltativo) Fai clic su Documentazione, quindi aggiungi le informazioni che vuoi includere in un messaggio di notifica.
  9. Fai clic su Nome avviso e inserisci un nome per il criterio di avviso.
  10. Fai clic su Crea criterio.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Network policy disabled

Nome categoria nell'API: NETWORK_POLICY_DISABLED

Il criterio di rete è disabilitato sui cluster GKE.

La comunicazione pod-to-pod è aperta per impostazione predefinita. La comunicazione aperta consente ai pod di connettersi direttamente tra i nodi, con o senzaNetwork Address Translatione. Una risorsa NetworkPolicy è come un firewall a livello di pod che limita le connessioni tra i pod, a meno che la risorsa NetworkPolicy non consenta esplicitamente la connessione. Scopri come definire un criterio di rete.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Cluster Kubernetes nella console Google Cloud.

    Vai ai cluster Kubernetes

  2. Fai clic sul nome del cluster elencato nel risultato di Security Health Analytics.

  3. In Networking, nella riga relativa al Criterio di rete di Calico Kubernetes, fai clic su Modifica.

    Se la configurazione del cluster è stata modificata di recente, il pulsante di modifica potrebbe essere disabilitato. Se non riesci a modificare le impostazioni del cluster, attendi qualche minuto e riprova.

  4. Nella finestra di dialogo, seleziona Abilita criterio di rete di Calico Kubernetes per il piano di controllo e Abilita criterio di rete di Calico Kubernetes per i nodi.

  5. Fai clic su Salva modifiche.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Nodepool boot CMEK disabled

Nome categoria nell'API: NODEPOOL_BOOT_CMEK_DISABLED

I dischi di avvio in questo pool di nodi non sono criptati con chiavi di crittografia gestite dal cliente (CMEK). CMEK consente all'utente di configurare le chiavi di crittografia predefinite per i dischi di avvio in un pool di nodi.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Cluster Kubernetes nella console Google Cloud.

    Vai ai cluster Kubernetes

  2. Nell'elenco dei cluster, fai clic sul nome del cluster nel risultato.

  3. Fai clic sulla scheda Nodi.

  4. Per ogni pool di nodi default-pool, fai clic su Elimina .

  5. Quando ti viene richiesto di confermare, fai clic su Elimina.

  6. Per creare nuovi pool di nodi utilizzando CMEK, vedi Utilizzare le chiavi di crittografia gestite dal cliente (CMEK). CMEK comporta costi aggiuntivi relativi a Cloud KMS.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Nodepool secure boot disabled

Nome categoria nell'API: NODEPOOL_SECURE_BOOT_DISABLED

Avvio protetto disabilitato per un cluster GKE.

Abilita l'avvio protetto per i nodi GKE schermati per verificare le firme digitali dei componenti di avvio dei nodi. Per ulteriori informazioni, vedi Avvio protetto.

Per correggere questo esito, procedi nel seguente modo:

Una volta eseguito il provisioning di un pool di nodi, non è possibile aggiornarlo per abilitare l'avvio protetto. Devi creare un nuovo pool di nodi con Avvio protetto abilitato.

  1. Vai alla pagina Cluster Kubernetes nella console Google Cloud.

    Vai ai cluster Kubernetes

  2. Fai clic sul nome del cluster nel risultato.

  3. Fai clic su Aggiungi pool di nodi.

  4. Nel menu Pool di nodi, procedi nel seguente modo:

    1. Fai clic sul nome del nuovo pool di nodi per espandere la scheda.
    2. Seleziona Sicurezza, quindi, in Opzioni per nodi schermati, seleziona Abilita avvio protetto.
    3. Fai clic su Crea.
    4. Per eseguire la migrazione dei carichi di lavoro dai pool di nodi non conformi esistenti ai nuovi pool di nodi, consulta Migrazione dei carichi di lavoro a tipi di macchine diversi.
    5. Dopo lo spostamento dei carichi di lavoro, elimina il pool di nodi non conforme originale.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Non org IAM member

Nome categoria nell'API: NON_ORG_IAM_MEMBER

Un utente esterno all'organizzazione o al progetto dispone di autorizzazioni IAM su un progetto o un'organizzazione. Scopri di più sulle autorizzazioni IAM.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina IAM nella console Google Cloud.

    Vai a IAM

  2. Seleziona la casella di controllo accanto agli utenti esterni all'organizzazione o al progetto.

  3. Fai clic su Rimuovi.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Object versioning disabled

Nome categoria nell'API: OBJECT_VERSIONING_DISABLED

Il controllo delle versioni degli oggetti non è abilitato in un bucket di archiviazione in cui sono configurati i sink.

Per supportare il recupero degli oggetti eliminati o sovrascritti, Cloud Storage offre la funzionalità Controllo delle versioni degli oggetti. Abilita il controllo delle versioni degli oggetti per proteggere i dati di Cloud Storage dalla sovrascrittura o eliminazione accidentale. Scopri come abilitare il controllo delle versioni degli oggetti.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per risolvere questo problema, utilizza il comando gsutil versioning set on con il valore appropriato:

    gsutil versioning set on gs://finding.assetDisplayName

Sostituisci finding.assetDisplayName con il nome del bucket pertinente.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open Cassandra port

Nome categoria nell'API: OPEN_CASSANDRA_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte Cassandra potrebbero esporre i tuoi servizi Cassandra a utenti malintenzionati. Per maggiori informazioni, consulta la panoramica delle regole firewall VPC.

Le porte di servizio Cassandra sono:

  • TCP - 7000, 7001, 7199, 8888, 9042, 9160, 61620, 61621

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open ciscosecure websm port

Nome categoria nell'API: OPEN_CISCOSECURE_WEBSM_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte CiscoSecure/WebSM potrebbero esporre i servizi CiscoSecure/WebSM a utenti malintenzionati. Per ulteriori informazioni, consulta Panoramica delle regole firewall VPC.

Le porte del servizio CiscoSecure/WebSM sono:

  • TCP - 9090

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open directory services port

Nome categoria nell'API: OPEN_DIRECTORY_SERVICES_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte della directory potrebbero esporre i servizi di directory a utenti malintenzionati. Per maggiori informazioni, consulta la panoramica delle regole firewall VPC.

Le porte del servizio di directory sono:

  • TCP - 445
  • UDP - 445

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open DNS port

Nome categoria nell'API: OPEN_DNS_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte DNS potrebbero esporre i tuoi servizi DNS a utenti malintenzionati. Per maggiori informazioni, consulta la panoramica delle regole firewall VPC.

Le porte del servizio DNS sono:

  • TCP - 53
  • UDP - 53

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open Elasticsearch port

Nome categoria nell'API: OPEN_ELASTICSEARCH_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte Elasticsearch potrebbero esporre i servizi Elasticsearch a utenti malintenzionati. Per maggiori informazioni, consulta la panoramica delle regole firewall VPC.

Le porte del servizio Elasticsearch sono:

  • TCP - 9200, 9300

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open firewall

Nome categoria nell'API: OPEN_FIREWALL

Le regole firewall che consentono le connessioni da tutti gli indirizzi IP, come 0.0.0.0/0, o da tutte le porte, potrebbero esporre inutilmente le risorse ad attacchi provenienti da origini indesiderate. Queste regole dovrebbero essere rimosse o esplicitamente ristrette alle porte o agli intervalli IP di origine che ti interessano. Ad esempio, nelle applicazioni destinate a essere pubbliche, valuta la possibilità di limitare le porte consentite a quelle necessarie per l'applicazione, ad esempio 80 e 443. Se la tua applicazione deve consentire le connessioni da tutti gli indirizzi IP o da tutte le porte, valuta la possibilità di aggiungere l'asset a una lista consentita. Scopri di più sull'aggiornamento delle regole firewall.

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Regole firewall nella console Google Cloud.

    Vai a Regole firewall

  2. Fai clic sulla regola firewall elencata nel risultato di Security Health Analytics, quindi fai clic su Modifica.

  3. In Intervalli IP di origine, modifica i valori IP per limitare l'intervallo di IP consentiti.

  4. In Protocolli e porte, seleziona Protocolli e porte specificati, seleziona i protocolli consentiti e inserisci le porte consentite.

  5. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open FTP port

Nome categoria nell'API: OPEN_FTP_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte FTP potrebbero esporre i tuoi servizi FTP a utenti malintenzionati. Per maggiori informazioni, consulta la panoramica delle regole firewall VPC.

Le porte del servizio FTP sono:

  • TCP - 21

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open group IAM member

Nome categoria nell'API: OPEN_GROUP_IAM_MEMBER

Una o più entità che hanno accesso a un'organizzazione, un progetto o una cartella sono account Google Gruppi a cui è possibile partecipare senza approvazione.

I clienti Google Cloud possono utilizzare Google Gruppi per gestire i ruoli e le autorizzazioni per i membri delle loro organizzazioni o applicare criteri di accesso alle raccolte di utenti. Anziché concedere i ruoli direttamente ai membri, gli amministratori possono concedere ruoli e autorizzazioni ai gruppi Google e quindi aggiungere membri a gruppi specifici. I membri del gruppo ereditano tutti i ruoli e le autorizzazioni di un gruppo, consentendo così ai membri di accedere a risorse e servizi specifici.

Se un account Google Gruppi aperto viene utilizzato come entità in un'associazione IAM, chiunque può ereditare il ruolo associato entrando a far parte del gruppo direttamente o indirettamente (tramite un sottogruppo). Ti consigliamo di revocare i ruoli dei gruppi aperti o di limitare l'accesso a questi gruppi.

Per correggere questo risultato, esegui una delle seguenti procedure.

Rimuovi il gruppo dal criterio IAM

  1. Vai alla pagina IAM nella console Google Cloud.

    Passa a IAM

  2. Se necessario, seleziona il progetto, la cartella o l'organizzazione nel risultato.

  3. Revoca il ruolo di ogni gruppo aperto identificato nel risultato.

Limitare l'accesso ai gruppi aperti

  1. Accedi a Google Gruppi.
  2. Aggiorna le impostazioni di ogni gruppo aperto e dei relativi sottogruppi per specificare chi può unirsi al gruppo e chi deve approvarli.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open HTTP port

Nome categoria nell'API: OPEN_HTTP_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte HTTP potrebbero esporre i servizi HTTP a utenti malintenzionati. Per maggiori informazioni, consulta la panoramica delle regole firewall VPC.

Le porte del servizio HTTP sono:

  • TCP - 80

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open LDAP port

Nome categoria nell'API: OPEN_LDAP_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte LDAP potrebbero esporre i tuoi servizi LDAP a utenti malintenzionati. Per maggiori informazioni, consulta la panoramica delle regole firewall VPC.

Le porte del servizio LDAP sono:

  • TCP - 389, 636
  • UDP - 389

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open Memcached port

Nome categoria nell'API: OPEN_MEMCACHED_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte Memcached potrebbero esporre i tuoi servizi Memcached a utenti malintenzionati. Per maggiori informazioni, consulta la panoramica delle regole firewall VPC.

Le porte del servizio Memcached sono:

  • TCP - 11211, 11214, 11215
  • UDP - 11211, 11214, 11215

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open MongoDB port

Nome categoria nell'API: OPEN_MONGODB_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte MongoDB potrebbero esporre i tuoi servizi MongoDB a utenti malintenzionati. Per maggiori informazioni, consulta la panoramica delle regole firewall VPC.

Le porte di servizio MongoDB sono:

  • TCP - 27017, 27018, 27019

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open MySQL port

Nome categoria nell'API: OPEN_MYSQL_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte MySQL potrebbero esporre i tuoi servizi MySQL a utenti malintenzionati. Per maggiori informazioni, consulta la panoramica delle regole firewall VPC.

Le porte del servizio MySQL sono:

  • TCP - 3306

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open NetBIOS port

Nome categoria nell'API: `OPEN_NETBIOS_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte NetBIOS potrebbero esporre i servizi NetBIOS a utenti malintenzionati. Per maggiori informazioni, consulta la panoramica delle regole firewall VPC.

Le porte del servizio NetBIOS sono:

  • TCP - 137, 138, 139
  • UDP - 137, 138, 139

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open OracleDB port

Nome categoria nell'API: OPEN_ORACLEDB_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte OracleDB potrebbero esporre i tuoi servizi OracleDB a utenti malintenzionati. Per maggiori informazioni, consulta la panoramica delle regole firewall VPC.

Le porte del servizio OracleDB sono:

  • TCP - 1521, 2483, 2484
  • UDP - 2483, 2484

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open POP3 port

Nome categoria nell'API: OPEN_POP3_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte POP3 potrebbero esporre i servizi POP3 a utenti malintenzionati. Per maggiori informazioni, consulta la panoramica delle regole firewall VPC.

Le porte del servizio POP3 sono:

  • TCP - 110

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open PostgreSQL port

Nome categoria nell'API: OPEN_POSTGRESQL_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte PostgreSQL potrebbero esporre i tuoi servizi PostgreSQL a utenti malintenzionati. Per maggiori informazioni, consulta la panoramica delle regole firewall VPC.

Le porte del servizio PostgreSQL sono:

  • TCP - 5432
  • UDP - 5432

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open RDP port

Nome categoria nell'API: OPEN_RDP_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte RDP potrebbero esporre i tuoi servizi RDP a utenti malintenzionati. Per maggiori informazioni, consulta la panoramica delle regole firewall VPC.

Le porte del servizio RDP sono:

  • TCP - 3389
  • UDP - 3389

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open Redis port

Nome categoria nell'API: OPEN_REDIS_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte Redis potrebbero esporre i tuoi servizi Redis a utenti malintenzionati. Per maggiori informazioni, consulta la panoramica delle regole firewall VPC.

Le porte del servizio Redis sono:

  • TCP - 6379

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open SMTP port

Nome categoria nell'API: OPEN_SMTP_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte SMTP potrebbero esporre i tuoi servizi SMTP a utenti malintenzionati. Per maggiori informazioni, consulta la panoramica delle regole firewall VPC.

Le porte del servizio SMTP sono:

  • TCP - 25

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open SSH port

Nome categoria nell'API: OPEN_SSH_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte SSH potrebbero esporre i tuoi servizi SSH a utenti malintenzionati. Per maggiori informazioni, consulta la panoramica delle regole firewall VPC.

Le porte del servizio SSH sono:

  • SCTP - 22
  • TCP - 22

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Open Telnet port

Nome categoria nell'API: OPEN_TELNET_PORT

Le regole firewall che autorizzano qualsiasi indirizzo IP a connettersi alle porte Telnet potrebbero esporre i tuoi servizi Telnet a utenti malintenzionati. Per maggiori informazioni, consulta la panoramica delle regole firewall VPC.

Le porte del servizio Telnet sono:

  • TCP - 23

Questo risultato viene generato per le regole firewall vulnerabili, anche se le disabiliti intenzionalmente. I risultati attivi per le regole firewall disabilitate indicano configurazioni non sicure che consentono il traffico indesiderato se abilitato.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Firewall nella console Google Cloud.

    Vai a Firewall

  2. Nell'elenco delle regole firewall, fai clic sul nome della regola firewall nei risultati.

  3. Fai clic su Modifica.

  4. In Intervalli IP di origine, elimina 0.0.0.0/0.

  5. Aggiungi indirizzi IP o intervalli IP specifici da consentire di connettersi all'istanza.

  6. Aggiungi i protocolli specifici e le porte che vuoi aprire sull'istanza.

  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Org policy Confidential VM policy

Nome categoria nell'API: ORG_POLICY_CONFIDENTIAL_VM_POLICY

Una risorsa Compute Engine non è conforme al criterio dell'organizzazione constraints/compute.restrictNonConfidentialComputing. Per ulteriori informazioni su questo vincolo dei criteri dell'organizzazione, consulta Applicazione di vincoli dei criteri dell'organizzazione.

La tua organizzazione richiede che questa VM abbia il servizio Confidential VM abilitato. Le VM in cui questo servizio non è abilitato non utilizzeranno la crittografia della memoria di runtime, pertanto sono esposte ad attacchi alla memoria di runtime.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze VM nella console Google Cloud.

    Vai a Istanze VM

  2. Nell'elenco delle istanze, fai clic sul nome dell'istanza nel risultato.

  3. Se la VM non richiede il servizio Confidential VM, spostala in una nuova cartella o in un nuovo progetto.

  4. Se la VM richiede Confidential VM, fai clic su Elimina.

  5. Per creare una nuova istanza con Confidential VM abilitata, consulta la Guida rapida: creazione di un'istanza Confidential VM.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Org policy location restriction

Nome categoria nell'API: ORG_POLICY_LOCATION_RESTRICTION

Il vincolo gcp.resourceLocations del criterio dell'organizzazione consente di limitare la creazione di nuove risorse alle regioni Cloud che selezioni. Per saperne di più, consulta Limitazione delle località delle risorse.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

Il rilevatore ORG_POLICY_LOCATION_RESTRICTION copre molti tipi di risorse e le istruzioni di correzione sono diverse per ogni risorsa. L'approccio generale per risolvere le violazioni della località include quanto segue:

  1. Copia, sposta o esegui il backup della risorsa esterna alla regione o dei suoi dati in una risorsa che si trova all'interno della regione. Leggi la documentazione relativa ai singoli servizi per ricevere istruzioni sullo spostamento delle risorse.
  2. Elimina la risorsa originale al di fuori della regione o i relativi dati.

Questo approccio non è possibile per tutti i tipi di risorse. Per istruzioni, consulta i consigli personalizzati forniti nel risultato.

Ulteriori considerazioni

Per risolvere questo problema, considera quanto segue.

Risorse gestite

I cicli di vita delle risorse a volte sono gestiti e controllati da altre risorse. Ad esempio, un gruppo di istanze Compute Engine gestite crea ed elimina le istanze Compute Engine in base al criterio di scalabilità automatica del gruppo di istanze. Se le risorse gestite e di gestione rientrano nell'ambito dell'applicazione forzata della località, entrambe potrebbero essere segnalate come in violazione del criterio dell'organizzazione. La correzione dei risultati relativi alle risorse gestite deve essere eseguita sulla risorsa in gestione per garantire la stabilità operativa.

Risorse in uso

Alcune risorse sono utilizzate da altre risorse. Ad esempio, un disco di Compute Engine collegato a un'istanza di Compute Engine in esecuzione è considerato in uso dall'istanza. Se la risorsa in uso viola il criterio dell'organizzazione relativo alla località, devi assicurarti che la risorsa non sia in uso prima di risolvere la violazione della località.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

OS login disabled

Nome categoria nell'API: OS_LOGIN_DISABLED

OS Login è disabilitato su questa istanza Compute Engine.

OS Login consente la gestione centralizzata delle chiavi SSH con IAM e disabilita la configurazione delle chiavi SSH basata su metadati in tutte le istanze di un progetto. Scopri come impostare e configurare OS Login.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Metadati nella console Google Cloud.

    Vai a Metadati

  2. Fai clic prima su Modifica e poi su Aggiungi elemento.

  3. Aggiungi un elemento con chiave enable-oslogin e valore TRUE.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Over privileged account

Nome categoria nell'API: OVER_PRIVILEGED_ACCOUNT

Un nodo GKE utilizza il nodo di servizio predefinito di Compute Engine, che ha accesso ampio per impostazione predefinita e potrebbe disporre di privilegi in eccesso per l'esecuzione del tuo cluster GKE.

Per correggere questo esito, procedi nel seguente modo:

Segui le istruzioni per utilizzare gli account di servizio Google con privilegi minimi.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Over privileged scopes

Nome categoria nell'API: OVER_PRIVILEGED_SCOPES

Un account di servizio nodo ha ambiti di accesso ampio.

Gli ambiti di accesso sono il metodo legacy per specificare le autorizzazioni per l'istanza. Per ridurre la possibilità di escalation dei privilegi in un attacco, crea e utilizza un account di servizio con privilegi minimi per eseguire il cluster GKE.

Per risolvere questo risultato, segui le istruzioni per utilizzare gli account di servizio Google con privilegio minimo minimi.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Over privileged service account user

Nome categoria nell'API: OVER_PRIVILEGED_SERVICE_ACCOUNT_USER

Un utente ha i ruoli iam.serviceAccountUser o iam.serviceAccountTokenCreator a livello di progetto, cartella o organizzazione, anziché per un account di servizio specifico.

La concessione di questi ruoli a un utente per un progetto, una cartella o un'organizzazione consente all'utente di accedere a tutti gli account di servizio esistenti e futuri in quell'ambito. Questa situazione può comportare un'escalation involontaria dei privilegi. Per ulteriori informazioni, consulta Autorizzazioni dell'account di servizio.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina IAM nella console Google Cloud.

    Vai alla pagina IAM

  2. Se necessario, seleziona il progetto, la cartella o l'organizzazione nel risultato.

  3. Per ogni entità assegnata a roles/iam.serviceAccountUser o roles/iam.serviceAccountTokenCreator:

    1. Fai clic su Modifica.
    2. Nel riquadro Modifica autorizzazioni, accanto ai ruoli, fai clic su Elimina.
    3. Fai clic su Salva.
  4. Segui questa guida per concedere a singoli utenti l'autorizzazione a utilizzare l'identità di un singolo account di servizio. Devi seguire la guida per ogni account di servizio che vuoi consentire a utenti selezionati di assumere l'identità.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Owner not monitored

Nome categoria nell'API: OWNER_NOT_MONITORED

Le metriche e gli avvisi dei log non sono configurati per monitorare le assegnazioni o le modifiche alla proprietà del progetto.

Il ruolo IAM Proprietario dispone del livello di privilegio più elevato per un progetto. Per proteggere le risorse, configura gli avvisi per ricevere notifiche quando vengono aggiunti o rimossi nuovi proprietari. Per ulteriori informazioni, consulta la Panoramica delle metriche basate su log.

A seconda della quantità di informazioni, i costi di Cloud Monitoring possono essere significativi. Per comprendere l'utilizzo del servizio e i relativi costi, consulta Ottimizzazione dei costi per l'osservabilità di Google Cloud.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

Crea metrica

  1. Vai alla pagina Metriche basate su log nella console Google Cloud.

    Vai a Metriche basate su log

  2. Fai clic su Crea metrica.

  3. In Tipo di metrica, seleziona Contatore.

  4. In Dettagli:

    1. Imposta un Nome metrica di log.
    2. Aggiungi una descrizione.
    3. Imposta Unità su 1.
  5. In Selezione filtro, copia e incolla il seguente testo nella casella Crea filtro, sostituendo il testo esistente, se necessario:

      (protoPayload.serviceName="cloudresourcemanager.googleapis.com")
      AND (ProjectOwnership OR projectOwnerInvitee)
      OR (protoPayload.serviceData.policyDelta.bindingDeltas.action="REMOVE"
      AND protoPayload.serviceData.policyDelta.bindingDeltas.role="roles/owner")
      OR (protoPayload.serviceData.policyDelta.bindingDeltas.action="ADD"
      AND protoPayload.serviceData.policyDelta.bindingDeltas.role="roles/owner")
    

  6. Fai clic su Crea metrica. Viene visualizzata una conferma.

Crea criterio di avviso

  1. Nel pannello di navigazione della console Google Cloud, seleziona Logging, quindi Metriche basate su log:

    Vai a Metriche basate su log

  2. Nella sezione Metriche definite dall'utente, seleziona la metrica creata nella sezione precedente.
  3. Fai clic su Altro e poi su Crea avviso da metrica.

    Viene visualizzata la finestra di dialogo Nuova condizione con le opzioni della metrica e della trasformazione dei dati precompilate.

  4. Tocca Avanti.
    1. Rivedi le impostazioni precompilate. Ti consigliamo di modificare il Valore soglia.
    2. Fai clic su Nome condizione e inserisci un nome per la condizione.
  5. Tocca Avanti.
  6. Per aggiungere notifiche al criterio di avviso, fai clic su Canali di notifica. Nella finestra di dialogo, seleziona uno o più canali di notifica dal menu, quindi fai clic su OK.

    Per ricevere una notifica quando gli incidenti vengono aperti e chiusi, consulta Notifica sulla chiusura dell'incidente. Per impostazione predefinita, le notifiche vengono inviate solo quando gli incidenti sono aperti.

  7. (Facoltativo) Aggiorna la Durata della chiusura automatica dell'incidente. Questo campo determina quando Monitoring chiude gli incidenti in assenza di dati delle metriche.
  8. (Facoltativo) Fai clic su Documentazione, quindi aggiungi le informazioni che vuoi includere in un messaggio di notifica.
  9. Fai clic su Nome avviso e inserisci un nome per il criterio di avviso.
  10. Fai clic su Crea criterio.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Pod security policy disabled

Nome categoria nell'API: POD_SECURITY_POLICY_DISABLED

PodSecurityPolicy è disabilitato su un cluster GKE.

Un PodSecurityPolicy è una risorsa controller di ammissione che convalida le richieste di creazione e aggiornamento dei pod in un cluster. I cluster non accettano pod che non soddisfano le condizioni definite in PodSecurityPolicy.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per risolvere questo problema, definisci e autorizza PodSecurityPolicies e abilita il controller PodSecurityPolicy. Per le istruzioni, consulta la sezione Utilizzare PodSecurityPolicies.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Primitive roles used

Nome categoria nell'API: PRIMITIVE_ROLES_USED

Un utente ha uno dei seguenti ruoli IAM di base: roles/owner, roles/editor o roles/viewer. Questi ruoli sono troppo permissivi e non dovrebbero essere utilizzati. Devono essere assegnati solo per progetto.

Per ulteriori informazioni, consulta Informazioni sui ruoli.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina del criterio IAM nella console Google Cloud.

    Vai al criterio IAM

  2. Per ogni utente a cui è stato assegnato un ruolo originario, valuta la possibilità di utilizzare ruoli più granulari.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Private cluster disabled

Nome categoria nell'API: PRIVATE_CLUSTER_DISABLED

Un cluster GKE ha un cluster privato disabilitato.

I cluster privati consentono ai nodi di avere solo indirizzi IP privati. Questa funzionalità limita l'accesso a internet in uscita per i nodi. Se un nodo cluster non ha un indirizzo IP pubblico, non può essere trovato o esposto sulla rete internet pubblica. Puoi comunque instradare traffico a un nodo utilizzando un bilanciatore del carico interno. Per ulteriori informazioni, consulta Cluster privati.

Non puoi rendere privato un cluster esistente. Per correggere questo risultato, crea un nuovo cluster privato:

  1. Vai alla pagina Cluster Kubernetes nella console Google Cloud.

    Vai ai cluster Kubernetes

  2. Fai clic su Crea cluster.

  3. Nel menu di navigazione, in Cluster, seleziona Networking.

  4. Seleziona il pulsante di opzione per Cluster privato.

  5. In Opzioni di networking avanzate, seleziona la casella di controllo Abilita routing del traffico nativo VPC (mediante IP alias).

  6. Fai clic su Crea.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Private Google access disabled

Nome categoria nell'API: PRIVATE_GOOGLE_ACCESS_DISABLED

Esistono subnet private che non hanno accesso alle API pubbliche di Google.

L'accesso privato Google consente alle istanze VM con solo indirizzi IP interni (privati) di raggiungere gli indirizzi IP pubblici delle API e dei servizi Google.

Per ulteriori informazioni, consulta la pagina Configurazione dell'accesso privato di Google.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Reti VPC nella console Google Cloud.

    Vai a Reti VPC

  2. Nell'elenco delle reti, fai clic sul nome della rete desiderata.

  3. Nella pagina Dettagli rete VPC, fai clic sulla scheda Subnet.

  4. Nell'elenco delle subnet, fai clic sul nome della subnet associata al cluster Kubernetes nel risultato.

  5. Nella pagina Dettagli subnet, fai clic su Modifica .

  6. In Accesso privato Google, seleziona On.

  7. Fai clic su Salva.

  8. Per rimuovere gli IP pubblici (esterni) dalle istanze VM il cui unico traffico esterno è verso le API di Google, consulta Annullare l'assegnazione di un indirizzo IP esterno statico.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Public bucket ACL

Nome categoria nell'API: PUBLIC_BUCKET_ACL

Un bucket è pubblico e chiunque su internet può accedervi.

Per ulteriori informazioni, consulta la Panoramica del controllo dell'accesso.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Browser Storage nella console Google Cloud.

    Vai al browser Storage

  2. Seleziona il bucket elencato nel risultato Security Health Analytics.

  3. Nella pagina Dettagli bucket, fai clic sulla scheda Autorizzazioni.

  4. Accanto a Visualizza per, fai clic su Ruoli.

  5. Nella casella Filtro, cerca allUsers e allAuthenticatedUsers.

  6. Fai clic su Elimina per rimuovere tutte le autorizzazioni IAM concesse a allUsers e allAuthenticatedUsers.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Public Compute image

Nome categoria nell'API: PUBLIC_COMPUTE_IMAGE

Un'immagine Compute Engine è pubblica e chiunque su internet può accedervi. allUsers rappresenta chiunque su internet, mentre allAuthenticatedUsers rappresenta chiunque sia autenticato con un Account Google; nessuno dei due è vincolato agli utenti nella tua organizzazione.

Le immagini Compute Engine potrebbero contenere informazioni sensibili come chiavi di crittografia o software concesso in licenza. Queste informazioni sensibili non devono essere accessibili al pubblico. Se vuoi rendere pubblica l'immagine Compute Engine, assicurati che non contenga informazioni sensibili.

Per ulteriori informazioni, consulta Panoramica del controllo dell'accesso.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina delle immagini di Compute Engine nella console Google Cloud.

    Vai alle immagini di Compute Engine

  2. Seleziona la casella accanto all'immagine public-image, quindi fai clic su Mostra riquadro informazioni.

  3. Nella casella Filtro, cerca allUsers e allAuthenticatedUsers tra le entità.

  4. Espandi il ruolo per cui vuoi rimuovere gli utenti.

  5. Fai clic su Elimina per rimuovere un utente da quel ruolo.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Public dataset

Nome categoria nell'API: PUBLIC_DATASET

Un set di dati BigQuery è pubblico e accessibile a chiunque su internet. L'entità IAM allUsers rappresenta chiunque su internet, mentre allAuthenticatedUsers rappresenta chiunque abbia eseguito l'accesso a un servizio Google; nessuno dei due è vincolato agli utenti nella tua organizzazione.

Per maggiori informazioni, consulta Controllo dell'accesso ai set di dati.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Explorer di BigQuery nella console Google Cloud.

    Vai al set di dati BigQuery

  2. Nell'elenco dei set di dati, fai clic sul nome del set di dati identificato nel risultato. Viene visualizzato il riquadro Informazioni sul set di dati.

  3. Nella parte superiore del riquadro Informazioni sul set di dati, fai clic su CONDIVISIONE.

  4. Nel menu a discesa, fai clic su Autorizzazioni.

  5. Nel riquadro Autorizzazioni set di dati, inserisci allUsers e allAuthenticatedUsers e rimuovi l'accesso per queste entità.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Public IP address

Nome categoria nell'API: PUBLIC_IP_ADDRESS

Un'istanza Compute Engine ha un indirizzo IP pubblico.

Per ridurre la superficie di attacco della tua organizzazione, evita di assegnare indirizzi IP pubblici alle VM. Le istanze arrestate potrebbero comunque essere contrassegnate con un rilevamento di IP pubblico, ad esempio se le interfacce di rete sono configurate per assegnare un IP pubblico temporaneo all'avvio. Assicurati che le configurazioni di rete per le istanze arrestate non includano l'accesso esterno.

Per maggiori informazioni, consulta Connessione sicura alle istanze VM.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze VM nella console Google Cloud.

    Vai a Istanze VM

  2. Nell'elenco delle istanze, seleziona la casella accanto al nome dell'istanza nel risultato.

  3. Fai clic su Modifica.

  4. Per ogni interfaccia in Interfacce di rete, fai clic su Modifica e imposta IP esterno su Nessuno.

  5. Fai clic su Fine, poi su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Public log bucket

Nome categoria nell'API: PUBLIC_LOG_BUCKET

Questo risultato non è disponibile per le attivazioni a livello di progetto.

Un bucket di archiviazione è pubblico e viene utilizzato come sink di log, il che significa che chiunque su internet può accedere ai log archiviati in questo bucket. allUsers rappresenta chiunque su internet, mentre allAuthenticatedUsers rappresenta chiunque abbia eseguito l'accesso a un servizio Google; nessuno dei due è vincolato agli utenti nella tua organizzazione.

Per ulteriori informazioni, consulta la Panoramica del controllo dell'accesso.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina del browser Cloud Storage nella console Google Cloud.

    Vai al browser Cloud Storage

  2. Nell'elenco dei bucket, fai clic sul nome del bucket indicato nei risultati.

  3. Fai clic sulla scheda Autorizzazioni.

  4. Rimuovi allUsers e allAuthenticatedUsers dall'elenco delle entità.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Public SQL instance

Nome categoria nell'API: PUBLIC_SQL_INSTANCE

L'istanza SQL ha 0.0.0.0/0 come rete consentita. Ciò significa che qualsiasi client IPv4 può superare il firewall di rete e fare tentativi di accesso all'istanza, inclusi i client che potresti non voler consentire. I client devono comunque avere credenziali valide per accedere all'istanza.

Per ulteriori informazioni, consulta Autorizzazione con reti autorizzate.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nel pannello di navigazione, fai clic su Connessioni.

  5. In Reti autorizzate, elimina 0.0.0.0/0 e aggiungi indirizzi IP o intervalli IP specifici da consentire la connessione all'istanza.

  6. Fai clic su Fine, poi su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Pubsub CMEK disabled

Nome categoria nell'API: PUBSUB_CMEK_DISABLED

Un argomento Pub/Sub non è criptato con chiavi di crittografia gestite dal cliente (CMEK).

Con CMEK, le chiavi che crei e gestisci in Cloud KMS eseguono il wrapping delle chiavi utilizzate da Google per criptare i tuoi dati, offrendoti un maggiore controllo sull'accesso ai dati.

Per risolvere il problema, elimina l'argomento esistente e creane uno nuovo:

  1. Vai alla pagina Argomenti di Pub/Sub nella console Google Cloud.

    Vai ad Argomenti

  2. Se necessario, seleziona il progetto contenente l'argomento Pub/Sub.

  3. Seleziona la casella di controllo accanto all'argomento elencato nel risultato, quindi fai clic su Elimina.

  4. Per creare un nuovo argomento Pub/Sub con CMEK abilitata, vedi Utilizzo delle chiavi di crittografia gestite dal cliente. CMEK comporta costi aggiuntivi relativi a Cloud KMS.

  5. Pubblica i risultati o altri dati nell'argomento Pub/Sub abilitato per CMEK.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Route not monitored

Nome categoria nell'API: ROUTE_NOT_MONITORED

Le metriche e gli avvisi dei log non sono configurati per monitorare le modifiche alle route di rete VPC.

Le route Google Cloud sono destinazioni e hop che definiscono il percorso seguito dal traffico di rete da un'istanza VM a un IP di destinazione. Monitorando le modifiche alle tabelle delle route, puoi contribuire a garantire che tutto il traffico VPC passi attraverso un percorso previsto.

Per ulteriori informazioni, consulta la Panoramica delle metriche basate su log.

A seconda della quantità di informazioni, i costi di Cloud Monitoring possono essere significativi. Per comprendere l'utilizzo del servizio e i relativi costi, consulta Ottimizzazione dei costi per l'osservabilità di Google Cloud.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

Crea metrica

  1. Vai alla pagina Metriche basate su log nella console Google Cloud.

    Vai a Metriche basate su log

  2. Fai clic su Crea metrica.

  3. In Tipo di metrica, seleziona Contatore.

  4. In Dettagli:

    1. Imposta un Nome metrica di log.
    2. Aggiungi una descrizione.
    3. Imposta Unità su 1.
  5. In Selezione filtro, copia e incolla il seguente testo nella casella Crea filtro, sostituendo il testo esistente, se necessario:

      resource.type="gce_route"
      AND (protoPayload.methodName:"compute.routes.delete"
      OR protoPayload.methodName:"compute.routes.insert")
    

  6. Fai clic su Crea metrica. Viene visualizzata una conferma.

Crea criterio di avviso

  1. Nel pannello di navigazione della console Google Cloud, seleziona Logging, quindi Metriche basate su log:

    Vai a Metriche basate su log

  2. Nella sezione Metriche definite dall'utente, seleziona la metrica creata nella sezione precedente.
  3. Fai clic su Altro e poi su Crea avviso da metrica.

    Viene visualizzata la finestra di dialogo Nuova condizione con le opzioni della metrica e della trasformazione dei dati precompilate.

  4. Tocca Avanti.
    1. Rivedi le impostazioni precompilate. Ti consigliamo di modificare il Valore soglia.
    2. Fai clic su Nome condizione e inserisci un nome per la condizione.
  5. Tocca Avanti.
  6. Per aggiungere notifiche al criterio di avviso, fai clic su Canali di notifica. Nella finestra di dialogo, seleziona uno o più canali di notifica dal menu, quindi fai clic su OK.

    Per ricevere una notifica quando gli incidenti vengono aperti e chiusi, consulta Notifica sulla chiusura dell'incidente. Per impostazione predefinita, le notifiche vengono inviate solo quando gli incidenti sono aperti.

  7. (Facoltativo) Aggiorna la Durata della chiusura automatica dell'incidente. Questo campo determina quando Monitoring chiude gli incidenti in assenza di dati delle metriche.
  8. (Facoltativo) Fai clic su Documentazione, quindi aggiungi le informazioni che vuoi includere in un messaggio di notifica.
  9. Fai clic su Nome avviso e inserisci un nome per il criterio di avviso.
  10. Fai clic su Crea criterio.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Redis role used on org

Nome categoria nell'API: REDIS_ROLE_USED_ON_ORG

Questo risultato non è disponibile per le attivazioni a livello di progetto.

Viene assegnato un ruolo IAM Redis a livello di organizzazione o cartella.

I seguenti ruoli IAM Redis devono essere assegnati solo per progetto, non a livello di organizzazione o cartella:

  • roles/redis.admin
  • roles/redis.viewer
  • roles/redis.editor

Per ulteriori informazioni, vedi Controllo dell'accesso e autorizzazioni.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina del criterio IAM nella console Google Cloud.

    Vai al criterio IAM

  2. Rimuovi i ruoli IAM Redis indicati nel risultato e aggiungili ai singoli progetti.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Release channel disabled

Nome categoria nell'API: RELEASE_CHANNEL_DISABLED

Un cluster GKE non è iscritto a un canale di rilascio.

Iscriviti a un canale di rilascio per automatizzare gli upgrade delle versioni al cluster GKE. Queste funzionalità riducono inoltre la complessità della gestione delle versioni rispetto al numero di funzionalità e al livello di stabilità richiesti. Per scoprire di più, consulta la sezione Canali di rilascio.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Cluster Kubernetes nella console Google Cloud.

    Vai ai cluster Kubernetes

  2. Nella sezione Impostazioni di base del cluster, fai clic sull'icona di modifica () nella riga Canale di rilascio.

    Se la configurazione del cluster è stata modificata di recente, il pulsante di modifica potrebbe essere disabilitato. Se non riesci a modificare le impostazioni del cluster, attendi alcuni minuti e riprova.

  3. Nella finestra di dialogo, seleziona Canale di rilascio, quindi scegli il canale di rilascio a cui vuoi iscriverti.

    Se non è possibile eseguire l'upgrade della versione del piano di controllo del cluster a un canale di rilascio, quel canale potrebbe essere disabilitato come opzione.

  4. Fai clic su Salva modifiche.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

RSASHA1 for signing

Nome categoria nell'API: RSASHA1_FOR_SIGNING

RSASHA1 viene utilizzato per la firma delle chiavi nelle zone Cloud DNS. L'algoritmo usato per la firma della chiave non deve essere debole.

Per risolvere questo risultato, sostituisci l'algoritmo con uno consigliato seguendo la guida Utilizzo delle opzioni di firma avanzate.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Service account key not rotated

Nome categoria nell'API: SERVICE_ACCOUNT_KEY_NOT_ROTATED

Questo risultato non è disponibile per le attivazioni a livello di progetto.

Una chiave dell'account di servizio gestita dall'utente non viene ruotata per più di 90 giorni.

In generale, le chiavi degli account di servizio gestite dall'utente devono essere ruotate almeno ogni 90 giorni per garantire che non sia possibile accedere ai dati con una vecchia chiave che potrebbe essere stata smarrita, compromessa o rubata. Per maggiori informazioni, consulta Ruotare le chiavi degli account di servizio per ridurre i rischi per la sicurezza causati da chiavi divulgate.

Se hai generato personalmente la coppia di chiave pubblica/privata, l'hai archiviata in un modulo di sicurezza hardware (HSM) e hai caricato la chiave pubblica su Google, potresti non dover ruotare la chiave ogni 90 giorni. Puoi invece ruotare la chiave se ritieni che sia stata compromessa.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Account di servizio nella console Google Cloud.

    Vai ad Account di servizio

  2. Se necessario, seleziona il progetto indicato nel risultato.

  3. Nell'elenco degli account di servizio, individua l'account di servizio elencato nei risultati e fai clic su Elimina. Prima di procedere, valuta l'impatto che l'eliminazione di un account di servizio potrebbe avere sulle tue risorse di produzione.

  4. Crea una nuova chiave dell'account di servizio per sostituire quella precedente. Per ulteriori informazioni, consulta la sezione Creazione di chiavi degli account di servizio.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Service account role separation

Nome categoria nell'API: SERVICE_ACCOUNT_ROLE_SEPARATION

Questo risultato non è disponibile per le attivazioni a livello di progetto.

A una o più entità della tua organizzazione sono state assegnate più autorizzazioni per gli account di servizio. Nessun account deve avere contemporaneamente le autorizzazioni Amministratore account di servizio e altre autorizzazioni dell'account di servizio. Per ulteriori informazioni sugli account di servizio e sui ruoli a loro disponibili, vedi Account di servizio.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina IAM nella console Google Cloud.

    Vai a IAM

  2. Per ogni entità elencata nel risultato:

    1. Controlla se il ruolo è stato ereditato da una cartella o una risorsa dell'organizzazione esaminando la colonna Ereditarietà. Se la colonna contiene un link a una risorsa padre, fai clic sul link per passare alla pagina IAM della risorsa padre.
    2. Fai clic su Modifica accanto a un'entità.
    3. Per rimuovere le autorizzazioni, fai clic su Elimina accanto ad Amministratore account di servizio. Se vuoi rimuovere tutte le autorizzazioni dell'account di servizio, fai clic su Elimina accanto a tutte le altre autorizzazioni.
  3. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Shielded VM disabled

Nome categoria nell'API: SHIELDED_VM_DISABLED

La Shielded VM è disabilitata su questa istanza Compute Engine.

Le Shielded VM sono macchine virtuali (VM) su Google Cloud protette da un set di controlli di sicurezza che contribuiscono alla difesa da rootkit e bootkit. Le Shielded VM aiutano a garantire che il bootloader e il firmware siano firmati e verificati. Scopri di più sulla VM schermata.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze VM nella console Google Cloud.

    Vai a Istanze VM

  2. Seleziona l'istanza relativa al risultato di Security Health Analytics.

  3. Nella pagina Dettagli istanza che viene caricata, fai clic su Arresta.

  4. Una volta arrestata l'istanza, fai clic su Modifica.

  5. Nella sezione Shielded VM, attiva Attiva vTPM e Attiva il monitoraggio dell'integrità per abilitare la Shielded VM.

  6. Facoltativamente, se non usi driver personalizzati o non firmati, abilita anche Avvio protetto.

  7. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Dettagli istanza.

  8. Fai clic su Avvia per avviare l'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL CMEK disabled

Nome categoria nell'API: SQL_CMEK_DISABLED

Un'istanza di database SQL non utilizza chiavi di crittografia gestite dal cliente (CMEK).

Con CMEK, le chiavi che crei e gestisci in Cloud KMS eseguono il wrapping delle chiavi utilizzate da Google per criptare i tuoi dati, offrendoti un maggiore controllo sull'accesso ai dati. Per saperne di più, consulta le panoramiche di CMEK per il tuo prodotto: Cloud SQL per MySQL, Cloud SQL per PostgreSQL o Cloud SQL per SQL Server. CMEK comporta costi aggiuntivi relativi a Cloud KMS.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Elimina.

  4. Per creare una nuova istanza con CMEK abilitata, segui le istruzioni per configurare CMEK per il tuo prodotto:

    1. Cloud SQL per MySQL
    2. Cloud SQL per PostgreSQL
    3. Cloud SQL per SQL Server

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL contained database authentication

Nome categoria nell'API: SQL_CONTAINED_DATABASE_AUTHENTICATION

Un'istanza di database Cloud SQL per SQL Server non ha il flag di database autenticazione database contenuti impostato su Off.

Il flag autenticazione database contenuti determina se puoi creare o collegare database contenuti al motore di database. Un database contenuto include tutte le impostazioni e i metadati necessari per definire il database e non ha dipendenze di configurazione sull'istanza del motore del database in cui è installato.

L'attivazione di questo flag non è consigliata per i seguenti motivi:

  • Gli utenti possono connettersi al database senza autenticazione a livello del motore di database.
  • Isolare il database dal motore di database consente di spostarlo in un'altra istanza di SQL Server.

I database contenuti affrontano minacce uniche che devono essere comprese e ridotte dagli amministratori del motore di database SQL Server. La maggior parte delle minacce deriva dal processo di autenticazione UTENTE CON PASSWORD, che sposta i confini dell'autenticazione dal livello del motore di database a quello del database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag di database contained database authentication sul valore Off.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL cross DB ownership chaining

Nome categoria nell'API: SQL_CROSS_DB_OWNERSHIP_CHAINING

Un'istanza di database Cloud SQL per SQL Server non ha il flag di database cross dbproperty chaining impostato su Off.

Il flag cross dbproperty chaining consente di controllare il concatenamento della proprietà cross-database a livello di database o di permettere il concatenamento della proprietà cross-database per tutte le istruzioni di database.

L'abilitazione di questo flag non è consigliata a meno che tutti i database ospitati dall'istanza di SQL Server non partecipino al concatenamento della proprietà tra database e tenendo presenti le implicazioni per la sicurezza di questa impostazione.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag di database cross dbproperty chaining con il valore Off.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL external scripts enabled

Nome categoria nell'API: SQL_EXTERNAL_SCRIPTS_ENABLED

Un'istanza di database Cloud SQL per SQL Server non ha il flag di database external script enabled impostato su Off.

Se attivata, questa impostazione consente l'esecuzione di script con alcune estensioni di lingua da remoto. Poiché questa funzionalità può influire negativamente sulla sicurezza del sistema, ti consigliamo di disattivarla.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag di database external script enabled con il valore Off.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL instance not monitored

Nome categoria nell'API: SQL_INSTANCE_NOT_MONITORED

Questo risultato non è disponibile per le attivazioni a livello di progetto.

Le metriche e gli avvisi dei log non sono configurati per monitorare le modifiche alla configurazione delle istanze Cloud SQL.

La configurazione errata delle opzioni delle istanze SQL può causare rischi per la sicurezza. La disattivazione delle opzioni di backup automatico e ad alta disponibilità potrebbe influire sulla continuità aziendale e non limitare le reti autorizzate potrebbe aumentare l'esposizione a reti non attendibili. Il monitoraggio delle modifiche alla configurazione delle istanze SQL consente di ridurre il tempo necessario per rilevare e correggere gli errori di configurazione.

Per ulteriori informazioni, consulta la Panoramica delle metriche basate su log.

A seconda della quantità di informazioni, i costi di Cloud Monitoring possono essere significativi. Per comprendere l'utilizzo del servizio e i relativi costi, consulta Ottimizzazione dei costi per l'osservabilità di Google Cloud.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

Crea metrica

  1. Vai alla pagina Metriche basate su log nella console Google Cloud.

    Vai a Metriche basate su log

  2. Fai clic su Crea metrica.

  3. In Tipo di metrica, seleziona Contatore.

  4. In Dettagli:

    1. Imposta un Nome metrica di log.
    2. Aggiungi una descrizione.
    3. Imposta Unità su 1.
  5. In Selezione filtro, copia e incolla il seguente testo nella casella Crea filtro, sostituendo il testo esistente, se necessario:

      protoPayload.methodName="cloudsql.instances.update"
      OR protoPayload.methodName="cloudsql.instances.create"
      OR protoPayload.methodName="cloudsql.instances.delete"
    

  6. Fai clic su Crea metrica. Viene visualizzata una conferma.

Crea criterio di avviso

  1. Nel pannello di navigazione della console Google Cloud, seleziona Logging, quindi Metriche basate su log:

    Vai a Metriche basate su log

  2. Nella sezione Metriche definite dall'utente, seleziona la metrica creata nella sezione precedente.
  3. Fai clic su Altro e poi su Crea avviso da metrica.

    Viene visualizzata la finestra di dialogo Nuova condizione con le opzioni della metrica e della trasformazione dei dati precompilate.

  4. Tocca Avanti.
    1. Rivedi le impostazioni precompilate. Ti consigliamo di modificare il Valore soglia.
    2. Fai clic su Nome condizione e inserisci un nome per la condizione.
  5. Tocca Avanti.
  6. Per aggiungere notifiche al criterio di avviso, fai clic su Canali di notifica. Nella finestra di dialogo, seleziona uno o più canali di notifica dal menu, quindi fai clic su OK.

    Per ricevere una notifica quando gli incidenti vengono aperti e chiusi, consulta Notifica sulla chiusura dell'incidente. Per impostazione predefinita, le notifiche vengono inviate solo quando gli incidenti sono aperti.

  7. (Facoltativo) Aggiorna la Durata della chiusura automatica dell'incidente. Questo campo determina quando Monitoring chiude gli incidenti in assenza di dati delle metriche.
  8. (Facoltativo) Fai clic su Documentazione, quindi aggiungi le informazioni che vuoi includere in un messaggio di notifica.
  9. Fai clic su Nome avviso e inserisci un nome per il criterio di avviso.
  10. Fai clic su Crea criterio.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL local infile

Nome categoria nell'API: SQL_LOCAL_INFILE

Un'istanza di database Cloud SQL per MySQL non ha il flag di database local_infile impostato su Off. A causa di problemi di sicurezza associati al flag local_infile, il flag deve essere disabilitato. Per maggiori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag del database local_infile su Off.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL log checkpoints disabled

Nome categoria nell'API: SQL_LOG_CHECKPOINTS_DISABLED

Un'istanza di database Cloud SQL per PostgreSQL non ha il flag di database log_checkpoints impostato su On.

L'abilitazione di log_checkpoints fa sì che i punti di controllo e i punti di riavvio vengano registrati nel log del server. Alcune statistiche sono incluse nei messaggi di log, tra cui il numero di buffer scritti e il tempo di scrittura.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag di database log_checkpoints con il valore On.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL log connections disabled

Nome categoria nell'API: SQL_LOG_CONNECTIONS_DISABLED

Un'istanza di database Cloud SQL per PostgreSQL non ha il flag di database log_connections impostato su On.

L'abilitazione dell'impostazione log_connections comporta la registrazione dei tentativi di connessione al server e il corretto completamento dell'autenticazione client. I log possono essere utili per la risoluzione dei problemi e per verificare i tentativi di connessione insoliti al server.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag del database log_connections con il valore On.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL log disconnections disabled

Nome categoria nell'API: SQL_LOG_DISCONNECTIONS_DISABLED

Un'istanza di database Cloud SQL per PostgreSQL non ha il flag di database log_disconnections impostato su On.

Se si abilita l'impostazione log_disconnections vengono create voci di log alla fine di ogni sessione. I log sono utili per la risoluzione dei problemi e per confermare le attività insolite in un periodo di tempo. Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag di database log_disconnections con il valore On.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL log duration disabled

Nome categoria nell'API: SQL_LOG_DURATION_DISABLED

Il flag di database log_duration non è impostato su On per un'istanza di database Cloud SQL per PostgreSQL.

Quando log_duration è abilitato, questa impostazione fa sì che vengano registrati i tempi di esecuzione e la durata di ogni istruzione completata. Monitorare il tempo necessario per eseguire le query può essere fondamentale per identificare le query lente e risolvere i problemi del database.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag del database log_duration su On.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL log error verbosity

Nome categoria nell'API: SQL_LOG_ERROR_VERBOSITY

Un'istanza di database Cloud SQL per PostgreSQL non ha il flag di database log_error_verbosity impostato su default o verbose.

Il flag log_error_verbosity controlla la quantità di dettagli nei messaggi registrati. Maggiore è il livello di dettaglio, maggiori saranno i dettagli registrati nei messaggi. Ti consigliamo di impostare questo flag su default o dettagliato.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag di database log_error_verbosity su default o verbose.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL log lock waits disabled

Nome categoria nell'API: SQL_LOG_LOCK_WAITS_DISABLED

Un'istanza di database Cloud SQL per PostgreSQL non ha il flag di database log_lock_waits impostato su On.

L'abilitazione dell'impostazione log_lock_waits crea voci di log quando il tempo di attesa della sessione richiede più tempo rispetto al tempo deadlock_timeout per acquisire un blocco. I log sono utili per determinare se i tempi di attesa del blocco compromettono le prestazioni.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag di database log_lock_waits sul valore On.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL log min duration statement enabled

Nome categoria nell'API: SQL_LOG_MIN_DURATION_STATEMENT_ENABLED

Un'istanza di database Cloud SQL per PostgreSQL non ha il flag di database log_min_duration_statement impostato su -1.

Il flag log_min_duration_statement causa la registrazione delle istruzioni SQL eseguite per un periodo di tempo più lungo di quello specificato. Valuta la possibilità di disabilitare questa impostazione perché le istruzioni SQL potrebbero contenere informazioni sensibili che non devono essere registrate. Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag di database log_min_duration_statement sul valore -1.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL log min error statement

Nome categoria nell'API: SQL_LOG_MIN_ERROR_STATEMENT

Per un'istanza di database Cloud SQL per PostgreSQL non è impostato correttamente il flag di database log_min_error_statement.

Il flag log_min_error_statement controlla se le istruzioni SQL che causano condizioni di errore vengono registrate nei log del server. Le istruzioni SQL con il livello di gravità specificato o superiore vengono registrate con messaggi per le istruzioni con errori. Maggiore è la gravità, minore è il numero di messaggi registrato.

Se log_min_error_statement non è impostato sul valore corretto, i messaggi potrebbero non essere classificati come messaggi di errore. Se la gravità impostata è troppo bassa, il numero di messaggi potrebbe aumentare e potrebbe essere difficile trovare gli errori veri e propri. Se la gravità impostata è troppo elevata, è possibile che i messaggi relativi agli errori effettivi non vengano registrati.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag di database log_min_error_statement su uno dei seguenti valori consigliati, in base al criterio di logging della tua organizzazione.

    • debug5
    • debug4
    • debug3
    • debug2
    • debug1
    • info
    • notice
    • warning
    • error
  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL log min error statement severity

Nome categoria nell'API: SQL_LOG_MIN_ERROR_STATEMENT_SEVERITY

Per un'istanza di database Cloud SQL per PostgreSQL non è impostato correttamente il flag di database log_min_error_statement.

Il flag log_min_error_statement controlla se le istruzioni SQL che causano condizioni di errore vengono registrate nei log del server. Le istruzioni SQL con il livello di gravità specificato o più restrittivo vengono registrate con messaggi per le istruzioni con errori. Maggiore è la gravità, minore è il numero di messaggi registrato.

Se log_min_error_statement non è impostato sul valore corretto, i messaggi potrebbero non essere classificati come messaggi di errore. Se la gravità impostata è troppo bassa, il numero di messaggi potrebbe aumentare e sarebbe difficile trovare gli errori veri e propri. Un livello di gravità troppo alto (troppo rigido) potrebbe far sì che i messaggi relativi agli errori effettivi non vengano registrati.

Ti consigliamo di impostare questo flag su error o su un valore più restrittivo.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag di database log_min_error_statement su uno dei seguenti valori consigliati, in base al criterio di logging della tua organizzazione.

    • error
    • log
    • fatal
    • panic
  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL log min messages

Nome categoria nell'API: SQL_LOG_MIN_MESSAGES

Per un'istanza di database Cloud SQL per PostgreSQL non è impostato il flag di database log_min_messages su warning minimo.

Il flag log_min_messages controlla quali livelli di messaggi vengono registrati nei log del server. Più elevata è la gravità, minore è il numero di messaggi registrato. L'impostazione di una soglia troppo bassa può comportare un aumento della dimensione e della durata dell'archiviazione dei log, il che complica l'individuazione di errori effettivi.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag di database log_min_messages su uno dei seguenti valori consigliati, in base al criterio di logging della tua organizzazione.

    • debug5
    • debug4
    • debug3
    • debug2
    • debug1
    • info
    • notice
    • warning
  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL log executor stats enabled

Nome categoria nell'API: SQL_LOG_EXECUTOR_STATS_ENABLED

Un'istanza di database Cloud SQL per PostgreSQL non ha il flag di database log_executor_stats impostato su Off.

Quando il flag log_executor_stats è attivato, le statistiche sulle prestazioni dell'esecutore vengono incluse nei log PostgreSQL per ogni query. Questa impostazione può essere utile per la risoluzione dei problemi, ma può aumentare notevolmente il numero di log e il sovraccarico delle prestazioni.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag di database log_executor_stats su Off.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL log hostname enabled

Nome categoria nell'API: 'SQL_LOG_HOSTNAME_ENABLED

Un'istanza di database Cloud SQL per PostgreSQL non ha il flag di database log_hostname impostato su Off.

Quando il flag log_hostname è attivato, viene registrato il nome host dell'host che si connette. Per impostazione predefinita, i messaggi di log della connessione mostrano solo l'indirizzo IP. Questa impostazione può essere utile per la risoluzione dei problemi. Tuttavia, può verificarsi l'overhead delle prestazioni del server, poiché per ogni istruzione registrata, è necessaria una risoluzione DNS per convertire un indirizzo IP in un nome host.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag di database log_hostname su Off.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL log parser stats enabled

Nome categoria nell'API: SQL_LOG_PARSER_STATS_ENABLED

Un'istanza di database Cloud SQL per PostgreSQL non ha il flag di database log_parser_stats impostato su Off.

Quando il flag log_parser_stats è attivato, le statistiche sulle prestazioni del parser vengono incluse nei log PostgreSQL per ogni query. Questo può essere utile per la risoluzione dei problemi, ma può aumentare notevolmente il numero di log e il sovraccarico delle prestazioni.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag di database log_parser_stats su Off.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL log planner stats enabled

Nome categoria nell'API: SQL_LOG_PLANNER_STATS_ENABLED

Un'istanza di database Cloud SQL per PostgreSQL non ha il flag di database log_planner_stats impostato su Off.

Quando il flag log_planner_stats è attivato, viene utilizzato un metodo di profilazione non elaborato per registrare le statistiche sulle prestazioni dello strumento di pianificazione PostgreSQL. Questo può essere utile per la risoluzione dei problemi, ma può aumentare notevolmente il numero di log e il sovraccarico delle prestazioni.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag di database log_planner_stats su Off.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL log statement

Nome categoria nell'API: SQL_LOG_STATEMENT

Un'istanza di database Cloud SQL per PostgreSQL non ha il flag di database log_statement impostato su ddl.

Il valore di questo flag controlla quali istruzioni SQL vengono registrate. Il logging aiuta a risolvere i problemi operativi e consente l'analisi forense. Se questo flag non è impostato sul valore corretto, le informazioni pertinenti potrebbero essere ignorate o nascoste in troppi messaggi. Si consiglia un valore pari a ddl (tutte le istruzioni di definizione dei dati), se non diversamente indicato dal criterio di logging dell'organizzazione.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag di database log_statement su ddl.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL log statement stats enabled

Nome categoria nell'API: SQL_LOG_STATEMENT_STATS_ENABLED

Un'istanza di database Cloud SQL per PostgreSQL non ha il flag di database log_statement_stats impostato su Off.

Quando il flag log_statement_stats è attivato, le statistiche sulle prestazioni end-to-end vengono incluse nei log PostgreSQL per ogni query. Questa impostazione può essere utile per la risoluzione dei problemi, ma può aumentare notevolmente il numero di log e il sovraccarico delle prestazioni.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag di database log_statement_stats su Off.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL log temp files

Nome categoria nell'API: SQL_LOG_TEMP_FILES

Un'istanza di database Cloud SQL per PostgreSQL non ha il flag di database log_temp_files impostato su 0.

Potrebbero essere creati file temporanei per ordinamenti, hash e risultati temporanei delle query. Se imposti il flag log_temp_files su 0, vengono registrate tutte le informazioni relative ai file temporanei. La registrazione di tutti i file temporanei è utile per identificare potenziali problemi di prestazioni. Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta il flag di database log_temp_files con il valore 0.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL no root password

Nome categoria nell'API: SQL_NO_ROOT_PASSWORD

Per un'istanza di database MySQL non è impostata una password per l'account root. Devi aggiungere una password all'istanza del database MySQL. Per ulteriori informazioni, consulta Utenti MySQL.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Nella pagina Dettagli istanza che viene caricata, seleziona la scheda Utenti.

  4. Accanto all'utente root, fai clic su Altro e seleziona Cambia password.

  5. Inserisci una nuova password efficace e fai clic su OK.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL public IP

Nome categoria nell'API: SQL_PUBLIC_IP

Un database Cloud SQL ha un indirizzo IP pubblico.

Per ridurre la superficie di attacco della tua organizzazione, i database Cloud SQL non devono avere indirizzi IP pubblici. Gli indirizzi IP privati offrono maggiore sicurezza della rete e minore latenza per l'applicazione.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Nel menu a sinistra, fai clic su Connections (Connessioni).

  4. Fai clic sulla scheda Networking e deseleziona la casella di controllo IP pubblico.

  5. Se l'istanza non è già configurata per l'utilizzo di un IP privato, consulta Configurazione dell'IP privato per un'istanza esistente.

  6. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL remote access enabled

Nome categoria nell'API: SQL_REMOTE_ACCESS_ENABLED

Un'istanza di database Cloud SQL per SQL Server non ha il flag di database di accesso remoto impostato su Off.

Quando è attivata, questa impostazione concede l'autorizzazione per eseguire stored procedure locali da server remoti o stored procedure remote dal server locale. Questa funzionalità può essere utilizzata in modo illecito per lanciare un attacco denial of service (DoS) su server remoti trasferendo l'elaborazione delle query a una destinazione. Per impedire utilizzi illeciti, ti consigliamo di disattivare questa impostazione.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag, imposta l'accesso remoto su Off.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL skip show database disabled

Nome categoria nell'API: SQL_SKIP_SHOW_DATABASE_DISABLED

Un'istanza di database Cloud SQL per MySQL non ha il flag di database skip_show_database impostato su On.

Quando è attivato, questo flag impedisce agli utenti di utilizzare l'istruzione SHOW DATABASES se non hanno il privilegio SHOW DATABASES. Con questa impostazione, gli utenti senza autorizzazione esplicita non possono visualizzare i database che appartengono ad altri utenti. Ti consigliamo di attivare questo flag.

Per maggiori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag, imposta skip_show_database su On.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL trace flag 3625

Nome categoria nell'API: SQL_TRACE_FLAG_3625

Un'istanza di database Cloud SQL per SQL Server non ha il flag di database 3625 (flag di traccia) impostato su On.

Questo flag limita la quantità di informazioni restituite agli utenti che non sono membri del ruolo predefinito del server sysadmin, mascherando i parametri di alcuni messaggi di errore con asterischi (******). Per evitare la divulgazione di informazioni sensibili, ti consigliamo di attivare questo flag.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, imposta 3625 su On.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL user connections configured

Nome categoria nell'API: SQL_USER_CONNECTIONS_CONFIGURED

Per un'istanza di database Cloud SQL per SQL Server è configurato il flag di database user connection.

L'opzione user connection specifica il numero massimo di connessioni utente simultanee consentite su un'istanza di SQL Server. Poiché è un'opzione dinamica (con autoconfigurazione), SQL Server regola automaticamente il numero massimo di connessioni utente necessarie in base alle esigenze, fino al valore massimo consentito. Il valore predefinito è 0, il che significa che sono consentite fino a 32.767 connessioni utente. Per questo motivo, sconsigliamo di configurare il flag di database user connection.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, accanto a user connection, fai clic su Elimina.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL user options configured

Nome categoria nell'API: SQL_USER_OPTIONS_CONFIGURED

Un'istanza di database Cloud SQL per SQL Server ha il flag di database user options configurato.

Questa impostazione sostituisce i valori predefiniti globali delle opzioni SET per tutti gli utenti. Poiché gli utenti e le applicazioni potrebbero presumere che siano in uso le opzioni SET di database predefinite, l'impostazione delle opzioni utente potrebbe causare risultati imprevisti. Per questo motivo, non è consigliabile configurare il flag di database user options.

Per ulteriori informazioni, consulta Configurazione dei flag di database.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

  4. Nella sezione Flag di database, accanto a Opzioni utente, fai clic su Elimina.

  5. Fai clic su Salva. La nuova configurazione viene visualizzata nella pagina Panoramica dell'istanza.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SQL weak root password

Nome categoria nell'API: SQL_WEAK_ROOT_PASSWORD

Un'istanza di database MySQL ha una password inefficace per l'account root. Dovresti impostare una password efficace per l'istanza. Per ulteriori informazioni, consulta Utenti MySQL.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Nella pagina Dettagli istanza che viene caricata, seleziona la scheda Utenti.

  4. Accanto all'utente root, fai clic su Altro e seleziona Cambia password.

  5. Inserisci una nuova password efficace e fai clic su OK.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

SSL not enforced

Nome categoria nell'API: SSL_NOT_ENFORCED

Un'istanza di database Cloud SQL non richiede tutte le connessioni in entrata per utilizzare SSL.

Per evitare fughe di dati sensibili in transito tramite comunicazioni non criptate, tutte le connessioni in entrata nell'istanza di database SQL devono utilizzare SSL. Scopri di più sulla configurazione di SSL/TLS.

Per risolvere questo risultato, consenti solo le connessioni SSL per le tue istanze SQL:

  1. Vai alla pagina Istanze Cloud SQL nella console Google Cloud.

    Vai a Istanze Cloud SQL

  2. Seleziona l'istanza elencata nel risultato di Security Health Analytics.

  3. Nella scheda Connessioni, fai clic su Consenti solo connessioni SSL o Richiedi certificati client attendibili. Per ulteriori informazioni, consulta Applicare la crittografia SSL/TLS.

  4. Se hai scelto Richiedi certificati client attendibili, crea un nuovo certificato client. Per maggiori informazioni, consulta Creare un nuovo certificato client.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Too many KMS users

Nome categoria nell'API: TOO_MANY_KMS_USERS

Limita a tre gli utenti principali che possono utilizzare le chiavi di crittografia. I seguenti ruoli predefiniti concedono le autorizzazioni per criptare, decriptare o firmare i dati utilizzando chiavi di crittografia:

  • roles/owner
  • roles/cloudkms.cryptoKeyEncrypterDecrypter
  • roles/cloudkms.cryptoKeyEncrypter
  • roles/cloudkms.cryptoKeyDecrypter
  • roles/cloudkms.signer
  • roles/cloudkms.signerVerifier

Per ulteriori informazioni, consulta Autorizzazioni e ruoli.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Chiavi Cloud KMS nella console Google Cloud.

    Vai a Chiavi Cloud KMS

  2. Fai clic sul nome del keyring indicato nel risultato.

  3. Fai clic sul nome della chiave indicato nel risultato.

  4. Seleziona la casella accanto alla versione principale, quindi fai clic su Mostra riquadro informazioni.

  5. Riduci il numero di entità con autorizzazioni per criptare, decriptare o firmare i dati a un massimo di tre. Per revocare le autorizzazioni, fai clic su Elimina accanto a ogni entità.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

User managed service account key

Nome categoria nell'API: USER_MANAGED_SERVICE_ACCOUNT_KEY

Un utente gestisce una chiave dell'account di servizio. Le chiavi degli account di servizio comportano un rischio per la sicurezza se non vengono gestite correttamente. Dovresti scegliere un'alternativa più sicura alle chiavi degli account di servizio quando è possibile. Se devi eseguire l'autenticazione con una chiave dell'account di servizio, sei responsabile della sicurezza della chiave privata e di altre operazioni descritte nelle Best practice per la gestione delle chiavi degli account di servizio. Se non ti viene consentito di creare una chiave dell'account di servizio, la creazione di chiavi dell'account di servizio potrebbe essere disabilitata per la tua organizzazione. Per saperne di più, consulta Gestione di risorse dell'organizzazione sicure per impostazione predefinita.

Per correggere questo esito, procedi nel seguente modo:

  1. Vai alla pagina Account di servizio nella console Google Cloud.

    Vai ad Account di servizio

  2. Se necessario, seleziona il progetto indicato nel risultato.

  3. Elimina le chiavi degli account di servizio gestite dall'utente indicate nel risultato, se non sono utilizzate da nessuna applicazione.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Weak SSL policy

Nome categoria nell'API: WEAK_SSL_POLICY

Un'istanza Compute Engine ha un criterio SSL debole o utilizza il criterio SSL predefinito di Google Cloud con TLS versione inferiore alla 1.2.

I bilanciatori del carico HTTPS e del proxy SSL utilizzano i criteri SSL per determinare il protocollo e le suite di crittografia utilizzate nelle connessioni TLS stabilite tra gli utenti e internet. Queste connessioni criptano i dati sensibili per impedire a intercettazioni dannose di accedervi. Un criterio SSL debole consente ai client che utilizzano versioni obsolete di TLS di connettersi a un protocollo o a una suite di crittografia meno sicura. Per un elenco delle suite di crittografia consigliate e obsolete, visita la pagina dei parametri TLS di iana.org.

Per le attivazioni del livello Premium di Security Command Center a livello di progetto, questo risultato è disponibile solo se il livello Standard è abilitato nell'organizzazione principale.

I passaggi di correzione per questo risultato variano a seconda che il risultato sia stato attivato dall'utilizzo di un criterio Google Cloud SSL predefinito o di un criterio SSL che consente una suite di crittografia debole o una versione TLS minima inferiore alla 1.2. Segui la procedura riportata di seguito relativa all'attivatore del risultato.

Risoluzione dei criteri SSL di Google Cloud predefiniti

  1. Vai alla pagina Proxy di destinazione nella console Google Cloud.

    Vai a Proxy di destinazione

  2. Trova il proxy di destinazione indicato nelle regole di forwarding per l'individuazione e le note nella colonna Utilizzato da.

  3. Per creare un nuovo criterio SSL, consulta la pagina relativa all'utilizzo dei criteri SSL. Il criterio deve avere una versione TLS minima pari a 1.2 e un profilo moderno o con restrizioni.

  4. Per utilizzare un profilo personalizzato , assicurati che le seguenti suite di crittografia siano disattivate:

    • TLS_RSA_WITH_AES_128_GCM_SHA256
    • TLS_RSA_WITH_AES_256_GCM_SHA384
    • TLS_RSA_WITH_AES_128_CBC_SHA
    • TLS_RSA_WITH_AES_256_CBC_SHA
    • TLS_RSA_WITH_3DES_EDE_CBC_SHA
  5. Applica il criterio SSL a ogni regola di forwarding osservata in precedenza.

Soluzione consentita per suite di crittografia debole o versione TLS di livello inferiore

  1. Nella console Google Cloud, vai alla pagina Criteri SSL .

    Vai ai criteri SSL

  2. Trova il bilanciatore del carico indicato nella colonna Utilizzato da.

  3. Fai clic sotto il nome della norma.

  4. Fai clic su Modifica.

  5. Imposta Versione TLS minima in TLS 1.2 e Profilo a Moderna o Con restrizioni.

  6. Per utilizzare un profilo personalizzato, assicurati che le seguenti suite di crittografia siano disattivate:

    • TLS_RSA_WITH_AES_128_GCM_SHA256
    • TLS_RSA_WITH_AES_256_GCM_SHA384
    • TLS_RSA_WITH_AES_128_CBC_SHA
    • TLS_RSA_WITH_AES_256_CBC_SHA
    • TLS_RSA_WITH_3DES_EDE_CBC_SHA
  7. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Web UI enabled

Nome categoria nell'API: WEB_UI_ENABLED

La UI web di GKE (dashboard) è abilitata.

L'interfaccia web di Kubernetes è supportata da un account di servizio Kubernetes con privilegi elevati. Se compromesso, l'account di servizio può essere utilizzato in modo illecito. Se stai già utilizzando la console Google Cloud, l'interfaccia web di Kubernetes estende inutilmente la superficie di attacco. Scopri di più sulla disattivazione dell'interfaccia web di Kubernetes.

Per risolvere questo risultato, disabilita l'interfaccia web di Kubernetes:

  1. Vai alla pagina Cluster Kubernetes nella console Google Cloud.

    Vai ai cluster Kubernetes

  2. Fai clic sul nome del cluster elencato nel risultato di Security Health Analytics.

  3. Fai clic su Modifica.

    Se la configurazione del cluster è stata modificata di recente, il pulsante di modifica potrebbe essere disabilitato. Se non riesci a modificare le impostazioni del cluster, attendi qualche minuto e riprova.

  4. Fai clic su Componenti aggiuntivi. La sezione si espande per mostrare i componenti aggiuntivi disponibili.

  5. Nell'elenco a discesa Dashboard Kubernetes, seleziona Disabilitata.

  6. Fai clic su Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Workload Identity disabled

Nome categoria nell'API: WORKLOAD_IDENTITY_DISABLED

Workload Identity è disabilitato su un cluster GKE.

Workload Identity è il modo consigliato per accedere ai servizi Google Cloud dall'interno di GKE, perché offre proprietà di sicurezza e gestibilità migliorate. L'abilitazione protegge alcuni metadati di sistema potenziali sensibili dai carichi di lavoro degli utenti in esecuzione sul cluster. Scopri di più sull'occultamento dei metadati.

Per risolvere questo problema, segui la guida per abilitare Workload Identity su un cluster.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Risolvere gli errori di configurazione di AWS

AWS Cloud Shell Full Access Restricted

Nome categoria nell'API: ACCESS_AWSCLOUDSHELLFULLACCESS_RESTRICTED

AWS CloudShell è un modo conveniente per eseguire i comandi dell'interfaccia a riga di comando sui servizi AWS; un criterio IAM gestito ("AWSCloudShellFullAccess") fornisce l'accesso completo a CloudShell, che consente il caricamento e la capacità di download di file tra il sistema locale dell'utente e l'ambiente CloudShell. Nell'ambiente CloudShell un utente dispone delle autorizzazioni sudo e può accedere a internet. Quindi è possibile installare un software per il trasferimento di file (ad esempio) e spostare i dati da CloudShell a server internet esterni.

Suggerimento: assicurati che l'accesso ad AWSCloudShellFullAccess sia limitato

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Access Keys Rotated Every 90 Days or Less

Nome categoria nell'API: ACCESS_KEYS_ROTATED_90_DAYS_LESS

Le chiavi di accesso sono composte da un ID chiave di accesso e una chiave di accesso segreta, utilizzate per firmare le richieste programmatiche che effettui ad AWS. Gli utenti di AWS hanno bisogno delle proprie chiavi di accesso per effettuare chiamate programmatiche ad AWS da AWS Command Line Interface (AWS CLI), da strumenti per Windows PowerShell, dagli SDK AWS o da chiamate HTTP dirette utilizzando le API per i singoli servizi AWS. Ti consigliamo di ruotare regolarmente tutte le chiavi di accesso.

Consiglio: assicurati che le chiavi di accesso vengano ruotate ogni 90 giorni o meno

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Vai alla Console di gestione (https://console.aws.amazon.com/iam)
  2. Fai clic su Users
  3. Fai clic su Security Credentials
  4. Come amministratore
    • Fai clic su Make Inactive per le chiavi che non vengono ruotate da 90 giorni
  5. Come utente IAM:
    • Fai clic su Make Inactive o Delete per le chiavi che non sono state ruotate o utilizzate da 90 giorni
  6. Fai clic su Create Access Key
  7. Aggiorna la chiamata programmatica con le nuove credenziali della chiave di accesso

interfaccia a riga di comando AWS

  1. Mentre la prima chiave di accesso è ancora attiva, crea una seconda chiave di accesso, che è attiva per impostazione predefinita. Esegui questo comando:
aws iam create-access-key

A questo punto, l'utente ha due chiavi di accesso attive.

  1. Aggiorna tutte le applicazioni e gli strumenti in modo che utilizzino la nuova chiave di accesso.
  2. Utilizza questo comando per determinare se la prima chiave di accesso è ancora in uso:
aws iam get-access-key-last-used
  1. Un approccio è attendere alcuni giorni e poi controllare la vecchia chiave di accesso per eventuali utilizzi prima di procedere.

Anche se il passaggio 3 indica di non utilizzare la vecchia chiave, consigliamo di non eliminare immediatamente la prima chiave di accesso. Modifica invece lo stato della prima chiave di accesso su Inattivo utilizzando questo comando:

aws iam update-access-key
  1. Utilizza solo la nuova chiave di accesso per verificare che le tue applicazioni funzionino. A questo punto tutte le applicazioni e gli strumenti che utilizzano ancora la chiave di accesso originale smetteranno di funzionare perché non hanno più accesso alle risorse AWS. Se trovi un'applicazione o uno strumento di questo tipo, puoi riportarne lo stato su Attivo per riattivare la prima chiave di accesso. Torna quindi al passaggio 2 e aggiorna questa applicazione in modo che utilizzi la nuova chiave.

  2. Dopo aver atteso un po' di tempo per assicurarti che tutte le applicazioni e gli strumenti siano stati aggiornati, puoi eliminare la prima chiave di accesso con questo comando:

aws iam delete-access-key

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

All Expired Ssl Tls Certificates Stored Aws Iam Removed

Nome categoria nell'API: ALL_EXPIRED_SSL_TLS_CERTIFICATES_STORED_AWS_IAM_REMOVED

Per abilitare le connessioni HTTPS al tuo sito web o alla tua applicazione in AWS, è necessario un certificato server SSL/TLS. Puoi utilizzare ACM o IAM per archiviare i certificati del server ed eseguirne il deployment. Utilizza IAM come gestore dei certificati solo se devi supportare connessioni HTTPS in una regione non supportata da ACM. IAM cripta in modo sicuro le tue chiavi private e archivia la versione criptata nell'archiviazione dei certificati SSL IAM. IAM supporta il deployment di certificati server in tutte le regioni, ma devi ottenere il certificato da un provider esterno per l'utilizzo con AWS. Non puoi caricare un certificato ACM in IAM. Inoltre, non puoi gestire i certificati dalla console IAM.

Suggerimento: assicurati che tutti i certificati SSL/TLS scaduti archiviati in AWS IAM vengano rimossi

Per correggere questo esito, procedi nel seguente modo:

Console AWS

La rimozione dei certificati scaduti tramite AWS Management Console non è attualmente supportata. Per eliminare i certificati SSL/TLS archiviati in IAM tramite l'API AWS, utilizza l'interfaccia a riga di comando (CLI).

interfaccia a riga di comando AWS

Per eliminare il certificato scaduto, esegui il seguente comando sostituendo CERTIFICATE_NAME con il nome del certificato da eliminare:

aws iam delete-server-certificate --server-certificate-name <CERTIFICATE_NAME>

Se il comando precedente ha esito positivo, non restituisce alcun output.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Autoscaling Group Elb Healthcheck Required

Nome categoria nell'API: AUTOSCALING_GROUP_ELB_HEALTHCHECK_REQUIRED

Questa operazione consente di verificare se i gruppi di scalabilità automatica associati a un bilanciatore del carico utilizzano controlli di integrità del bilanciamento del carico elastico.

Ciò garantisce che il gruppo possa determinare l'integrità di un'istanza in base a test aggiuntivi forniti dal bilanciatore del carico. L'utilizzo dei controlli di integrità del bilanciamento del carico Elastic può contribuire a supportare la disponibilità di applicazioni che utilizzano gruppi di scalabilità automatica EC2.

Suggerimento: verifica che tutti i gruppi di scalabilità automatica siano associati a un bilanciatore del carico usi i controlli di integrità

Per correggere questo esito, procedi nel seguente modo:

Console AWS

Per abilitare i controlli di integrità del bilanciamento del carico Elastic

  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.
  2. Nel riquadro di navigazione, in Scalabilità automatica, scegli Gruppi di scalabilità automatica.
  3. Seleziona la casella di controllo relativa al gruppo.
  4. Scegli Modifica.
  5. In Controlli di integrità, per Tipo di controllo di integrità, scegli ELB.
  6. In Periodo di tolleranza per il controllo di integrità, inserisci 300.
  7. In fondo alla pagina, scegli Aggiorna.

Per ulteriori informazioni sull'utilizzo di un bilanciatore del carico con un gruppo di scalabilità automatica, consulta la Guida dell'utente sulla scalabilità automatica di AWS.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Auto Minor Version Upgrade Feature Enabled Rds Instances

Nome categoria nell'API: AUTO_MINOR_VERSION_UPGRADE_FEATURE_ENABLED_RDS_INSTANCES

Assicurati che nelle istanze di database RDS sia abilitato il flag di upgrade automatico della versione secondaria per ricevere automaticamente upgrade secondari del motore durante il periodo di manutenzione specificato. Quindi, le istanze RDS possono ricevere le nuove funzionalità, le correzioni di bug e le patch di sicurezza per i rispettivi motori di database.

Suggerimento: assicurati che la funzionalità di upgrade automatico della versione secondaria sia abilitata per le istanze RDS

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Accedi alla console di gestione AWS e passa alla dashboard RDS all'indirizzo https://console.aws.amazon.com/rds/.
  2. Nel pannello di navigazione a sinistra, fai clic su Databases.
  3. Seleziona l'istanza RDS da aggiornare.
  4. Fai clic sul pulsante Modify in alto a destra.
  5. Nella pagina Modify DB Instance: <instance identifier>, nella sezione Maintenance, seleziona Auto minor version upgrade e fai clic sul pulsante di opzione Yes.
  6. In fondo alla pagina, fai clic su Continue, seleziona Applica immediatamente per applicare le modifiche immediatamente oppure seleziona Apply during the next scheduled maintenance window per evitare tempi di inattività.
  7. Esamina le modifiche e fai clic su Modify DB Instance. Lo stato dell'istanza dovrebbe passare da Disponibile a Modificabile e tornare a Disponibile. Una volta attivata la funzionalità, lo stato Auto Minor Version Upgrade dovrebbe diventare Yes.

interfaccia a riga di comando AWS

  1. Esegui il comando describe-db-instances per elencare tutti i nomi delle istanze del database RDS, disponibili nella regione AWS selezionata:
aws rds describe-db-instances --region <regionName> --query 'DBInstances[*].DBInstanceIdentifier'
  1. L'output comando dovrebbe restituire ogni identificatore di istanza del database.
  2. Esegui il comando modify-db-instance per modificare la configurazione dell'istanza RDS selezionata. In questo modo le modifiche verranno applicate immediatamente. Rimuovi --apply-immediately per applicare le modifiche durante il successivo periodo di manutenzione pianificata ed evitare eventuali tempi di inattività:
aws rds modify-db-instance --region <regionName> --db-instance-identifier <dbInstanceIdentifier> --auto-minor-version-upgrade --apply-immediately
  1. L'output comando dovrebbe mostrare i nuovi metadati di configurazione per l'istanza RDS e controllare valore parametro AutoMinorVersionUpgrade.
  2. Esegui il comando describe-db-instances per verificare se la funzionalità di upgrade automatico della versione secondaria è stata abilitata correttamente:
aws rds describe-db-instances --region <regionName> --db-instance-identifier <dbInstanceIdentifier> --query 'DBInstances[*].AutoMinorVersionUpgrade'
  1. L'output comando dovrebbe restituire lo stato attuale della funzionalità impostato su true, la funzionalità è enabled e gli upgrade secondari del motore verranno applicati all'istanza RDS selezionata.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Aws Config Enabled All Regions

Nome categoria nell'API: AWS_CONFIG_ENABLED_ALL_REGIONS

AWS Config è un servizio web che esegue la gestione della configurazione delle risorse AWS supportate all'interno del tuo account e ti fornisce i file di log. Le informazioni registrate includono l'elemento di configurazione (risorsa AWS), le relazioni tra gli elementi di configurazione (risorse AWS) e qualsiasi modifica alla configurazione tra le risorse. Ti consigliamo di abilitare AWS Config in tutte le regioni.

Suggerimento: assicurati che AWS Config sia abilitato in tutte le regioni

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Seleziona l'area su cui vuoi concentrarti in alto a destra nella console
  2. Fai clic su Servizi
  3. Fai clic su Configurazione
  4. Se un Registratore di configurazione è abilitato in questa regione, devi accedere alla pagina Impostazioni dal menu di navigazione sul lato sinistro. Se un recorder di configurazione non è ancora abilitato in questa regione, devi selezionare "Inizia".
  5. Seleziona "Registra tutte le risorse supportate in questa regione"
  6. Scegli di includere risorse globali (risorse IAM)
  7. Specifica un bucket S3 nello stesso account o in un altro account AWS gestito
  8. Creare un argomento SNS dallo stesso account AWS o da un altro account AWS gestito

interfaccia a riga di comando AWS

  1. Assicurati che esistano un bucket S3, un argomento SNS e un ruolo IAM appropriati in base ai prerequisiti di AWS Config Service.
  2. Esegui questo comando per creare un nuovo registratore di configurazione:
aws configservice put-configuration-recorder --configuration-recorder name=default,roleARN=arn:aws:iam::012345678912:role/myConfigRole --recording-group allSupported=true,includeGlobalResourceTypes=true
  1. Crea un file di configurazione del canale di pubblicazione localmente che specifichi gli attributi del canale, compilati in base ai prerequisiti impostati in precedenza:
{
 "name": "default",
 "s3BucketName": "my-config-bucket",
 "snsTopicARN": "arn:aws:sns:us-east-1:012345678912:my-config-notice",
 "configSnapshotDeliveryProperties": {
 "deliveryFrequency": "Twelve_Hours"
 }
}
  1. Esegui questo comando per creare un nuovo canale di distribuzione, facendo riferimento al file di configurazione JSON creato nel passaggio precedente:
aws configservice put-delivery-channel --delivery-channel file://deliveryChannel.json
  1. Avvia il registratore di configurazione eseguendo questo comando:
aws configservice start-configuration-recorder --configuration-recorder-name default

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Aws Security Hub Enabled

Nome categoria nell'API: AWS_SECURITY_HUB_ENABLED

Il Pannello di sicurezza raccoglie i dati di sicurezza da account e servizi AWS e prodotti di partner terzi supportati e ti aiuta ad analizzare le tendenze di sicurezza e a identificare i problemi di sicurezza con la massima priorità. Quando abiliti Security Hub, questo inizia a utilizzare, aggregare, organizzare e dare priorità ai risultati dei servizi AWS che hai abilitato, come Amazon GuardDuty, Amazon Inspector e Amazon Macie. Puoi anche abilitare le integrazioni con i prodotti di sicurezza dei partner AWS.

Suggerimento: assicurati che AWS Security Hub sia abilitato

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Utilizza le credenziali dell'identità IAM per accedere alla console di Security Hub.
  2. Quando apri la console di Security Hub per la prima volta, scegli Abilita AWS Security Hub.
  3. Nella pagina di benvenuto, gli standard di sicurezza elencano gli standard supportati da Security Hub.
  4. Seleziona Abilita Pannello di sicurezza.

interfaccia a riga di comando AWS

  1. Esegui il comando allow-security-hub. Per attivare gli standard predefiniti, includi --enable-default-standards. aws securityhub enable-security-hub --enable-default-standards

  2. Per attivare il Pannello di sicurezza senza gli standard predefiniti, includi --no-enable-default-standards. aws securityhub enable-security-hub --no-enable-default-standards

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Cloudtrail Logs Encrypted Rest Using Kms Cmks

Nome categoria nell'API: CLOUDTRAIL_LOGS_ENCRYPTED_REST_USING_KMS_CMKS

AWS CloudTrail è un servizio web che registra le chiamate API AWS per un account e rende disponibili i log a utenti e risorse in base ai criteri IAM. AWS Key Management Service (KMS) è un servizio gestito che consente di creare e controllare le chiavi di crittografia utilizzate per criptare i dati degli account e che utilizza Hardware Security Module (HSM) per proteggere la sicurezza delle chiavi di crittografia. I log di CloudTrail possono essere configurati in modo da sfruttare la crittografia lato server (SSE) e le chiavi master create dal cliente KMS (CMK) per proteggere ulteriormente i log di CloudTrail. È consigliabile configurare CloudTrail per l'utilizzo di SSE-KMS.

Suggerimento: assicurati che i log di CloudTrail siano criptati at-rest mediante chiavi CMK di KMS

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Accedi alla console di gestione AWS e apri la console CloudTrail all'indirizzo https://console.aws.amazon.com/cloudtrail.
  2. Nel riquadro di navigazione a sinistra, scegli Trails .
  3. Fai clic su un sentiero
  4. Nella sezione S3, fai clic sul pulsante di modifica (icona a forma di matita)
  5. Fai clic su Advanced.
  6. Seleziona una CMK esistente dal menu a discesa KMS key Id
    • Nota: assicurati che la chiave CMK si trovi nella stessa regione del bucket S3
    • Nota: dovrai applicare un criterio della chiave KMS alla CMK selezionata per consentire a CloudTrail come servizio di criptare e decriptare i file di log utilizzando la CMK fornita. Qui puoi trovare i passaggi per modificare il criterio delle chiavi CMK selezionato.
  7. Fai clic su Save.
  8. Verrà visualizzato un messaggio di notifica che indica che devi disporre delle autorizzazioni per decriptare la chiave KMS specificata per decriptare i file di log.
  9. Fai clic su Yes.

interfaccia a riga di comando AWS

aws cloudtrail update-trail --name <trail_name> --kms-id <cloudtrail_kms_key>
aws kms put-key-policy --key-id <cloudtrail_kms_key> --policy <cloudtrail_kms_key_policy>

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Cloudtrail Log File Validation Enabled

Nome categoria nell'API: CLOUDTRAIL_LOG_FILE_VALIDATION_ENABLED

La convalida dei file di log di CloudTrail crea un file digest con firma digitale contenente un hash di ogni log che CloudTrail scrive in S3. Questi file digest possono essere utilizzati per determinare se un file di log è stato modificato, eliminato o modificato dopo la consegna del log da parte di CloudTrail. È consigliabile abilitare la convalida dei file su tutti i CloudTrail.

Suggerimento: assicurati che la convalida del file di log di CloudTrail sia abilitata

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Accedi alla console di gestione AWS e apri la console IAM all'indirizzo https://console.aws.amazon.com/cloudtrail
  2. Fai clic su Trails nel riquadro di navigazione a sinistra
  3. Clic sul sentiero target
  4. Nella sezione General details, fai clic su edit.
  5. Nella sezione Advanced settings
  6. Seleziona la casella di attivazione in Log file validation
  7. Fai clic su Save changes.

interfaccia a riga di comando AWS

aws cloudtrail update-trail --name <trail_name> --enable-log-file-validation

Tieni presente che la convalida periodica dei log che utilizzano questi digest può essere eseguita eseguendo questo comando:

aws cloudtrail validate-logs --trail-arn <trail_arn> --start-time <start_time> --end-time <end_time>

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Cloudtrail Trails Integrated Cloudwatch Logs

Nome categoria nell'API: CLOUDTRAIL_TRAILS_INTEGRATED_CLOUDWATCH_LOGS

AWS CloudTrail è un servizio web che registra le chiamate API AWS effettuate in un determinato account AWS. Le informazioni registrate includono l'identità del chiamante API, l'ora della chiamata API, l'indirizzo IP di origine del chiamante API, i parametri della richiesta e gli elementi di risposta restituiti dal servizio AWS. CloudTrail utilizza Amazon S3 per l'archiviazione e la distribuzione dei file di log, archiviando questi ultimi in modo duraturo. Oltre ad acquisire i log di CloudTrail all'interno di un bucket S3 specificato per l'analisi a lungo termine, l'analisi in tempo reale può essere eseguita configurando CloudTrail per l'invio dei log ai log di CloudWatch. Per un trail abilitato in tutte le regioni in un account, CloudTrail invia i file di log da tutte quelle regioni a un gruppo di log di CloudWatch. È consigliabile inviare i log di CloudTrail ai log di CloudWatch.

Suggerimento: assicurati che i trail di CloudTrail siano integrati con i log di CloudWatch

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Accedi alla console CloudTrail all'indirizzo https://console.aws.amazon.com/cloudtrail/
  2. Seleziona il Trail da aggiornare.
  3. Scorri verso il basso fino a CloudWatch Logs
  4. Fai clic su Edit.
  5. In CloudWatch Logs, fai clic sulla casella Enabled
  6. In Log Group scegli nuovo o seleziona un gruppo di log esistente
  7. Modifica Log group name in modo che corrisponda a quello di CloudTrail o scegli il gruppo CloudWatch esistente.
  8. In IAM Role, scegline uno nuovo o selezionane uno esistente.
  9. Modifica Role name in modo che corrisponda a quello di CloudTrail o scegli il ruolo IAM esistente.
  10. Fai clic su "Salva modifiche.

interfaccia a riga di comando AWS

aws cloudtrail update-trail --name <trail_name> --cloudwatch-logs-log-group-arn <cloudtrail_log_group_arn> --cloudwatch-logs-role-arn <cloudtrail_cloudwatchLogs_role_arn>

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Cloudwatch Alarm Action Check

Nome categoria nell'API: CLOUDWATCH_ALARM_ACTION_CHECK

Questo controllo controlla se in Amazon Cloud Watch sono state definite azioni quando un allarme passa tra gli stati "OK", "ALARM" e "INSUFFICIENT_DATA".

La configurazione delle azioni per lo stato ALARM negli allarmi di Amazon CloudWatch è molto importante per attivare una risposta immediata quando vengono monitorate le soglie di violazione delle metriche. Garantisce una rapida risoluzione dei problemi, riduce i tempi di inattività e consente soluzioni automatiche, mantenendo l’integrità del sistema e prevenendo interruzioni del servizio.

Le sveglie prevedono almeno un'azione. Gli allarmi prevedono almeno un'azione quando passa allo stato "INSUFFICIENT_DATA" da qualsiasi altro stato. (Facoltativo) Le sveglie prevedono almeno un'azione quando passa allo stato "OK" da qualsiasi altro stato.

Suggerimento: controlla se gli allarmi CloudWatch hanno almeno un'azione di allarme, un'azione INSUFFICIENT_DATA o un'azione OK abilitata.

Per correggere questo esito, procedi nel seguente modo:

Console AWS

Per configurare le azioni SVEGLIA per le sveglie Amazon CloudWatch, procedi nel seguente modo.

  1. Apri la console Amazon CloudWatch all'indirizzo https://console.aws.amazon.com/cloudwatch/.
  2. Nel riquadro di navigazione, nella sezione "Sveglie", seleziona "Tutte le sveglie".
  3. Scegli la sveglia Amazon CloudWatch che desideri modificare, scegli "Azioni" e seleziona "Modifica".
  4. Sul lato sinistro, scegli "Passaggio 2: configura le azioni facoltative"
  5. Per l'opzione "Attivazione stato allarme" seleziona l'opzione "In allarme" per configurare un'azione basata su SVEGLIA.
  6. Per inviare una notifica a un argomento SNS appena creato, seleziona "Crea nuovo argomento".
  7. Nella casella "Crea nuovo argomento..." specifica un nome univoco per l'argomento SNS.
  8. Nella casella "Endpoint email che riceveranno la notifica...", specifica uno o più indirizzi email.
  9. Quindi seleziona "Crea argomento" per creare l'argomento Amazon SNS richiesto.
  10. In basso a destra, seleziona "Avanti", "Avanti" e scegli "Aggiorna sveglia" per applicare le modifiche.
  11. Apri il tuo client di posta e, nella posta da AWS Notifications, fai clic sul link per confermare la tua iscrizione all'argomento SNS in questione.
  12. Ripeti i passaggi da 4 a 11 e durante il passaggio 5, scegliendo 'OK' e 'Dati insufficienti' per 'Attivazione dello stato di allarme' per impostare le azioni per questi due stati.
  13. Ripeti il processo per tutti gli altri allarmi di CloudWatch all'interno della stessa regione AWS.
  14. Ripeti il processo per tutti gli altri allarmi di CloudWatch in tutte le altre regioni AWS.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Cloudwatch Log Group Encrypted

Nome categoria nell'API: CLOUDWATCH_LOG_GROUP_ENCRYPTED

Questo controllo garantisce che i log di CloudWatch siano configurati con KMS.

I dati del gruppo di log sono sempre criptati nei log di CloudWatch. Per impostazione predefinita, CloudWatch Logs utilizza la crittografia lato server per i dati at-rest dei log. In alternativa, puoi utilizzare AWS Key Management Service per questa crittografia. In questo caso, la crittografia viene eseguita utilizzando una chiave KMS di AWS. La crittografia mediante KMS AWS viene abilitata a livello di gruppo di log, associando una chiave KMS a un gruppo di log, quando si crea il gruppo di log o dopo che esiste.

Suggerimento: verifica che tutti i gruppi di log nei log di Amazon CloudWatch siano criptati con KMS

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

CloudTrail CloudWatch Logs Enabled

Nome categoria nell'API: CLOUD_TRAIL_CLOUD_WATCH_LOGS_ENABLED

Questo controllo verifica se i trail di CloudTrail sono configurati per inviare log ai log di CloudWatch. Il controllo non riesce se la proprietà CloudWatchLogsLogGroupArn del sentiero è vuota.

CloudTrail registra le chiamate API AWS effettuate in un determinato account. Le informazioni registrate includono:

  • L'identità del chiamante API
  • L'ora della chiamata API
  • L'indirizzo IP di origine del chiamante API
  • I parametri della richiesta
  • Gli elementi di risposta restituiti dal servizio AWS

CloudTrail utilizza Amazon S3 per l'archiviazione e la distribuzione dei file di log. Puoi acquisire i log di CloudTrail in un bucket S3 specificato per analisi a lungo termine. Per eseguire analisi in tempo reale, puoi configurare CloudTrail per inviare i log ai log di CloudWatch.

Per un trail abilitato in tutte le regioni in un account, CloudTrail invia i file di log da tutte quelle regioni a un gruppo di log di CloudWatch.

Security Hub consiglia di inviare i log di CloudTrail ai log di CloudWatch. Tieni presente che questo consiglio ha lo scopo di garantire che l'attività dell'account venga rilevata, monitorata e attivata in modo appropriato. Puoi utilizzare i log di CloudWatch per configurarlo con i tuoi servizi AWS. Questo consiglio non preclude l'uso di una soluzione diversa.

L'invio dei log di CloudTrail ai log di CloudWatch facilita il logging delle attività in tempo reale e storico basato su utente, API, risorsa e indirizzo IP. Puoi utilizzare questo approccio per definire allarmi e notifiche per attività anomale o sensibili dell'account.

Suggerimento: verifica che tutti i trail di CloudTrail siano configurati per inviare log ad AWS CloudWatch

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

No AWS Credentials in CodeBuild Project Environment Variables

Nome categoria nell'API: CODEBUILD_PROJECT_ENVVAR_AWSCRED_CHECK

Questa operazione consente di verificare se il progetto contiene le variabili di ambiente AWS_ACCESS_KEY_ID e AWS_SECRET_ACCESS_KEY.

Le credenziali di autenticazione AWS_ACCESS_KEY_ID e AWS_SECRET_ACCESS_KEY non devono mai essere archiviate in chiaro, in quanto ciò potrebbe causare un'esposizione involontaria dei dati e accessi non autorizzati.

Suggerimento: verifica che tutti i progetti contenenti variabili env AWS_ACCESS_KEY_ID e AWS_SECRET_ACCESS_KEY non siano in testo non crittografato

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Codebuild Project Source Repo Url Check

Nome categoria nell'API: CODEBUILD_PROJECT_SOURCE_REPO_URL_CHECK

Questo valore controlla se l'URL di un repository di origine Bitbucket per il progetto AWS CodeBuild contiene token di accesso personali o un nome utente e una password. Il controllo non riesce se l'URL del repository di origine Bitbucket contiene token di accesso personali o un nome utente e una password.

Le credenziali di accesso non devono essere archiviate o trasmesse in chiaro né apparire nell'URL del repository di codice sorgente. Anziché i token di accesso personale o le credenziali di accesso, devi accedere al tuo provider di origine in CodeBuild e modificare l'URL del repository di codice sorgente in modo da contenere solo il percorso della posizione del repository Bitbucket. L'utilizzo di token di accesso personali o di credenziali di accesso potrebbe comportare l'esposizione involontaria dei dati o l'accesso non autorizzato.

Suggerimento: verifica che tutti i progetti che utilizzano github o bitbucket come origine utilizzino oauth

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Credentials Unused 45 Days Greater Disabled

Nome categoria nell'API: CREDENTIALS_UNUSED_45_DAYS_GREATER_DISABLED

Gli utenti AWS IAM possono accedere alle risorse AWS utilizzando diversi tipi di credenziali, ad esempio password o chiavi di accesso. Ti consigliamo di disattivare o rimuovere tutte le credenziali non utilizzate per almeno 45 giorni.

Consiglio: assicurati che le credenziali non utilizzate per almeno 45 giorni siano disattivate

Per correggere questo esito, procedi nel seguente modo:

Console AWS

Esegui le operazioni seguenti per gestire la password inutilizzata (accesso alla console utente IAM)

  1. Accedi alla console di gestione AWS:
  2. Fai clic su Services.
  3. Fai clic su IAM.
  4. Fai clic su Users
  5. Fai clic su Security Credentials
  6. Seleziona l'utente il cui Console last sign-in è superiore a 45 giorni
  7. Fai clic su Security credentials.
  8. Nella sezione Sign-in credentials, Console password fai clic su Manage
  9. In Accesso alla console, seleziona Disable. 10. Fai clic su Apply.

Per disattivare le chiavi di accesso, esegui le operazioni seguenti:

  1. Accedi alla console di gestione AWS:
  2. Fai clic su Services.
  3. Fai clic su IAM.
  4. Fai clic su Users
  5. Fai clic su Security Credentials
  6. Seleziona le chiavi di accesso che sono state utilizzate da più di 45 giorni e
    • Fai clic su Make Inactive
  7. Seleziona le chiavi di accesso che risalgono a più di 45 giorni fa e che non sono state utilizzate.
    • Fai clic sulla X per Delete

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Default Security Group Vpc Restricts All Traffic

Nome categoria nell'API: DEFAULT_SECURITY_GROUP_VPC_RESTRICTS_ALL_TRAFFIC

Un VPC è dotato di un gruppo di sicurezza predefinito le cui impostazioni iniziali negano tutto il traffico in entrata, consentono tutto il traffico in uscita e tutto il traffico tra le istanze assegnate al gruppo di sicurezza. Se non specifichi un gruppo di sicurezza quando avvii un'istanza, quest'ultima viene assegnata automaticamente a questo gruppo di sicurezza predefinito. I gruppi di sicurezza forniscono un filtro stateful del traffico di rete in entrata/in uscita verso le risorse AWS. È consigliabile che il gruppo di sicurezza predefinito limiti tutto il traffico.

Il gruppo di sicurezza predefinito del VPC predefinito in ogni regione deve essere aggiornato in modo da renderlo conforme. I VPC appena creati conterranno automaticamente un gruppo di sicurezza predefinito che avrà bisogno di una correzione per rispettare questo suggerimento.

NOTA: quando implementi questo suggerimento, il logging dei flussi VPC è inestimabile nel determinare l'accesso alle porte con privilegio minimo richiesti dai sistemi per funzionare correttamente, perché può registrare tutte le accettazioni e i rifiuti dei pacchetti che si verificano nei gruppi di sicurezza attuali. Questo riduce drasticamente l'ostacolo principale all'ingegneria privilegio minimo: la scoperta del numero minimo di porte richieste dai sistemi nell'ambiente. Anche se il suggerimento relativo al logging dei flussi VPC in questo benchmark non viene adottato come misura di sicurezza permanente, dovrebbe essere utilizzato durante qualsiasi periodo di rilevamento e progettazione per i gruppi di sicurezza con privilegi minimi.

Suggerimento: assicurati che il gruppo di sicurezza predefinito di ogni VPC limiti tutto il traffico

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Dms Replication Not Public

Nome categoria nell'API: DMS_REPLICATION_NOT_PUBLIC

Controlla se le istanze di replica AWS DMS sono pubbliche. Per farlo, esamina il valore del campo PubliclyAccessible.

Un'istanza di replica privata ha un indirizzo IP privato a cui non puoi accedere al di fuori della rete di replica. Un'istanza di replica deve avere un indirizzo IP privato quando i database di origine e di destinazione si trovano nella stessa rete. La rete deve anche essere connessa al VPC dell'istanza di replica tramite VPN, AWS Direct Connect o peering VPC. Per saperne di più sulle istanze di replica pubbliche e private, consulta la sezione relativa alle istanze di replica pubbliche e private nella guida dell'utente di AWS Database Migration Service.

Inoltre, devi assicurarti che l'accesso alla configurazione dell'istanza AWS DMS sia limitato solo agli utenti autorizzati. A questo scopo, limita le autorizzazioni IAM degli utenti per modificare le impostazioni e le risorse di AWS DMS.

Suggerimento: verifica se le istanze di replica di AWS Database Migration Service sono pubbliche

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Do Setup Access Keys During Initial User Setup All Iam Users Console

Nome categoria nell'API: DO_SETUP_ACCESS_KEYS_DURING_INITIAL_USER_SETUP_ALL_IAM_USERS_CONSOLE

Per impostazione predefinita, la console AWS non mostra alcuna casella di controllo selezionata durante la creazione di un nuovo utente IAM. Quando crei le credenziali utente IAM, devi determinare il tipo di accesso richiesto.

Accesso programmatico: l'utente IAM potrebbe dover effettuare chiamate API, utilizzare AWS CLI o utilizzare gli strumenti per Windows PowerShell. In questo caso, crea una chiave di accesso (ID chiave di accesso e chiave di accesso segreta) per l'utente in questione.

Accesso alla console di gestione AWS: se l'utente deve accedere alla console di gestione AWS, crea una password per l'utente.

Consiglio: non configurare le chiavi di accesso durante la configurazione iniziale per tutti gli utenti IAM con una password per la console

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Accedi alla console di gestione AWS:
  2. Fai clic su Services.
  3. Fai clic su IAM.
  4. Fai clic su Users
  5. Fai clic su Security Credentials
  6. Come amministratore
    • Fai clic sulla X (Delete) per le chiavi che sono state create contemporaneamente al profilo utente, ma non sono state utilizzate.
  7. Come utente IAM:
    • Fai clic sulla X (Delete) per le chiavi che sono state create contemporaneamente al profilo utente, ma non sono state utilizzate.

interfaccia a riga di comando AWS

aws iam delete-access-key --access-key-id <access-key-id-listed> --user-name <users-name>

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Dynamodb Autoscaling Enabled

Nome categoria nell'API: DYNAMODB_AUTOSCALING_ENABLED

Questo controlla se una tabella Amazon DynamoDB è in grado di scalare la capacità di lettura e scrittura in base alle esigenze. Questo controllo viene superato se la tabella utilizza la modalità di capacità on demand o di cui è stato eseguito il provisioning con scalabilità automatica configurata. La capacità di scalabilità con la domanda evita le eccezioni di limitazione, il che contribuisce a mantenere la disponibilità delle applicazioni.

Le tabelle DynamoDB in modalità di capacità on demand sono limitate solo dalle quote di tabella predefinite per la velocità effettiva DynamoDB. Per aumentare queste quote, puoi inviare un ticket di assistenza tramite AWS Support.

Le tabelle DynamoDB in modalità di provisioning con scalabilità automatica regolano in modo dinamico la capacità di velocità effettiva sottoposta a provisioning in risposta ai modelli di traffico. Per ulteriori informazioni sulla limitazione delle richieste DynamoDB, consulta Richiedi limitazione e capacità di burst nella Guida per gli sviluppatori di Amazon DynamoDB.

Suggerimento: le tabelle DynamoDB dovrebbero scalare automaticamente la capacità in base alla domanda

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Dynamodb In Backup Plan

Nome categoria nell'API: DYNAMODB_IN_BACKUP_PLAN

Questo controllo valuta se una tabella DynamoDB è coperta da un piano di backup. Il controllo non riesce se una tabella DynamoDB non è coperta da un piano di backup. Questo controllo valuta solo le tabelle DynamoDB nello stato ATTIVO.

I backup ti consentono di riprenderti più rapidamente da un incidente di sicurezza. Inoltre, rafforzano la resilienza dei sistemi. L'inclusione delle tabelle DynamoDB in un piano di backup consente di proteggere i dati da perdite o eliminazioni indesiderate.

Suggerimento: le tabelle DynamoDB devono essere coperte da un piano di backup

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Dynamodb Pitr Enabled

Nome categoria nell'API: DYNAMODB_PITR_ENABLED

Il recupero point-in-time (PITR) è uno dei meccanismi disponibili per il backup delle tabelle DynamoDB.

Un backup point-in-time viene conservato per 35 giorni. Se il tuo requisito prevede una conservazione più lunga, consulta Configurare backup pianificati per Amazon DynamoDB utilizzando AWS Backup nella documentazione di AWS.

Suggerimento: controlla che il recupero point-in-time (PITR) sia abilitato per tutte le tabelle AWS DynamoDB

Per correggere questo esito, procedi nel seguente modo:

Terraform

Per impostare il PITR per le tabelle DynamoDB, imposta il blocco point_in_time_recovery:

resource "aws_dynamodb_table" "example" {
  # ... other configuration ...
  point_in_time_recovery {
    enabled = true
  }
}

Console AWS

Attivare il recupero point-in-time DynamoDB per una tabella esistente

  1. Apri la console DynamoDB all'indirizzo https://console.aws.amazon.com/dynamodb/.
  2. Scegli la tabella con cui lavorare e seleziona Backup.
  3. Nella sezione Recupero point-in-time, in Stato, scegli Abilita.
  4. Scegli di nuovo Attiva per confermare la modifica.

interfaccia a riga di comando AWS

aws dynamodb update-continuous-backups \
  --table-name "GameScoresOnDemand" \
  --point-in-time-recovery-specification "PointInTimeRecoveryEnabled=true"

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Dynamodb Table Encrypted Kms

Nome categoria nell'API: DYNAMODB_TABLE_ENCRYPTED_KMS

Controlla se tutte le tabelle DynamoDB sono criptate con una chiave KMS gestita dal cliente (non predefinita).

Suggerimento: verifica che tutte le tabelle DynamoDB siano criptate con AWS Key Management Service (KMS)

Per correggere questo esito, procedi nel seguente modo:

Terraform

Per risolvere questo controllo, crea una chiave KMS AWS e utilizzala per criptare la risorsa DynamoDB in violazione.

resource "aws_kms_key" "dynamodb_encryption" {
  description         = "Used for DynamoDB encryption configuration"
  enable_key_rotation = true
}

resource "aws_dynamodb_table" "example" {
  # ... other configuration ...
  server_side_encryption {
    enabled     = true
    kms_key_arn = aws_kms_key.dynamodb_encryption.arn
  }
}

Console AWS

Supponendo che sia disponibile una chiave KMS AWS esistente per criptare DynamoDB.

Per cambiare la crittografia di una tabella DynamoDB in una chiave KMS gestita e di proprietà del cliente.

  1. Apri la console DynamoDB all'indirizzo https://console.aws.amazon.com/dynamodb/.
  2. Scegli la tabella con cui vuoi lavorare e poi seleziona Impostazioni aggiuntive.
  3. In Crittografia, scegli Gestisci crittografia.
  4. Per Crittografia at-rest, scegli Archiviati nel tuo account, di tua proprietà e gestiti da te.
  5. Seleziona la chiave AWS da utilizzare. Salva le modifiche.

interfaccia a riga di comando AWS

aws dynamodb update-table \
  --table-name <value> \
  --sse-specification "Enabled=true,SSEType=KMS,KMSMasterKeyId=<kms_key_arn>"

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Ebs Optimized Instance

Nome categoria nell'API: EBS_OPTIMIZED_INSTANCE

Controlla se l'ottimizzazione EBS è abilitata per le istanze EC2 che possono essere ottimizzate per EBS

Suggerimento: verifica che l'ottimizzazione EBS sia abilitata per tutte le istanze che supportano l'ottimizzazione EBS

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Ebs Snapshot Public Restorable Check

Nome categoria nell'API: EBS_SNAPSHOT_PUBLIC_RESTORABLE_CHECK

Controlla se gli snapshot di Amazon Elastic Block Store non sono pubblici. Il controllo non riesce se gli snapshot di Amazon EBS possono essere ripristinati da chiunque.

Gli snapshot EBS vengono utilizzati per eseguire il backup dei dati presenti sui volumi EBS su Amazon S3 in un momento specifico. Puoi utilizzare gli snapshot per ripristinare gli stati precedenti dei volumi EBS. Raramente è accettabile condividere un'istantanea con il pubblico. In genere la decisione di condividere pubblicamente un'istantanea è stata presa per errore o senza una completa comprensione delle implicazioni. Questo controllo garantisce che tutte queste condivisioni siano state pianificate e intenzionali.

Suggerimento: gli snapshot Amazon EBS non devono essere ripristinabili pubblicamente

Per correggere questo esito, procedi nel seguente modo:

Console AWS

Per risolvere il problema, aggiorna lo snapshot EBS in modo che sia privato anziché pubblico.

Per rendere privato uno snapshot EBS pubblico:

  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.
  2. Nel riquadro di navigazione, in Elastic Block Store, scegli il menu Snapshot, quindi scegli lo snapshot pubblico.
  3. Da Azioni, scegli Modifica autorizzazioni.
  4. Scegli Privato.
  5. (Facoltativo) Aggiungi i numeri di account AWS degli account autorizzati con cui condividere lo snapshot e scegli Aggiungi autorizzazione.
  6. Scegli Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Ebs Volume Encryption Enabled All Regions

Nome categoria nell'API: EBS_VOLUME_ENCRYPTION_ENABLED_ALL_REGIONS

Elastic Compute Cloud (EC2) supporta la crittografia at-rest quando si utilizza il servizio Elastic Block Store (EBS). Quando è disabilitata per impostazione predefinita, è supportata l'applicazione forzata della crittografia nella creazione di volumi EBS.

Suggerimento: assicurati che la crittografia del volume EBS sia abilitata in tutte le regioni

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Accedi ad AWS Management Console e apri la console Amazon EC2 utilizzando https://console.aws.amazon.com/ec2/
  2. In Account attributes, fai clic su EBS encryption.
  3. Fai clic su Manage.
  4. Fai clic sulla casella di controllo Enable.
  5. Fai clic su Update EBS encryption.
  6. Ripeti l'operazione per ogni regione che richiede la modifica.

Nota:la crittografia del volume EBS viene configurata in base alla regione.

interfaccia a riga di comando AWS

  1. Esegui aws --region <region> ec2 enable-ebs-encryption-by-default
  2. Verifica che "EbsEncryptionByDefault": true sia visualizzato.
  3. Ripeti ogni regione per cui è richiesta la modifica.

Nota:la crittografia del volume EBS viene configurata in base alla regione.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Ec2 Instances In Vpc

Nome categoria nell'API: EC2_INSTANCES_IN_VPC

Amazon VPC offre maggiori funzionalità di sicurezza rispetto a EC2 Classic. È consigliabile che tutti i nodi appartengano a un VPC Amazon.

Suggerimento: assicura che tutte le istanze appartengano a un VPC

Per correggere questo esito, procedi nel seguente modo:

Terraform

Se in Terraform sono definite istanze classiche di EC2, puoi modificare le risorse per farle parte di un VPC. Questa migrazione dipenderà da un'architettura che si adatta meglio alle tue esigenze. Di seguito è riportato un semplice esempio di Terraform che illustra una EC2 esposta pubblicamente in un VPC.

  resource "aws_vpc" "example_vpc" {
    cidr_block = "10.0.0.0/16"
  }

  resource "aws_subnet" "example_public_subnet" {
    vpc_id            = aws_vpc.example_vpc.id
    cidr_block        = "10.0.1.0/24"
    availability_zone = "1a"
  }

  resource "aws_internet_gateway" "example_igw" {
    vpc_id = aws_vpc.example_vpc.id
  }

  resource "aws_key_pair" "example_key" {
    key_name   = "web-instance-key"
    public_key = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQD3F6tyPEFEzV0LX3X8BsXdMsQz1x2cEikKDEY0aIj41qgxMCP/iteneqXSIFZBp5vizPvaoIR3Um9xK7PGoW8giupGn+EPuxIA4cDM4vzOqOkiMPhz5XK0whEjkVzTo4+S0puvDZuwIsdiW9mxhJc7tgBNL0cYlWSYVkz4G/fslNfRPW5mYAM49f4fhtxPb5ok4Q2Lg9dPKVHO/Bgeu5woMc7RY0p1ej6D4CKFE6lymSDJpW0YHX/wqE9+cfEauh7xZcG0q9t2ta6F6fmX0agvpFyZo8aFbXeUBr7osSCJNgvavWbM/06niWrOvYX2xwWdhXmXSrbX8ZbabVohBK41 email@example.com"
  }

  resource "aws_security_group" "web_sg" {
    name   = "http and ssh"
    vpc_id = aws_vpc.some_custom_vpc.id

    ingress {
      from_port   = 80
      to_port     = 80
      protocol    = "tcp"
      cidr_blocks = ["0.0.0.0/0"]
    }

    ingress {
      from_port   = 22
      to_port     = 22
      protocol    = "tcp"
      cidr_blocks = ["0.0.0.0/0"]
    }

    egress {
      from_port   = 0
      to_port     = 0
      protocol    = -1
      cidr_blocks = ["0.0.0.0/0"]
    }
  }

  resource "aws_instance" "web" {
    ami                    = <ami_id>
    instance_type          = <instance_flavor>
    key_name               = aws_key_pair.example_key.name
    monitoring             = true
    subnet_id              = aws_subnet.example_public_subnet.id
    vpc_security_group_ids = [aws_security_group.web_sg.id]
    metadata_options {
      http_tokens = "required"
    }
  }

Console AWS

Per eseguire la migrazione di EC2 Classic a VPC, consulta Eseguire la migrazione da EC2-Classic a un VPC

interfaccia a riga di comando AWS

Questo esempio di AWS CLI mostra la stessa infrastruttura definita con Terraform. È un semplice esempio di istanza EC2 esposta pubblicamente in un VPC

Crea VPC

  aws ec2 create-vpc \
  --cidr-block 10.0.0.0/16

Crea subnet pubblica

  aws ec2 create-subnet \
  --availability-zone 1a \
  --cidr-block 10.0.1.0/24 \
  --vpc-id <id_from_create-vpc_command>

Crea gateway internet

  aws ec2 create-internet-gateway

Collega gateway internet a VPC

  aws ec2 attach-internet-gateway \
  --internet-gateway-id <id_from_create-internet-gateway_command> \
  --vpc-id <id_from_create-vpc_command>

Crea coppia di chiavi: salverà la tua chiave privata in /.ssh/web-instance-key.pem

  aws ec2 create-key-pair \
  --key-name web-instance-key \
  --query "KeyMaterial" \
  --output text > ~/.ssh/web-instance-key.pem && \
  chmod 400 ~/.ssh/web-instance-key.pem

Crea gruppo di sicurezza

  aws ec2 create-security-group \
  --group-name "http and ssh" \
  --vpc-id <id_from_create-vpc_command>

Crea regole per il gruppo di sicurezza: per un accesso più limitato, definisci un CIDR più limitato per SSH sulla porta 22

  aws ec2 authorize-security-group-ingress \
  --group-id <id_from_create-security-group_command>
  --protocol tcp \
  --port 80 \
  --cidr 0.0.0.0/0

  aws ec2 authorize-security-group-ingress \
  --group-id <id_from_create-security-group_command>
  --protocol tcp \
  --port 22 \
  --cidr 0.0.0.0/0

  aws ec2 authorize-security-group-egress \
  --group-id <id_from_create-security-group_command>
  --protocol -1 \
  --port 0 \
  --cidr 0.0.0.0/0

Crea istanza EC2

  aws ec2 run-instances \
  --image-id <ami_id> \
  --instance-type <instance_flavor> \
  --metadata-options "HttpEndpoint=enabled,HttpTokens=required" \
  --monitoring true \
  --key-name web-instance-key \
  --subnet-id <id_from_create-subnet_command> \
  --security-group-ids <id_from_create-security-group_command>

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Ec2 Instance No Public Ip

Nome categoria nell'API: EC2_INSTANCE_NO_PUBLIC_IP

Le istanze EC2 con un indirizzo IP pubblico presentano un rischio maggiore di compromissione. Ti consigliamo di non configurare le istanze EC2 con un indirizzo IP pubblico.

Suggerimento: assicura che nessuna istanza abbia un IP pubblico

Per correggere questo esito, procedi nel seguente modo:

Terraform

Utilizza l'argomento associate_public_ip_address = false con la risorsa aws_instance per garantire che venga eseguito il provisioning delle istanze EC2 senza un indirizzo IP pubblico


resource "aws_instance" "no_public_ip" {
  ...
  associate_public_ip_address = false
}

Console AWS

Per impostazione predefinita, per le subnet non predefinite l'attributo degli indirizzi pubblici IPv4 è impostato su false, mentre per le subnet predefinite questo attributo è impostato su true. Un'eccezione è una subnet non predefinita creata dalla procedura guidata di avvio di Amazon EC2: la procedura guidata imposta l'attributo su true. Puoi modificare questo attributo utilizzando la console Amazon VPC.

a modificare il comportamento degli indirizzi IPv4 pubblici della subnet.

  1. Apri la console VPC Amazon all'indirizzo https://console.aws.amazon.com/vpc/.
  2. Nel riquadro di navigazione, scegli Subnet.
  3. Seleziona la subnet e scegli Azioni, Modifica impostazioni subnet.
  4. La casella di controllo Abilita assegnazione automatica dell'indirizzo IPv4 pubblico, se selezionata, richiede un indirizzo IPv4 pubblico per tutte le istanze avviate nella subnet selezionata. Seleziona o deseleziona la casella di controllo come richiesto, quindi scegli Salva.

interfaccia a riga di comando AWS

Il seguente comando esegue un'istanza EC2 in una subnet predefinita senza associare un indirizzo IP pubblico.

aws ec2 run-instances \
--image-id <ami_id> \
--instance-type <instance_flavor> \
--no-associate-public-ip-address \
--key-name MyKeyPair

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Ec2 Managedinstance Association Compliance Status Check

Nome categoria nell'API: EC2_MANAGEDINSTANCE_ASSOCIATION_COMPLIANCE_STATUS_CHECK

Un'associazione di State Manager è una configurazione assegnata alle tue istanze gestite. La configurazione definisce lo stato che vuoi mantenere sulle istanze. Ad esempio, un'associazione può specificare che il software antivirus deve essere installato ed in esecuzione sulle tue istanze o che determinate porte debbano essere chiuse. Le istanze EC2 che hanno un'associazione con AWS Systems Manager sono gestite da Systems Manager, il che semplifica l'applicazione di patch, la correzione di configurazioni errate e la risposta agli eventi di sicurezza.

Suggerimento: controlla l'associazione del gestore di sistemi AWS per lo stato di conformità

Per correggere questo esito, procedi nel seguente modo:

Terraform

L'esempio seguente mostra come creare un'istanza EC2 semplice, un documento AWS Systems Manager (SSM) e un'associazione tra SSM e l'istanza EC2. I documenti supportati sono di tipo Command e Policy.

resource "aws_instance" "web" {
  ami           = "<iam_id>"
  instance_type = "<instance_flavor>"
}

resource "aws_ssm_document" "check_ip" {
  name          = "check-ip-config"
  document_type = "Command"

  content = <<DOC
  {
    "schemaVersion": "1.2",
    "description": "Check ip configuration of a Linux instance.",
    "parameters": {

    },
    "runtimeConfig": {
      "aws:runShellScript": {
        "properties": [
          {
            "id": "0.aws:runShellScript",
            "runCommand": ["ifconfig"]
          }
        ]
      }
    }
  }
DOC
}

resource "aws_ssm_association" "check_ip_association" {
  name = aws_ssm_document.check_ip.name

  targets {
    key    = "InstanceIds"
    values = [aws_instance.web.id]
  }
}

Console AWS

Per informazioni sulla configurazione delle associazioni con AWS Systems Manager utilizzando la console, consulta Creazione di associazioni nella documentazione di AWS Systems Manager.

interfaccia a riga di comando AWS

Crea un documento SSM

aws ssm create-document \
--name <document_name> \
--content  file://path/to-file/document.json \
--document-type "Command"

Creare un'associazione SSM

aws ssm create-association \
--name <association_name> \
--targets "Key=InstanceIds,Values=<instance-id-1>,<instance-id-2>"

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Ec2 Managedinstance Patch Compliance Status Check

Nome categoria nell'API: EC2_MANAGEDINSTANCE_PATCH_COMPLIANCE_STATUS_CHECK

Questo controllo verifica se lo stato della conformità dell'associazione di AWS Systems Manager è COMPLIANT o NON_COMPLIANT dopo l'esecuzione dell'associazione su un'istanza. Il controllo non riesce se lo stato di conformità dell'associazione è NON_COMPLIANT.

Un'associazione di State Manager è una configurazione assegnata alle tue istanze gestite. La configurazione definisce lo stato che vuoi mantenere sulle istanze. Ad esempio, un'associazione può specificare che il software antivirus deve essere installato ed in esecuzione sulle tue istanze o che determinate porte debbano essere chiuse.

Dopo aver creato una o più associazioni di State Manager, le informazioni sullo stato di conformità sono immediatamente disponibili. Puoi visualizzare lo stato di conformità nella console o in risposta ai comandi AWS CLI o alle azioni corrispondenti dell'API Systems Manager. Per le associazioni, Conformità della configurazione mostra lo stato di conformità (Conforme o Non conforme). Mostra inoltre il livello di gravità assegnato all'associazione, ad esempio Critica o Media.

Per saperne di più sulla conformità dell'associazione di State Manager, consulta la sezione Informazioni sulla conformità dell'associazione di State Manager nella Guida dell'utente di AWS Systems Manager.

Suggerimento: controlla lo stato di conformità delle patch di AWS Systems Manager

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Ec2 Metadata Service Allows Imdsv2

Nome categoria nell'API: EC2_METADATA_SERVICE_ALLOWS_IMDSV2

Quando abilitano il servizio metadati sulle istanze AWS EC2, gli utenti hanno la possibilità di utilizzare il servizio metadati istanza versione 1 (IMDSv1; un metodo di richiesta/risposta) o la versione 2 del servizio metadati istanza (IMDSv2; un metodo orientato alla sessione).

Consiglio: assicurati che il servizio metadati EC2 consenta solo IMDSv2

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Ec2 Volume Inuse Check

Nome categoria nell'API: EC2_VOLUME_INUSE_CHECK

Identificare e rimuovere i volumi Elastic Block Store (EBS) non collegati (non utilizzati) nel tuo account AWS per ridurre il costo della fattura mensile di AWS. L'eliminazione di volumi EBS inutilizzati riduce anche il rischio che dati riservati/sensibili lascino la tua sede. Inoltre, questo controllo verifica anche se le istanze EC2 archiviate sono configurate per l'eliminazione dei volumi alla terminazione.

Per impostazione predefinita, le istanze EC2 sono configurate in modo da eliminare i dati in tutti i volumi EBS associati all'istanza e il volume EBS radice dell'istanza. Tuttavia, tutti i volumi EBS non principali collegati all'istanza, all'avvio o durante l'esecuzione, vengono resi persistenti dopo la terminazione per impostazione predefinita.

Suggerimento: verifica se i volumi EBS sono collegati alle istanze EC2 e configurati per l'eliminazione al termine dell'istanza

Per correggere questo esito, procedi nel seguente modo:

Terraform

Per evitare questo scenario con Terraform, crea istanze EC2 con blocchi EBS incorporati. In questo modo, al momento della terminazione dell'istanza, qualsiasi blocco EBS associato all'istanza (non solo il root) verrà eliminato impostando l'attributo ebs_block_device.delete_on_termination come true per impostazione predefinita.

resource "aws_instance" "web" {
    ami                    = <ami_id>
    instance_type          = <instance_flavor>
    ebs_block_device {
      delete_on_termination = true # Default
      device_name           = "/dev/sdh"
    }

Console AWS

Eliminare un volume EBS utilizzando la console

  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.
  2. Nel riquadro di navigazione, scegli Volumi.
  3. Seleziona il volume da eliminare e scegli Azioni, Elimina volume.
  4. Nota: se il volume Elimina non è selezionabile, significa che il volume viene collegato a un'istanza. Devi scollegare il volume dall'istanza prima di poterlo eliminare.
  5. Nella finestra di dialogo di conferma, scegli Elimina.

interfaccia a riga di comando AWS

Questo comando di esempio elimina un volume disponibile con l'ID volume vol-049df61146c4d7901. Se il comando ha esito positivo, non viene restituito alcun output.

aws ec2 delete-volume --volume-id vol-049df61146c4d7901

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Efs Encrypted Check

Nome categoria nell'API: EFS_ENCRYPTED_CHECK

Amazon EFS supporta due forme di crittografia per i file system: la crittografia dei dati in transito e la crittografia at-rest. Questo verifica che tutti i file system EFS siano configurati con crittografia at-rest in tutte le regioni abilitate nell'account.

Suggerimento: controlla se la tecnologia EFS è configurata per criptare i dati dei file utilizzando KMS

Per correggere questo esito, procedi nel seguente modo:

Terraform

Il seguente snippet di codice può essere utilizzato per creare un EFS criptato KMS (nota: l'attributo kms_key_id è facoltativo e verrà creata una chiave se non viene trasmesso alcun ID chiave kms)

resource "aws_efs_file_system" "encrypted-efs" {
  creation_token = "my-kms-encrypted-efs"
  encrypted      = true
  kms_key_id     = "arn:aws:kms:us-west-2:12344375555:key/16393ebd-3348-483f-b162-99b6648azz23"

  tags = {
    Name = "MyProduct"
  }
}

Console AWS

Per configurare EFS con la crittografia utilizzando la console AWS, vedi Crittografia di un file system at-rest utilizzando la console.

interfaccia a riga di comando AWS

È importante notare che, quando la creazione di EFS dalla console, consente la crittografia at-rest per impostazione predefinita, questo non è vero per EFS create utilizzando l'interfaccia a riga di comando, l'API o l'SDK. L'esempio seguente consente di creare un file system criptato nella tua infrastruttura.

aws efs create-file-system \
--backup \
--encrypted \
--region us-east-1 \

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Efs In Backup Plan

Nome categoria nell'API: EFS_IN_BACKUP_PLAN

Le best practice di Amazon consigliano di configurare i backup per i tuoi file system Elastic (EFS). In questo modo, verifica la presenza di backup abilitati in tutte le regioni EFS in ogni regione abilitata nel tuo account AWS.

Suggerimento: verifica se i file system EFS sono inclusi nei piani di backup AWS

Per correggere questo esito, procedi nel seguente modo:

Terraform

Utilizza la risorsa aws_efs_backup_policy per configurare un criterio di backup per i file system EFS.

resource "aws_efs_file_system" "encrypted-efs" {
  creation_token = "my-encrypted-efs"
  encrypted      = true

  tags = merge({
    Name = "${local.resource_prefix.value}-efs"
    }, {
    git_file             = "terraform/aws/efs.tf"
    git_org              = "your_git_org"
    git_repo             = "your_git_repo"
  })
}

resource "aws_efs_backup_policy" "policy" {
  file_system_id = aws_efs_file_system.encrypted-efs.id

  backup_policy {
    status = "ENABLED"
  }
}

Console AWS

Sono disponibili due opzioni per il backup di EFS: servizio di backup AWS e soluzione di backup da EFS a EFS. Per risolvere i problemi di EFS non di cui è stato eseguito il backup utilizzando la console, vedi:

  1. Utilizzo di AWS Backup per eseguire il backup e il ripristino dei file system Amazon EFS
  2. Backup da EFS a EFS

interfaccia a riga di comando AWS

Esistono alcune opzioni per creare file system EFS conformi utilizzando l'interfaccia a riga di comando:

  1. Crea una EFS con il backup automatico abilitato (impostazione predefinita per l'archiviazione One Zone e la disponibilità condizionale al backup nella regione AWS)
  2. Crea una EFS e inserisci un criterio di backup

Tuttavia, supponendo che la correzione debba avvenire in EFS esistente, la soluzione migliore è creare un criterio di backup e associarlo al tuo EFS non conforme. Avrai bisogno di un comando per ogni EFS nella tua infrastruttura.

arr=( $(aws efs describe-file-systems | jq -r '.FileSystems[].FileSystemId') )
for efs in "${arr[@]}"
do
  aws efs put-backup-policy \
  --file-system-id "${efs}" \
  --backup-policy "Status=ENABLED"
done

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Elb Acm Certificate Required

Nome categoria nell'API: ELB_ACM_CERTIFICATE_REQUIRED

Verifica se il bilanciatore del carico classico utilizza certificati HTTPS/SSL forniti da AWS Certificate Manager (ACM). Il controllo non riesce se il bilanciatore del carico classico configurato con il listener HTTPS/SSL non utilizza un certificato fornito da ACM.

Per creare un certificato, puoi utilizzare ACM o uno strumento che supporti i protocolli SSL e TLS, come OpenSSL. Il Pannello di sicurezza consiglia di utilizzare ACM per creare o importare certificati per il bilanciatore del carico.

ACM si integra con i bilanciatori del carico classici per consentirti di eseguire il deployment del certificato sul bilanciatore del carico. Inoltre, dovresti rinnovare automaticamente questi certificati.

Suggerimento: verifica che tutti i bilanciatori del carico classici utilizzino i certificati SSL forniti da AWS Certificate Manager

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Elb Deletion Protection Enabled

Nome categoria nell'API: ELB_DELETION_PROTECTION_ENABLED

Verifica se per un bilanciatore del carico delle applicazioni è abilitata la protezione da eliminazione. Il controllo non riesce se la protezione da eliminazione non è configurata.

Abilita la protezione da eliminazione per impedire l'eliminazione del bilanciatore del carico delle applicazioni.

Suggerimento: la protezione da eliminazione del bilanciatore del carico delle applicazioni deve essere abilitata

Per correggere questo esito, procedi nel seguente modo:

Console AWS

Per impedire che il bilanciatore del carico venga eliminato accidentalmente, puoi abilitare la protezione da eliminazione. Per impostazione predefinita, la protezione da eliminazione è disabilitata per il bilanciatore del carico.

Se abiliti la protezione da eliminazione per il bilanciatore del carico, devi disabilitarla prima di poter eliminare il bilanciatore del carico.

Per abilitare la protezione dall'eliminazione dalla console.

  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.
  2. Nel riquadro di navigazione, in Bilanciamento del carico, scegli Bilanciatori del carico.
  3. Scegli il bilanciatore del carico.
  4. Nella scheda Descrizione, scegli Modifica attributi.
  5. Nella pagina Modifica attributi del bilanciatore del carico, seleziona Abilita per l'eliminazione della protezione, quindi scegli Salva.
  6. Scegli Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Elb Logging Enabled

Nome categoria nell'API: ELB_LOGGING_ENABLED

Questa operazione consente di verificare se il logging delle applicazioni e il bilanciatore del carico classico sono abilitati. Il controllo non riesce se access_logs.s3.enabled è falso.

Elastic Load Balancing fornisce i log degli accessi che acquisiscono informazioni dettagliate sulle richieste inviate al bilanciatore del carico. Ciascun log contiene informazioni quali l'ora in cui è stata ricevuta la richiesta, l'indirizzo IP del client, le latenze, i percorsi delle richieste e le risposte del server. Puoi utilizzare questi log degli accessi per analizzare i modelli di traffico e risolvere i problemi.

Per saperne di più, consulta Log di accesso per il bilanciatore del carico classico nella Guida dell'utente per bilanciatori del carico classici.

Suggerimento: verifica se il logging è abilitato per i bilanciatori del carico classici e delle applicazioni

Per correggere questo esito, procedi nel seguente modo:

Console AWS

Per risolvere il problema, aggiorna i bilanciatori del carico per abilitare il logging.

Per abilitare i log degli accessi

  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.
  2. Nel riquadro di navigazione, scegli Bilanciatori del carico.
  3. Scegli un bilanciatore del carico delle applicazioni o un bilanciatore del carico classico.
  4. Da Azioni, scegli Modifica attributi.
  5. In Log degli accessi, scegli Abilita.
  6. Inserisci la tua località S3. Questa località può esistere o essere creata automaticamente. Se non specifichi un prefisso, i log degli accessi vengono archiviati nella directory principale del bucket S3.
  7. Scegli Salva.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Elb Tls Https Listeners Only

Nome categoria nell'API: ELB_TLS_HTTPS_LISTENERS_ONLY

Questo controllo garantisce che tutti i bilanciatori del carico classici siano configurati per utilizzare comunicazioni sicure.

Un listener è un processo che verifica le richieste di connessione. È configurato con un protocollo e una porta per le connessioni front-end (da client a bilanciatore del carico), un protocollo e una porta per le connessioni back-end (dal bilanciatore del carico all'istanza). Per informazioni su porte, protocolli e configurazioni di listener supportate da Elastic Load Balancing, vedi Listener per il bilanciatore del carico classico.

Suggerimento: verifica che tutti i bilanciatori del carico classici siano configurati con listener SSL o HTTPS

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Encrypted Volumes

Nome categoria nell'API: ENCRYPTED_VOLUMES

Controlla se i volumi EBS in uno stato collegato sono criptati. Per superare questo controllo, i volumi EBS devono essere in uso e criptati. Se il volume EBS non è collegato, non è soggetto a questo controllo.

Per un ulteriore livello di sicurezza dei dati sensibili nei volumi EBS, devi abilitare la crittografia at-rest di EBS. La crittografia di Amazon EBS offre una soluzione di crittografia intuitiva per le risorse EBS che non richiede la creazione, la manutenzione e la protezione della tua infrastruttura di gestione delle chiavi. Utilizza le chiavi KMS durante la creazione di volumi e snapshot criptati.

Per saperne di più sulla crittografia Amazon EBS, vedi Crittografia Amazon EBS nella Guida dell'utente di Amazon EC2 per le istanze Linux.

Suggerimento: i volumi Amazon EBS collegati devono essere criptati at-rest

Per correggere questo esito, procedi nel seguente modo:

Console AWS

Non esiste un modo diretto per criptare uno snapshot o un volume non criptato esistente. Puoi criptare un nuovo volume o snapshot solo quando lo crei.

Se hai abilitato la crittografia per impostazione predefinita, Amazon EBS cripta il nuovo volume o snapshot risultante utilizzando la chiave predefinita per la crittografia Amazon EBS. Anche se non hai abilitato la crittografia per impostazione predefinita, puoi abilitarla quando crei un singolo volume o snapshot. In entrambi i casi, puoi eseguire l'override della chiave predefinita per la crittografia Amazon EBS e scegliere una chiave simmetrica gestita dal cliente.

Per ulteriori informazioni, consulta gli argomenti Creazione di un volume Amazon EBS e Copia di uno snapshot Amazon EBS nella Guida dell'utente di Amazon EC2 per le istanze Linux.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Encryption At Rest Enabled Rds Instances

Nome categoria nell'API: ENCRYPTION_AT_REST_ENABLED_RDS_INSTANCES

Le istanze DB criptate di Amazon RDS utilizzano l'algoritmo di crittografia AES-256 standard del settore per criptare i dati sul server che ospita le tue istanze Amazon RDS DB. Dopo la crittografia dei dati, Amazon RDS gestisce l'autenticazione dell'accesso e la decrittografia dei dati in modo trasparente con un impatto minimo sulle prestazioni.

Suggerimento: assicurati che la crittografia at-rest sia abilitata per le istanze RDS

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Accedi alla console di gestione AWS e apri la dashboard RDS all'indirizzo https://console.aws.amazon.com/rds/.
  2. Nel pannello di navigazione a sinistra, fai clic su Databases.
  3. Seleziona l'istanza del database che deve essere criptata.
  4. Fai clic sul pulsante Actions in alto a destra e seleziona Take Snapshot.
  5. Nella pagina Crea snapshot, inserisci il nome del database di cui vuoi acquisire uno snapshot nel campo Snapshot Name e fai clic su Take Snapshot.
  6. Seleziona l'istantanea appena creata, fai clic sul pulsante Action in alto a destra e seleziona Copy snapshot dal menu Azione.
  7. Nella pagina Crea copia di snapshot DB, esegui le seguenti operazioni:
  • Nel campo Nuovo identificatore snapshot DB, inserisci un nome per new snapshot.
  • Seleziona Copy Tags. Il nuovo snapshot deve avere gli stessi tag dello snapshot di origine.
  • Seleziona Yes dall'elenco a discesa Enable Encryption per abilitare la crittografia. Puoi scegliere di utilizzare la chiave di crittografia predefinita AWS o una chiave personalizzata dall'elenco a discesa Chiave master.
  1. Fai clic su Copy Snapshot per creare una copia criptata dello snapshot dell'istanza selezionato.
  2. Seleziona la nuova copia criptata di snapshot e fai clic sul pulsante Action in alto a destra, quindi seleziona il pulsante Restore Snapshot dal menu Azione. Questa operazione ripristinerà lo snapshot criptato in una nuova istanza di database.
  3. Nella pagina Ripristina istanza DB, inserisci un nome univoco per la nuova istanza del database nel campo Identificatore istanza DB.
  4. Esamina i dettagli di configurazione dell'istanza e fai clic su Restore DB Instance.
  5. Una volta completato il nuovo processo di provisioning dell'istanza, è possibile aggiornare la configurazione dell'applicazione per fare riferimento all'endpoint della nuova istanza del database criptato. Una volta modificato l'endpoint del database a livello di applicazione, è possibile rimuovere l'istanza non criptata.

interfaccia a riga di comando AWS

  1. Esegui il comando describe-db-instances per elencare tutti i nomi di database RDS disponibili nella regione AWS selezionata. L'output comando dovrebbe restituire l'identificatore dell'istanza del database. aws rds describe-db-instances --region <region-name> --query 'DBInstances[*].DBInstanceIdentifier'
  2. Esegui il comando create-db-snapshot per creare uno snapshot per l'istanza di database selezionata. L'output comando restituirà new snapshot con il nome Nome snapshot DB. aws rds create-db-snapshot --region <region-name> --db-snapshot-identifier <DB-Snapshot-Name> --db-instance-identifier <DB-Name>
  3. Ora esegui il comando list-aliases per elencare gli alias delle chiavi KMS disponibili in una regione specificata. L'output comando dovrebbe restituire ogni key alias currently available. Per il nostro processo di attivazione della crittografia RDS, individua l'ID della chiave KMS predefinita di AWS. aws kms list-aliases --region <region-name>
  4. Esegui il comando copy-db-snapshot utilizzando l'ID chiave KMS predefinito per le istanze RDS restituite in precedenza per creare una copia criptata dello snapshot dell'istanza di database. L'output comando restituirà encrypted instance snapshot configuration. aws rds copy-db-snapshot --region <region-name> --source-db-snapshot-identifier <DB-Snapshot-Name> --target-db-snapshot-identifier <DB-Snapshot-Name-Encrypted> --copy-tags --kms-key-id <KMS-ID-For-RDS>
  5. Esegui il comando restore-db-instance-from-db-snapshot per ripristinare in una nuova istanza di database lo snapshot criptato creato nel passaggio precedente. Se l'operazione ha esito positivo, l'output comando dovrebbe restituire la nuova configurazione dell'istanza di database criptata. aws rds restore-db-instance-from-db-snapshot --region <region-name> --db-instance-identifier <DB-Name-Encrypted> --db-snapshot-identifier <DB-Snapshot-Name-Encrypted>
  6. Esegui il comando describe-db-instances per elencare tutti i nomi di database RDS, disponibili nella regione AWS selezionata. L'output restituirà il nome dell'identificatore dell'istanza del database Seleziona il nome del database criptato che abbiamo appena creato DB-Name-Encrypted. aws rds describe-db-instances --region <region-name> --query 'DBInstances[*].DBInstanceIdentifier'
  7. Esegui di nuovo il comando describe-db-instances utilizzando l'identificatore dell'istanza RDS restituito in precedenza per determinare se l'istanza del database selezionata è criptata. L'output comando deve restituire lo stato di crittografia True. aws rds describe-db-instances --region <region-name> --db-instance-identifier <DB-Name-Encrypted> --query 'DBInstances[*].StorageEncrypted'

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Encryption Enabled Efs File Systems

Nome categoria nell'API: ENCRYPTION_ENABLED_EFS_FILE_SYSTEMS

I dati EFS devono essere criptati at-rest utilizzando AWS KMS (Key Management Service).

Consiglio: assicurati che la crittografia sia abilitata per i file system EFS

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Accedi ad AWS Management Console e vai alla dashboard Elastic File System (EFS).
  2. Seleziona File Systems dal pannello di navigazione a sinistra.
  3. Fai clic sul pulsante Create File System nel menu in alto della dashboard per avviare la procedura di configurazione del file system.
  4. Nella pagina di configurazione di Configure file system access, esegui queste azioni.
  5. Scegli il VPC corretto dall'elenco a discesa VPC.
  6. Nella sezione Crea target di montaggio, seleziona le caselle di controllo per tutte le zone di disponibilità (AZ) all'interno del VPC selezionato. Queste saranno le destinazioni per il montaggio.
  7. Fai clic su Next step per continuare.

  8. Esegui le seguenti operazioni nella pagina Configure optional settings.

  9. Crea tags per descrivere il tuo nuovo file system.

  10. Scegli performance mode in base ai tuoi requisiti.

  11. Seleziona la casella di controllo Enable encryption e scegli aws/elasticfilesystem dall'elenco a discesa Seleziona chiave master KMS per abilitare la crittografia per il nuovo file system utilizzando la chiave master predefinita fornita e gestita da AWS KMS.

  12. Fai clic su Next step per continuare.

  13. Esamina i dettagli di configurazione del file system nella pagina review and create, quindi fai clic su Create File System per creare il nuovo file system AWS EFS.

  14. Copia i dati dal precedente file system EFS non criptato nel file system criptato appena creato.

  15. Rimuovi il file system non criptato al termine della migrazione dei dati al file system criptato appena creato.

  16. Modifica la regione AWS dalla barra di navigazione e ripeti l'intero processo per le altre regioni AWS.

Dall'interfaccia a riga di comando: 1. Esegui il comando describe-file-systems per descrivere le informazioni di configurazione disponibili per il file system selezionato (non criptato) (consulta la sezione Controllo per identificare la risorsa corretta):

aws efs describe-file-systems --region <region> --file-system-id <file-system-id from audit section step 2 output>
  1. L'output comando dovrebbe restituire le informazioni di configurazione richieste.
  2. Per eseguire il provisioning di un nuovo file system AWS EFS, è necessario generare un UUID (Universally Unique Identifier) per creare il token richiesto dal comando create-file-system. Per creare il token richiesto, puoi utilizzare un UUID generato in modo casuale da "https://www.uuidgenerator.net".
  3. Esegui il comando create-file-system utilizzando il token univoco creato nel passaggio precedente. aws efs create-file-system --region <region> --creation-token <Token (randomly generated UUID from step 3)> --performance-mode generalPurpose --encrypted
  4. L'output comando dovrebbe restituire i nuovi metadati di configurazione del file system.
  5. Esegui il comando create-mount-target utilizzando l'ID file system EFS appena creato restituito al passaggio precedente come identificatore e l'ID della zona di disponibilità (AZ) che rappresenterà la destinazione del montaggio:
aws efs create-mount-target --region <region> --file-system-id <file-system-id> --subnet-id <subnet-id>
  1. L'output comando dovrebbe restituire i nuovi metadati di destinazione del montaggio.
  2. Ora puoi montare il tuo file system da un'istanza EC2.
  3. Copia i dati dal precedente file system EFS non criptato nel file system criptato appena creato.
  4. Rimuovi il file system non criptato al termine della migrazione dei dati al file system criptato appena creato. aws efs delete-file-system --region <region> --file-system-id <unencrypted-file-system-id>
  5. Cambia la regione AWS aggiornando --region e ripeti l'intero processo per le altre regioni aws.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Iam Password Policy

Nome categoria nell'API: IAM_PASSWORD_POLICY

AWS consente criteri personalizzati per le password sul tuo account AWS per specificare requisiti di complessità e periodi di rotazione obbligatori per le password degli utenti IAM. Se non imposti un criterio personalizzato per le password, le password utente IAM devono soddisfare il criterio predefinito per le password AWS. Le best practice per la sicurezza di AWS consigliano i seguenti requisiti di complessità delle password:

  • Richiedi almeno un carattere maiuscolo nella password.
  • È necessario almeno un carattere minuscolo nelle password.
  • È necessario almeno un simbolo nelle password.
  • Richiedere almeno un numero nelle password.
  • È richiesta una lunghezza minima della password di 14 caratteri.
  • Richiedi almeno 24 password prima di consentire il riutilizzo.
  • Richiedi almeno 90 caratteri prima della scadenza della password

Questa opzione controlla tutti i requisiti specificati dei criteri relativi alle password.

Suggerimento: verifica se il criterio per le password dell'account per gli utenti IAM soddisfa i requisiti specificati

Per correggere questo esito, procedi nel seguente modo:

Terraform

resource "aws_iam_account_password_policy" "strict" {
  allow_users_to_change_password = true
  require_uppercase_characters   = true
  require_lowercase_characters   = true
  require_symbols                = true
  require_numbers                = true
  minimum_password_length        = 14
  password_reuse_prevention      = 24
  max_password_age               = 90
}

Console AWS

Per creare un criterio per le password personalizzato

  1. Accedi alla console di gestione AWS e apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.
  2. Nel riquadro di navigazione, scegli Impostazioni account.
  3. Nella sezione Criteri relativi alle password, scegli Modifica criterio della password.
  4. Seleziona le opzioni che vuoi applicare ai criteri relativi alle password e scegli Salva modifiche.

Per modificare un criterio personalizzato per le password

  1. Accedi alla console di gestione AWS e apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.
  2. Nel riquadro di navigazione, scegli Impostazioni account.
  3. Nella sezione Criteri relativi alle password, scegli Modifica.
  4. Seleziona le opzioni che vuoi applicare ai criteri relativi alle password e scegli Salva modifiche.

interfaccia a riga di comando AWS

aws iam update-account-password-policy \
--allow-users-to-change-password \
--require-uppercase-characters \
--require-lowercase-characters \
--require-symbols \
--require-numbers \
--minimum-password-length 14 \
--password-reuse-prevention 24 \
--max-password-age 90

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Iam Password Policy Prevents Password Reuse

Nome categoria nell'API: IAM_PASSWORD_POLICY_PREVENTS_PASSWORD_REUSE

I criteri delle password IAM possono impedire il riutilizzo di una determinata password da parte dello stesso utente. È consigliabile che i criteri relativi alle password impediscano il riutilizzo delle password.

Suggerimento: assicurati che il criterio della password IAM impedisca il riutilizzo della password

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Accedi alla console AWS (con le autorizzazioni appropriate per visualizzare le impostazioni dell'account Identity Access Management)
  2. Vai al servizio IAM nella console AWS
  3. Fai clic su Impostazioni account nel riquadro a sinistra.
  4. Seleziona "Impedisci il riutilizzo della password"
  5. Imposta l'opzione "Numero di password da ricordare" su 24

interfaccia a riga di comando AWS

 aws iam update-account-password-policy --password-reuse-prevention 24

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Iam Password Policy Requires Minimum Length 14 Greater

Nome categoria nell'API: IAM_PASSWORD_POLICY_REQUIRES_MINIMUM_LENGTH_14_GREATER

I criteri relativi alle password vengono, in parte, utilizzati per applicare i requisiti di complessità delle password. È possibile utilizzare i criteri delle password IAM per garantire che le password abbiano almeno una lunghezza specifica. È consigliabile che i criteri relativi alle password richiedano una lunghezza minima delle password di 14 caratteri.

Suggerimento: assicurati che il criterio della password IAM richieda una lunghezza minima di 14 caratteri

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Accedi alla console AWS (con le autorizzazioni appropriate per visualizzare le impostazioni dell'account Identity Access Management)
  2. Vai al servizio IAM nella console AWS
  3. Fai clic su Impostazioni account nel riquadro a sinistra.
  4. Imposta "Lunghezza minima della password" su 14 o su un valore superiore.
  5. Fai clic su "Applica criteri per le password"

interfaccia a riga di comando AWS

 aws iam update-account-password-policy --minimum-password-length 14

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Iam Policies Allow Full Administrative Privileges Attached

Nome categoria nell'API: IAM_POLICIES_ALLOW_FULL_ADMINISTRATIVE_PRIVILEGES_ATTACHED

I criteri IAM sono i mezzi mediante i quali vengono concessi i privilegi a utenti, gruppi o ruoli. È consigliato e considerato un consiglio per la sicurezza standard di concedere il privilegio minimo, ovvero solo le autorizzazioni necessarie per eseguire un'attività. Stabilisci cosa devono fare gli utenti, quindi crea per loro criteri che consentano agli utenti di eseguire solo quelle attività, invece di concedere privilegi amministrativi completi.

Consiglio: assicurati che non siano collegati criteri IAM che consentono privilegi amministrativi completi ":"

Per correggere questo esito, procedi nel seguente modo:

Console AWS

Per scollegare il criterio che ha privilegi amministrativi completi, esegui le operazioni seguenti:

  1. Accedi alla console di gestione AWS e apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.
  2. Nel riquadro di navigazione, fai clic su Criteri e cerca il nome del criterio indicato nel passaggio di controllo.
  3. Seleziona il criterio da eliminare.
  4. Nel menu Azioni del criterio, seleziona prima Detach
  5. Seleziona tutti gli utenti, gruppi e ruoli a cui è associato questo criterio
  6. Fai clic su Detach Policy.
  7. Nel menu Azioni del criterio, seleziona Detach

interfaccia a riga di comando AWS

Per scollegare il criterio che ha privilegi amministrativi completi, come indicato nel passaggio di controllo, esegui le operazioni seguenti:

  1. Elenca tutti gli utenti, i gruppi e i ruoli IAM a cui è associato il criterio gestito specificato.
 aws iam list-entities-for-policy --policy-arn <policy_arn>
  1. Scollega il criterio da tutti gli utenti IAM:
 aws iam detach-user-policy --user-name <iam_user> --policy-arn <policy_arn>
  1. Scollega il criterio da tutti i gruppi IAM:
 aws iam detach-group-policy --group-name <iam_group> --policy-arn <policy_arn>
  1. Scollega il criterio da tutti i ruoli IAM:
 aws iam detach-role-policy --role-name <iam_role> --policy-arn <policy_arn>

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Iam Users Receive Permissions Groups

Nome categoria nell'API: IAM_USERS_RECEIVE_PERMISSIONS_GROUPS

Agli utenti IAM viene concesso l'accesso a servizi, funzioni e dati tramite i criteri IAM. Esistono quattro modi per definire i criteri per un utente: 1) modificare direttamente il criterio utente, ovvero un criterio in linea o utente; 2) collegare un criterio direttamente a un utente; 3) aggiungere l'utente a un gruppo IAM a cui è associato un criterio; 4) aggiungere l'utente a un gruppo IAM a cui è associato un criterio in linea.

È consigliata solo la terza implementazione.

Suggerimento: assicurati che gli utenti IAM ricevano le autorizzazioni solo tramite i gruppi

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Iam User Group Membership Check

Nome categoria nell'API: IAM_USER_GROUP_MEMBERSHIP_CHECK

Gli utenti IAM devono sempre far parte di un gruppo IAM per ottemperare alle best practice per la sicurezza IAM.

Aggiungendo utenti a un gruppo, è possibile condividere criteri tra tipi di utenti.

Suggerimento: verifica se gli utenti IAM sono membri di almeno un gruppo IAM

Per correggere questo esito, procedi nel seguente modo:

Terraform

resource "aws_iam_user" "example" {
  name = "test-iam-user"
  path = "/users/dev/"
}

resource "aws_iam_group" "example" {
  name = "Developers"
  path = "/users/dev/"
}

resource "aws_iam_user_group_membership" "example" {
  user   = aws_iam_user.example.name
  groups = [aws_iam_group.example.name]
}

Console AWS

Quando utilizzi la console di gestione AWS per eliminare un utente IAM, IAM elimina automaticamente le seguenti informazioni:

  1. L'utente
  2. Qualsiasi iscrizione a gruppi di utenti, ovvero l'utente viene rimosso da tutti i gruppi di utenti IAM di cui l'utente era membro.
  3. Qualsiasi password associata all'utente
  4. Qualsiasi chiave di accesso appartenente all'utente
  5. Tutti i criteri incorporati incorporati nell'utente (non sono interessati i criteri applicati a un utente tramite le autorizzazioni di gruppo di utenti)

Per eliminare un utente IAM:

  1. Accedi alla console di gestione AWS e apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.
  2. Nel riquadro di navigazione, scegli Utenti, quindi seleziona la casella di controllo accanto al nome utente che vuoi eliminare.
  3. Nella parte superiore della pagina, scegli Elimina.
  4. Nella finestra di dialogo di conferma, inserisci il nome utente nel campo di immissione di testo per confermare l'eliminazione dell'utente.
  5. Scegli Elimina.

Per aggiungere un utente a un gruppo di utenti IAM:

  1. Accedi alla console di gestione AWS e apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.
  2. Nel riquadro di navigazione, scegli Gruppi di utenti, quindi il nome del gruppo.
  3. Scegli la scheda Utenti, quindi scegli Aggiungi utenti. Seleziona la casella di controllo accanto agli utenti che vuoi aggiungere.
  4. Scegli Aggiungi utenti.

interfaccia a riga di comando AWS

A differenza della console di gestione di Amazon Web Services, quando elimini un utente in modo programmatico, devi eliminare manualmente gli elementi associati all'utente, altrimenti l'eliminazione non va a buon fine.

Prima di tentare di eliminare un utente, rimuovi i seguenti elementi:

  1. Password ( DeleteLoginProfile )
  2. Chiavi di accesso ( DeleteAccessKey )
  3. Certificato di firma ( DeleteSigningCertificate)
  4. Chiave pubblica SSH ( DeleteSSHPublicKey)
  5. Credenziali Git ( DeleteServiceSpecificCredential)
  6. Dispositivo di autenticazione a più fattori (MFA) ( DisableMFADevice , DeleteVirtualMFADevice )
  7. Criteri incorporati ( DeleteUserPolicy)
  8. Criteri gestiti collegati ( DetachUserPolicy)
  9. Iscrizioni ai gruppi ( RemoveUserFromGroup)

Per eliminare un utente, dopo aver eliminato tutti gli elementi associati:

aws iam delete-user \
  --user-name "test-user"

Per aggiungere un utente IAM a un gruppo IAM:

aws iam add-user-to-group \
  --group-name "test-group"
  --user-name "test-user"

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Iam User Mfa Enabled

Nome categoria nell'API: IAM_USER_MFA_ENABLED

L'autenticazione a più fattori (MFA) è una best practice che aggiunge un ulteriore livello di protezione ai nomi utente e alle password. Con MFA, quando un utente accede alla console di gestione AWS, gli viene richiesto di fornire un codice di autenticazione sensibile al fattore tempo, fornito da un dispositivo virtuale o fisico registrato.

Suggerimento: verifica se per gli utenti AWS IAM è abilitata l'autenticazione a più fattori (MFA)

Per correggere questo esito, procedi nel seguente modo:

Terraform

Per quanto riguarda Terraform, esistono alcune opzioni per rimediare all'assenza di dispositivi MFA. Probabilmente disponi già di una struttura sensata per organizzare i tuoi utenti in gruppi e in criteri restrittivi.

L'esempio seguente mostra come:

  1. Creare gli utenti.
  2. Crea i profili di accesso degli utenti con una chiave pubblica PGP.
  3. Crea criteri di gruppo e di gruppo che consentono l'autogestione del profilo IAM.
  4. Associa gli utenti al gruppo.
  5. Creare dispositivi MFA virtuali per gli utenti.
  6. Fornisci a ogni utente il codice QR e la password di output.
variable "users" {
  type = set(string)
  default = [
    "test@example.com",
    "test2@example.com"
  ]
}

resource "aws_iam_user" "test_users" {
  for_each = toset(var.users)
  name     = each.key
}

resource "aws_iam_user_login_profile" "test_users_profile" {
  for_each                = var.users
  user                    = each.key
  # Key pair created using GnuPG, this is the public key
  pgp_key = file("path/to/gpg_pub_key_base64.pem")
  password_reset_required = true
  lifecycle {
    ignore_changes = [
      password_length,
      password_reset_required,
      pgp_key,
    ]
  }
}

resource "aws_iam_virtual_mfa_device" "test_mfa" {
  for_each                = toset(var.users)
  virtual_mfa_device_name = each.key
}

resource "aws_iam_group" "enforce_mfa_group" {
  name = "EnforceMFAGroup"
}

resource "aws_iam_group_membership" "enforce_mfa_group_membership" {
  name  = "EnforceMFAGroupMembership"
  group = aws_iam_group.enforce_mfa_group.name
  users = [for k in aws_iam_user.test_users : k.name]
}

resource "aws_iam_group_policy" "enforce_mfa_policy" {
  name   = "EnforceMFAGroupPolicy"
  group  = aws_iam_group.enforce_mfa_group.id
  policy = <<POLICY
{
  "Version": "2012-10-17",
  "Statement": [
    {
        "Sid": "AllowViewAccountInfo",
        "Effect": "Allow",
        "Action": [
            "iam:GetAccountPasswordPolicy",
            "iam:ListVirtualMFADevices"
        ],
        "Resource": "*"
    },
    {
        "Sid": "AllowManageOwnPasswords",
        "Effect": "Allow",
        "Action": [
            "iam:ChangePassword",
            "iam:GetUser"
        ],
        "Resource": "arn:aws:iam::*:user/$${aws:username}"
    },
    {
        "Sid": "AllowManageOwnAccessKeys",
        "Effect": "Allow",
        "Action": [
            "iam:CreateAccessKey",
            "iam:DeleteAccessKey",
            "iam:ListAccessKeys",
            "iam:UpdateAccessKey"
        ],
        "Resource": "arn:aws:iam::*:user/$${aws:username}"
    },
    {
        "Sid": "AllowManageOwnSigningCertificates",
        "Effect": "Allow",
        "Action": [
            "iam:DeleteSigningCertificate",
            "iam:ListSigningCertificates",
            "iam:UpdateSigningCertificate",
            "iam:UploadSigningCertificate"
        ],
        "Resource": "arn:aws:iam::*:user/$${aws:username}"
    },
    {
        "Sid": "AllowManageOwnSSHPublicKeys",
        "Effect": "Allow",
        "Action": [
            "iam:DeleteSSHPublicKey",
            "iam:GetSSHPublicKey",
            "iam:ListSSHPublicKeys",
            "iam:UpdateSSHPublicKey",
            "iam:UploadSSHPublicKey"
        ],
        "Resource": "arn:aws:iam::*:user/$${aws:username}"
    },
    {
        "Sid": "AllowManageOwnGitCredentials",
        "Effect": "Allow",
        "Action": [
            "iam:CreateServiceSpecificCredential",
            "iam:DeleteServiceSpecificCredential",
            "iam:ListServiceSpecificCredentials",
            "iam:ResetServiceSpecificCredential",
            "iam:UpdateServiceSpecificCredential"
        ],
        "Resource": "arn:aws:iam::*:user/$${aws:username}"
    },
    {
        "Sid": "AllowManageOwnVirtualMFADevice",
        "Effect": "Allow",
        "Action": [
            "iam:CreateVirtualMFADevice",
            "iam:DeleteVirtualMFADevice"
        ],
        "Resource": "arn:aws:iam::*:mfa/$${aws:username}"
    },
    {
        "Sid": "AllowManageOwnUserMFA",
        "Effect": "Allow",
        "Action": [
            "iam:DeactivateMFADevice",
            "iam:EnableMFADevice",
            "iam:ListMFADevices",
            "iam:ResyncMFADevice"
        ],
        "Resource": "arn:aws:iam::*:user/$${aws:username}"
    },
    {
        "Sid": "DenyAllExceptListedIfNoMFA",
        "Effect": "Deny",
        "NotAction": [
            "iam:CreateVirtualMFADevice",
            "iam:EnableMFADevice",
            "iam:GetUser",
            "iam:ListMFADevices",
            "iam:ListVirtualMFADevices",
            "iam:ResyncMFADevice",
            "sts:GetSessionToken"
        ],
        "Resource": "*",
        "Condition": {
            "BoolIfExists": {
                "aws:MultiFactorAuthPresent": "false"
            }
        }
    }
  ]
}
POLICY
}

output "user_password_map" {
  # Outputs a map in the format {"test@example.com": <PGPEncryptedPassword>, "test2@example.com": <PGPEncryptedPassword>}
  value = { for k, v in aws_iam_user_login_profile.test_users_profile : k => v.password }
}

output "user_qr_map" {
  # Outputs a map in the format {"test@example.com": <QRCode>, "test2@example.com": <QRCode>}
  value = { for k, v in aws_iam_virtual_mfa_device.test_mfa : k => v.qr_code_png }
}

Console AWS

Per abilitare l'autenticazione MFA per tutti gli account utente con accesso alla console AWS, vedi Abilitazione di un dispositivo di autenticazione a più fattori virtuale (MFA) (console) nella documentazione di AWS.

**

interfaccia a riga di comando AWS

Crea un dispositivo MFA

aws iam create-virtual-mfa-device \
  --virtual-mfa-device-name "test@example.com" \
  --outfile ./QRCode.png \
  --bootstrap-method QRCodePNG

Attiva dispositivo MFA per utente esistente

aws iam enable-mfa-device \
  --user-name "test@example.com" \
  --serial-number "arn:aws:iam::123456976749:mfa/test@example.com" \
  --authentication-code1 123456 \
  --authentication-code2 654321

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Iam User Unused Credentials Check

Nome categoria nell'API: IAM_USER_UNUSED_CREDENTIALS_CHECK

Questo controllo consente di verificare la presenza di eventuali password IAM o chiavi di accesso attive che non sono state utilizzate negli ultimi 90 giorni.

Le best practice consigliano di rimuovere, disattivare o ruotare tutte le credenziali inutilizzate per almeno 90 giorni. In questo modo si riduce la possibilità di utilizzare le credenziali associate a un account compromesso o abbandonato.

Suggerimento: verifica che tutti gli utenti AWS IAM dispongano di password o chiavi di accesso attive che non siano state utilizzate nei giorni maxCredentialUsageAge (valore predefinito 90)

Per correggere questo esito, procedi nel seguente modo:

Terraform

Per rimuovere le chiavi di accesso scadute create tramite Terraform, rimuovi la risorsa aws_iam_access_key dal modulo e applica la modifica.

Per reimpostare una password di accesso utente IAM, utilizza -replace durante l'esecuzione di terraform apply.

Suppone il seguente profilo di accesso utente

resource "aws_iam_user" "example" {
  name          = "test@example.com"
  path          = "/users/"
  force_destroy = true
}

resource "aws_iam_user_login_profile" "example" {
  user    = aws_iam_user.example.name
  pgp_key = "keybase:some_person_that_exists"
}

Esegui questo comando per reimpostare la password del profilo di accesso dell'utente

terraform apply -replace="aws_iam_user_login_profile.example"

Console AWS

Per disattivare le credenziali per gli account inattivi:

  1. Apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.
  2. Scegli Utenti.
  3. Scegli il nome dell'utente con credenziali da più di 90 giorni o l'ultimo utilizzo.
  4. Scegli Credenziali di sicurezza.
  5. Per ogni credenziale di accesso e chiave di accesso che non sono state utilizzate da almeno 90 giorni, scegli Rendi inattiva.

Per richiedere una nuova password agli utenti della console all'accesso successivo:

  1. Apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.
  2. Scegli Utenti.
  3. Scegli il nome dell'utente con credenziali da più di 90 giorni o l'ultimo utilizzo.
  4. Scegli Credenziali di sicurezza.
  5. In Credenziali di accesso e password della console, scegli Gestisci.
  6. Imposta una nuova password (generata automaticamente o personalizzata).
  7. Seleziona la casella Richiedi reimpostazione della password.
  8. Scegli Applica.

interfaccia a riga di comando AWS

Per disattivare le chiavi di accesso

aws iam update-access-key \
  --access-key-id <value> \
  --status "Inactive"

Eliminare chiavi di accesso

aws iam delete-access-key \
  --access-key-id <value>

Per reimpostare la password di un profilo di accesso utente

aws iam update-login-profile \
  --user-name "test@example.com" \
  --password <temporary_password> \
  --password-reset-required

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Kms Cmk Not Scheduled For Deletion

Nome categoria nell'API: KMS_CMK_NOT_SCHEDULED_FOR_DELETION

Questo controllo verifica se è pianificata l'eliminazione delle chiavi KMS. Se è stata pianificata l'eliminazione di una chiave KMS, il controllo non riesce.

Una volta eliminate, le chiavi KMS non possono essere recuperate. Anche i dati criptati in una chiave KMS non sono recuperabili definitivamente se la chiave KMS viene eliminata. Se i dati significativi sono stati criptati con una chiave KMS pianificata per l'eliminazione, valuta la possibilità di decriptarli o criptarli nuovamente con una nuova chiave KMS, a meno che tu non stia eseguendo intenzionalmente una cancellazione crittografica.

Quando viene pianificata l'eliminazione di una chiave KMS, viene applicato un periodo di attesa obbligatorio per consentire il tempo necessario per annullare l'eliminazione, se pianificata per errore. Il periodo di attesa predefinito è di 30 giorni, ma può essere ridotto a un massimo di 7 giorni quando è pianificata l'eliminazione della chiave KMS. Durante il periodo di attesa, l'eliminazione pianificata può essere annullata e la chiave KMS non verrà eliminata.

Per ulteriori informazioni sull'eliminazione delle chiavi KMS, consulta Eliminazione delle chiavi KMS nella Guida per gli sviluppatori di AWS Key Management Service.

Consiglio: verifica che non sia pianificata l'eliminazione di tutte le chiavi CMK

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Lambda Concurrency Check

Nome categoria nell'API: LAMBDA_CONCURRENCY_CHECK

Controlla se la funzione Lambda è configurata con un limite di esecuzioni simultanee a livello di funzione. La regola è NON_COMPLIANT se la funzione Lambda non è configurata con un limite di esecuzioni simultanee a livello di funzione.

Suggerimento: controlla se le funzioni Lambda sono configurate con un limite di esecuzione in parallelo a livello di funzione

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Lambda Dlq Check

Nome categoria nell'API: LAMBDA_DLQ_CHECK

Controlla se una funzione Lambda è configurata con una coda di messaggi non recapitabili. La regola è NON_COMPLIANT se la funzione Lambda non è configurata con una coda di messaggi non recapitabili.

Suggerimento: controlla se le funzioni Lambda sono configurate con una coda di messaggi non recapitabili

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Lambda Function Public Access Prohibited

Nome categoria nell'API: LAMBDA_FUNCTION_PUBLIC_ACCESS_PROHIBITED

Le best practice di AWS consigliano che la funzione Lambda non sia esposta pubblicamente. Questo criterio controlla tutte le funzioni Lambda di cui è stato eseguito il deployment in tutte le regioni abilitate all'interno del tuo account e avrà esito negativo se vengono configurate o consentono l'accesso pubblico.

Consiglio: controlla se il criterio associato alla funzione Lambda impedisce l'accesso pubblico

Per correggere questo esito, procedi nel seguente modo:

Terraform

L'esempio seguente mostra un esempio di utilizzo di Terraform per il provisioning di un ruolo IAM che limita l'accesso a una funzione Lambda e collega il ruolo alla funzione Lambda.

resource "aws_iam_role" "iam_for_lambda" {
  name = "iam_for_lambda"

  assume_role_policy = <<EOF
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": "sts:AssumeRole",
      "Principal": {
        "Service": "lambda.amazonaws.com"
      },
      "Effect": "Allow",
      "Sid": ""
    }
  ]
}
EOF
}

resource "aws_lambda_function" "test_lambda" {
  filename      = "lambda_function_payload.zip"
  function_name = "lambda_function_name"
  role          = aws_iam_role.iam_for_lambda.arn
  handler       = "index.test"

  source_code_hash = filebase64sha256("lambda_function_payload.zip")

  runtime = "nodejs12.x"

}

Console AWS

Se una funzione Lambda non supera questo controllo, significa che l'istruzione del criterio basata sulle risorse per la funzione Lambda consente l'accesso pubblico.

Per risolvere il problema, devi aggiornare il criterio per rimuovere le autorizzazioni o per aggiungere la condizione AWS:SourceAccount. Puoi aggiornare il criterio basato sulle risorse solo dall'API Lambda.

Le istruzioni seguenti utilizzano la console per esaminare il criterio e AWS Command Line Interface per rimuovere le autorizzazioni.

a visualizzare il criterio basato sulle risorse per una funzione Lambda

  1. Apri la console AWS Lambda all'indirizzo https://console.aws.amazon.com/lambda/.
  2. Nel riquadro di navigazione, scegli Functions.
  3. Scegli la funzione.
  4. Scegli Autorizzazioni. Il criterio basato sulle risorse mostra le autorizzazioni applicate quando un altro account o un servizio AWS tenta di accedere alla funzione.
  5. Esamina il criterio basato sulle risorse.
  6. Identifica la dichiarazione del criterio con valori del campo Entità che rendono pubblico il criterio. Ad esempio, autorizzazione "*" o { "AWS": "*" }.

Non puoi modificare il criterio dalla console. Per rimuovere le autorizzazioni dalla funzione, utilizza il comando remove-permission da AWS CLI.

Prendi nota del valore dell'ID istruzione (Sid) dell'istruzione che vuoi rimuovere.

interfaccia a riga di comando AWS

Per utilizzare l'interfaccia a riga di comando per rimuovere le autorizzazioni da una funzione Lambda, esegui il comando remove-permission come segue.

aws lambda remove-permission \
--function-name <value> \
--statement-id <value>

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Lambda Inside Vpc

Nome categoria nell'API: LAMBDA_INSIDE_VPC

Controlla se una funzione Lambda è in un VPC. Potresti visualizzare risultati non riusciti per le risorse Lambda@Edge.

Non valuta la configurazione di routing della subnet VPC per determinare la connettività pubblica.

Suggerimento: verifica se le funzioni Lambda esistono all'interno di un VPC

Per correggere questo esito, procedi nel seguente modo:

Console AWS

Per configurare una funzione per la connessione a subnet private in un VPC (Virtual Private Cloud) nel tuo account:

  1. Apri la console AWS Lambda all'indirizzo https://console.aws.amazon.com/lambda/.
  2. Vai a Functions e seleziona la tua funzione Lambda.
  3. Scorri fino a Rete, quindi seleziona un VPC con i requisiti di connettività della funzione.
  4. Per eseguire le funzioni in modalità ad alta disponibilità, Security Hub consiglia di scegliere almeno due subnet.
  5. Scegli almeno un gruppo di sicurezza con i requisiti di connettività della funzione.
  6. Scegli Salva.

Per ulteriori informazioni, consulta la sezione sulla configurazione di una funzione Lambda per accedere alle risorse in un VPC nella Guida per gli sviluppatori di AWS Lambda.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Mfa Delete Enabled S3 Buckets

Nome categoria nell'API: MFA_DELETE_ENABLED_S3_BUCKETS

Una volta abilitata l'eliminazione con autenticazione MFA nel bucket S3 sensibile e classificato, l'utente deve avere due forme di autenticazione.

Suggerimento: assicurati che l'eliminazione con autenticazione MFA sia abilitata nei bucket S3

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Mfa Enabled Root User Account

Nome categoria nell'API: MFA_ENABLED_ROOT_USER_ACCOUNT

L'account utente "root" corrisponde all'utente con più privilegi in un account AWS. L'autenticazione a più fattori (MFA) aggiunge un ulteriore livello di protezione oltre a nome utente e password. Con MFA abilitata, quando un utente accede a un sito web AWS, gli verrà chiesto di inserire nome utente e password, oltre a un codice di autenticazione dal proprio dispositivo AWS MFA.

Nota:se per gli account "root" viene utilizzata l'MFA virtuale, è consigliabile che il dispositivo utilizzato NON sia un dispositivo personale, ma un dispositivo mobile dedicato (tablet o telefono) che possa essere mantenuto carico e protetto indipendentemente dai singoli dispositivi personali. ("MFA virtuale non personale") In questo modo si riducono i rischi di perdere l'accesso all'MFA a causa della perdita del dispositivo, della permuta del dispositivo o del fatto che il proprietario del dispositivo non sia più dipendente presso l'azienda.

Consiglio: assicurati che l'autenticazione MFA sia abilitata per l'account utente "root"

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Multi Factor Authentication Mfa Enabled All Iam Users Console

Nome categoria nell'API: MULTI_FACTOR_AUTHENTICATION_MFA_ENABLED_ALL_IAM_USERS_CONSOLE

L'autenticazione multi-fattore (MFA) aggiunge un ulteriore livello di garanzia dell'autenticazione oltre alle credenziali tradizionali. Con MFA abilitata, quando un utente accede alla console AWS, gli verrà richiesto il nome utente e la password, nonché un codice di autenticazione dal token MFA fisico o virtuale. Ti consigliamo di attivare l'autenticazione MFA per tutti gli account che dispongono di una password per la console.

Suggerimento: assicurati che l'autenticazione a più fattori (MFA) sia abilitata per tutti gli utenti IAM con una password per la console

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Accedi alla console di gestione AWS e apri la console IAM all'indirizzo "https://console.aws.amazon.com/iam/".
  2. Nel riquadro a sinistra, seleziona Users.
  3. Nell'elenco User Name, scegli il nome dell'utente MFA previsto.
  4. Scegli la scheda Security Credentials, quindi seleziona Manage MFA Device.
  5. In Manage MFA Device wizard, scegli Virtual MFA dispositivo, quindi scegli Continue.

    IAM genera e visualizza le informazioni di configurazione per il dispositivo MFA virtuale, inclusa l'immagine di un codice QR. L'immagine è una rappresentazione della "chiave di configurazione segreta" disponibile per l'inserimento manuale sui dispositivi che non supportano i codici QR.

  6. Apri l'applicazione MFA virtuale. (Per un elenco delle app che puoi utilizzare per l'hosting di dispositivi MFA virtuali, vedi Applicazioni MFA virtuali all'indirizzo https://aws.amazon.com/iam/details/mfa/#Virtual_MFA_Applications). Se l'applicazione MFA virtuale supporta più account (più dispositivi MFA virtuali), scegli l'opzione per creare un nuovo account (un nuovo dispositivo MFA virtuale).

  7. Determina se l'app MFA supporta i codici QR, quindi procedi in uno dei seguenti modi:

    • Usa l'app per scansionare il codice QR. Ad esempio, puoi scegliere l'icona della fotocamera o un'opzione simile a Esegui scansione codice, quindi utilizzare la fotocamera del dispositivo per scansionare il codice.
    • Nella procedura guidata Gestione dispositivi MFA, scegli Mostra chiave segreta per la configurazione manuale, quindi digita la chiave di configurazione segreta nell'applicazione MFA.

    Al termine, il dispositivo MFA virtuale inizia a generare password monouso.

  8. In Manage MFA Device wizard, in MFA Code 1 box, digita il one-time password attualmente visualizzato nel dispositivo MFA virtuale. Attendi fino a 30 secondi affinché il dispositivo generi una nuova password monouso. Quindi, digita il secondo one-time password nel MFA Code 2 box.

  9. Fai clic su Assign MFA.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

No Network Acls Allow Ingress 0 0 0 0 Remote Server Administration

Nome categoria nell'API: NO_NETWORK_ACLS_ALLOW_INGRESS_0_0_0_0_REMOTE_SERVER_ADMINISTRATION

La funzione Network Access Control List (NACL) fornisce un filtro stateless del traffico di rete in entrata e in uscita verso le risorse AWS. È consigliabile che nessun NACL consenta l'accesso illimitato alle porte di amministrazione del server remoto, ad esempio SSH alla porta 22 e RDP alla porta 3389, utilizzando i protocolli TDP (6), UDP (17) o TUTTI (-1)

Suggerimento: assicurati che nessun ACL di rete consenta il traffico in entrata da 0.0.0.0/0 alle porte di amministrazione del server remoto

Per correggere questo esito, procedi nel seguente modo:

Console AWS

Esegui le seguenti operazioni:

  1. Accedi ad AWS Management Console all'indirizzo https://console.aws.amazon.com/vpc/home
  2. Nel riquadro a sinistra, fai clic su Network ACLs
  3. Per ogni ACL di rete da risolvere, esegui queste operazioni:
    • Seleziona l'ACL di rete
    • Fai clic sulla scheda Inbound Rules
    • Fai clic su Edit inbound rules.
    • A) aggiorna il campo Origine a un intervallo diverso da 0.0.0.0/0 oppure B) fai clic su Delete per rimuovere la regola in entrata in questione
    • Fai clic su Save.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

No Root User Account Access Key Exists

Nome categoria nell'API: NO_ROOT_USER_ACCOUNT_ACCESS_KEY_EXISTS

L'account utente "root" corrisponde all'utente con più privilegi in un account AWS. Le chiavi di accesso AWS forniscono l'accesso programmatico a un determinato account AWS. Ti consigliamo di eliminare tutte le chiavi di accesso associate all'account utente "root".

Consiglio: assicurati che non esistano chiavi di accesso all'account utente "root"

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Accedi alla console di gestione AWS come "root" e apri la console IAM all'indirizzo https://console.aws.amazon.com/iam/.
  2. Fai clic su <root_account> in alto a destra e seleziona My Security Credentials dall'elenco a discesa.
  3. Nella schermata separata, fai clic su Continue to Security Credentials.
  4. Fai clic su Access Keys (ID chiave di accesso e chiave di accesso segreta).
  5. Nella colonna Status (se sono presenti chiavi attive).
  6. Fai clic su Delete. Nota: le chiavi eliminate non possono essere recuperate.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

No Security Groups Allow Ingress 0 0 0 0 Remote Server Administration

Nome categoria nell'API: NO_SECURITY_GROUPS_ALLOW_INGRESS_0_0_0_0_REMOTE_SERVER_ADMINISTRATION

I gruppi di sicurezza forniscono un filtro stateful del traffico di rete in entrata e in uscita verso le risorse AWS. È consigliabile che nessun gruppo di sicurezza consenta l'accesso illimitato alle porte di amministrazione del server remoto, ad esempio SSH alla porta 22 e RDP alla porta 3389, utilizzando i protocolli TDP (6), UDP (17) o TUTTI (-1).

Suggerimento: assicurati che nessun gruppo di sicurezza consenta il traffico in entrata da 0.0.0.0/0 alle porte di amministrazione del server remoto

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

No Security Groups Allow Ingress 0 Remote Server Administration

Nome categoria nell'API: NO_SECURITY_GROUPS_ALLOW_INGRESS_0_REMOTE_SERVER_ADMINISTRATION

I gruppi di sicurezza forniscono un filtro stateful del traffico di rete in entrata e in uscita verso le risorse AWS. È consigliabile che nessun gruppo di sicurezza consenta l'accesso illimitato in entrata alle porte di amministrazione del server remoto, ad esempio SSH alla porta 22 e RDP alla porta 3389.

Suggerimento: assicurati che nessun gruppo di sicurezza consenta il traffico in entrata da ::/0 alle porte di amministrazione del server remoto

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

One Active Access Key Available Any Single Iam User

Nome categoria nell'API: ONE_ACTIVE_ACCESS_KEY_AVAILABLE_ANY_SINGLE_IAM_USER

Le chiavi di accesso sono credenziali a lungo termine per un utente IAM o per l'utente "root" dell'account AWS. Puoi utilizzare le chiavi di accesso per firmare richieste di pubblicità programmatica ad AWS CLI o API AWS (direttamente o utilizzando l'SDK AWS)

Suggerimento: assicurati che sia disponibile una sola chiave di accesso attiva per ogni singolo utente IAM

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Accedi alla console di gestione AWS e vai alla dashboard IAM all'indirizzo https://console.aws.amazon.com/iam/.
  2. Nel pannello di navigazione a sinistra, scegli Users.
  3. Fai clic sul nome utente IAM che vuoi esaminare.
  4. Nella pagina della configurazione utente IAM, seleziona la scheda Security Credentials.
  5. Nella sezione Access Keys, scegli una chiave di accesso che abbia meno di 90 giorni. Questa dovrebbe essere l'unica chiave attiva utilizzata da questo utente IAM per accedere alle risorse AWS in modo programmatico. Testa le tue applicazioni per assicurarti che la chiave di accesso scelta funzioni.
  6. Nella stessa sezione Access Keys, identifica le chiavi di accesso non operative (diverse da quella scelta) e disattivale facendo clic sul link Make Inactive.
  7. Se ricevi la finestra di conferma Change Key Status, fai clic su Deactivate per disattivare la chiave selezionata.
  8. Ripeti i passaggi n. 3-7 per ogni utente IAM nel tuo account AWS.

interfaccia a riga di comando AWS

  1. Utilizzando le informazioni relative alla chiave di accesso e all'utente IAM fornite in Audit CLI, scegli una chiave di accesso che abbia meno di 90 giorni. Questa dovrebbe essere l'unica chiave attiva utilizzata da questo utente IAM per accedere alle risorse AWS in modo programmatico. Testa le tue applicazioni per assicurarti che la chiave di accesso scelta funzioni.

  2. Esegui il comando update-access-key di seguito utilizzando il nome utente IAM e gli ID della chiave di accesso non operativa per disattivare le chiavi non necessarie. Fai riferimento alla sezione Controllo per identificare l'ID della chiave di accesso non necessaria per l'utente IAM selezionato

Nota: il comando non restituisce alcun output:

aws iam update-access-key --access-key-id <access-key-id> --status Inactive --user-name <user-name>
  1. Per confermare che la coppia di chiavi di accesso selezionata sia stata deactivated esegui di nuovo il comando di controllo list-access-keys per quell'utente IAM:
aws iam list-access-keys --user-name <user-name>
  • L'output comando deve esporre i metadati per ogni chiave di accesso associata all'utente IAM. Se le coppie di chiavi non operative Status sono impostate su Inactive, la chiave è stata disattivata correttamente e la configurazione dell'accesso utente IAM è conforme a questo suggerimento.
  1. Ripeti i passaggi n. 1-3 per ogni utente IAM nel tuo account AWS.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Public Access Given Rds Instance

Nome categoria nell'API: PUBLIC_ACCESS_GIVEN_RDS_INSTANCE

Assicurati e verifica che le istanze di database RDS di cui è stato eseguito il provisioning nel tuo account AWS limitino l'accesso non autorizzato per ridurre al minimo i rischi per la sicurezza. Per limitare l'accesso a qualsiasi istanza di database RDS accessibile pubblicamente, devi disabilitare il flag del database Accessibile pubblicamente e aggiornare il gruppo di sicurezza VPC associato all'istanza.

Suggerimento: assicurati che all'istanza RDS non sia concesso l'accesso pubblico

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Accedi alla console di gestione AWS e passa alla dashboard RDS all'indirizzo https://console.aws.amazon.com/rds/.
  2. Nel pannello di navigazione, nella dashboard RDS, fai clic su Databases.
  3. Seleziona l'istanza RDS che vuoi aggiornare.
  4. Fai clic su Modify nel menu in alto della dashboard.
  5. Nel riquadro Modifica istanza DB, nella sezione Connectivity, fai clic su Additional connectivity configuration e aggiorna il valore di Publicly Accessible in Non accessibile pubblicamente per limitare l'accesso pubblico. Per aggiornare le configurazioni delle subnet:
  6. Seleziona la scheda Connectivity and security e fai clic sul valore dell'attributo VPC nella sezione Networking.
  7. Seleziona la scheda Details dal riquadro inferiore della dashboard VPC e fai clic sul valore dell'attributo di configurazione della tabella delle route.
  8. Nella pagina dei dettagli della tabella Route, seleziona la scheda Route dal riquadro inferiore della dashboard e fai clic su Edit routes.
  9. Nella pagina Modifica percorsi, aggiorna la destinazione del target impostata su igw-xxxxx e fai clic sui percorsi Save.
  10. Nel riquadro Modifica istanza DB, fai clic su Continue e nella sezione Pianificazione delle modifiche esegui una delle seguenti azioni in base ai tuoi requisiti:
  11. Seleziona Applica durante il successivo periodo di manutenzione pianificato per applicare automaticamente le modifiche durante il successivo periodo di manutenzione pianificato.
  12. Seleziona Applica immediatamente per applicare subito le modifiche. Con questa opzione, qualsiasi modifica in attesa verrà applicata in modo asincrono il prima possibile, indipendentemente dall'impostazione del periodo di manutenzione per questa istanza di database RDS. Tieni presente che vengono applicate anche tutte le modifiche disponibili nella coda delle modifiche in attesa. Se una delle modifiche in attesa richiede tempi di inattività, la scelta di questa opzione può causare tempi di inattività imprevisti per l'applicazione.
  13. Ripeti i passaggi da 3 a 6 per ogni istanza RDS disponibile nella regione corrente.
  14. Cambia la regione AWS dalla barra di navigazione per ripetere il processo per altre regioni.

interfaccia a riga di comando AWS

  1. Esegui il comando describe-db-instances per elencare tutti gli identificatori dei nomi dei database RDS, disponibili nella regione AWS selezionata:
aws rds describe-db-instances --region <region-name> --query 'DBInstances[*].DBInstanceIdentifier'
  1. L'output comando dovrebbe restituire ogni identificatore di istanza del database.
  2. Esegui il comando modify-db-instance per modificare la configurazione dell'istanza RDS selezionata. Utilizza quindi il comando seguente per disabilitare il flag Publicly Accessible per le istanze RDS selezionate. Questo comando utilizza il flag apply-immediately. Se vuoi to avoid any downtime --no-apply-immediately flag can be used:
aws rds modify-db-instance --region <region-name> --db-instance-identifier <db-name> --no-publicly-accessible --apply-immediately
  1. L'output comando dovrebbe mostrare la configurazione PubliclyAccessible sotto i valori in sospeso e dovrebbe essere applicato al momento specificato.
  2. L'aggiornamento della destinazione del gateway internet tramite AWS CLI non è attualmente supportato Per aggiornare le informazioni su Internet Gateway utilizza la procedura della console AWS.
  3. Ripeti i passaggi da 1 a 5 per ogni istanza RDS di cui è stato eseguito il provisioning nella regione corrente.
  4. Modificare la regione AWS utilizzando il filtro --region per ripetere il processo per altre regioni.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Rds Enhanced Monitoring Enabled

Nome categoria nell'API: RDS_ENHANCED_MONITORING_ENABLED

Il monitoraggio avanzato fornisce metriche in tempo reale sul sistema operativo su cui viene eseguita l'istanza RDS, tramite un agente installato nell'istanza.

Per maggiori dettagli, consulta Monitoraggio delle metriche del sistema operativo con il monitoraggio avanzato.

Suggerimento: verifica se il monitoraggio avanzato è abilitato per tutte le istanze DB RDS

Per correggere questo esito, procedi nel seguente modo:

Terraform

Per risolvere questo controllo, abilita il monitoraggio avanzato sulle tue istanze RDS nel seguente modo:

Crea un ruolo IAM per RDS:

resource "aws_iam_role" "rds_logging" {
  name = "CustomRoleForRDSMonitoring"
  assume_role_policy = jsonencode({
    Version = "2012-10-17"
    Statement = [
      {
        Action = "sts:AssumeRole"
        Effect = "Allow"
        Sid    = "CustomRoleForRDSLogging"
        Principal = {
          Service = "monitoring.rds.amazonaws.com"
        }
      },
    ]
  })
}

Recupera il criterio gestito da AWS per il monitoraggio avanzato RDS:

data "aws_iam_policy" "rds_logging" {
  name = "AmazonRDSEnhancedMonitoringRole"
}

Associa il criterio al ruolo:

resource "aws_iam_policy_attachment" "rds_logging" {
  name       = "AttachRdsLogging"
  roles      = [aws_iam_role.rds_logging.name]
  policy_arn = data.aws_iam_policy.rds_logging.arn
}

Definisci un intervallo di monitoraggio e un ruolo di monitoraggio per l'istanza RDS in violazione per abilitare il monitoraggio avanzato:

resource "aws_db_instance" "default" {
  identifier           = "test-rds"
  allocated_storage    = 10
  engine               = "mysql"
  engine_version       = "5.7"
  instance_class       = "db.t3.micro"
  db_name              = "mydb"
  username             = "foo"
  password             = "foobarbaz"
  parameter_group_name = "default.mysql5.7"
  skip_final_snapshot  = true
  monitoring_interval  = 60
  monitoring_role_arn  = aws_iam_role.rds_logging.arn
}

Console AWS

Puoi attivare il monitoraggio avanzato quando crei un'istanza DB, un cluster di database multi-AZ, una replica di lettura oppure quando modifichi un'istanza DB o un cluster di database multi-AZ. Se si modifica un'istanza DB per attivare il monitoraggio avanzato, non è necessario riavviare l'istanza DB affinché la modifica abbia effetto.

Puoi attivare il monitoraggio avanzato nella console RDS quando esegui una delle seguenti azioni nella pagina Database:

  • Crea un'istanza DB o un cluster DB multi-AZ: scegli Crea database.
  • Creare una replica di lettura: scegli Azioni, quindi Crea replica di lettura.
  • Modifica di un'istanza DB o di un cluster DB multi-AZ: scegli Modifica.

Attivare o disattivare il monitoraggio avanzato nella console RDS

  1. Scorri fino a Configurazione aggiuntiva.
  2. In Monitoring, scegli Abilita monitoraggio avanzato per l'istanza DB o la replica di lettura. Per disattivare il monitoraggio avanzato, scegli Disattiva monitoraggio avanzato.
  3. Imposta la proprietà Ruolo di monitoraggio sul ruolo IAM che hai creato per consentire ad Amazon RDS di comunicare con i log di Amazon CloudWatch al posto tuo, oppure scegli Predefinito per fare in modo che RDS crei un ruolo per te denominato rds-monitoring-role.
  4. Imposta la proprietà Granularità sull'intervallo, in secondi, tra i punti quando vengono raccolte le metriche per l'istanza DB o la replica di lettura. La proprietà Granularità può essere impostata su uno dei seguenti valori: 1, 5, 10, 15, 30 o 60. La velocità di aggiornamento della console RDS avviene ogni 5 secondi. Se imposti la granularità su 1 secondo nella console RDS, continuerai a vedere le metriche aggiornate solo ogni 5 secondi. Puoi recuperare gli aggiornamenti delle metriche in 1 secondo utilizzando i log di CloudWatch.

interfaccia a riga di comando AWS

Crea il ruolo IAM RDS:

aws iam create-role \
  --role-name "CustomRoleForRDSMonitoring" \
  --assume-role-policy-document file://rds-assume-role.json

Associa il criterio AmazonRDSEnhancedMonitoringRole al ruolo:

aws iam attach-role-policy \
  --role-name "CustomRoleForRDSMonitoring"\
  --policy-arn "arn:aws:iam::aws:policy/service-role/AmazonRDSEnhancedMonitoringRole"

Modifica l'istanza RDS per abilitare il monitoraggio avanzato, impostando --monitoring-interval e --monitoring-role-arn:

aws rds modify-db-instance \
  --db-instance-identifier "test-rds" \
  --monitoring-interval 30 \
  --monitoring-role-arn "arn:aws:iam::<account_id>:role/CustomRoleForRDSMonitoring"

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Rds Instance Deletion Protection Enabled

Nome categoria nell'API: RDS_INSTANCE_DELETION_PROTECTION_ENABLED

L'attivazione della protezione da eliminazione delle istanze è un ulteriore livello di protezione contro l'eliminazione o l'eliminazione accidentale del database da parte di un'entità non autorizzata.

Se è abilitata la protezione da eliminazione, non è possibile eliminare un'istanza DB RDS. Prima che una richiesta di eliminazione possa andare a buon fine, è necessario disabilitare la protezione da eliminazione.

Suggerimento: controlla se in tutte le istanze RDS è abilitata la protezione da eliminazione

Per correggere questo esito, procedi nel seguente modo:

Terraform

Per risolvere questo controllo, imposta deletion_protection su true nella risorsa aws_db_instance.

resource "aws_db_instance" "example" {
  # ... other configuration ...
  deletion_protection = true
}

Console AWS

Abilitare la protezione dall'eliminazione per un'istanza DB RDS.

  1. Apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.
  2. Nel riquadro di navigazione, scegli Database, quindi scegli l'istanza DB che desideri modificare.
  3. Scegli Modifica.
  4. In Protezione da eliminazione, scegli Abilita protezione da eliminazione.
  5. Scegli Continua.
  6. Sotto Pianificazione delle modifiche, scegli quando applicare le modifiche. Le opzioni sono Applica durante la successiva periodo di manutenzione pianificata o Applica immediatamente.
  7. Scegli Modifica istanza DB.

interfaccia a riga di comando AWS

Lo stesso vale per AWS CLI. Imposta --deletion-protection come indicato di seguito.

aws rds modify-db-instance \
  --db-instance-identifier = "test-rds" \
  --deletion-protection

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Rds In Backup Plan

Nome categoria nell'API: RDS_IN_BACKUP_PLAN

Questo controllo valuta se le istanze DB di Amazon RDS sono coperte da un piano di backup. Questo controllo non riesce se un'istanza DB RDS non è coperta da un piano di backup.

AWS Backup è un servizio di backup completamente gestito che centralizza e automatizza il backup dei dati in tutti i servizi AWS. Con AWS Backup puoi creare criteri di backup chiamati piani di backup. Puoi utilizzare questi piani per definire i requisiti del backup, ad esempio la frequenza con cui eseguire il backup dei dati e per quanto tempo conservarli. L'inclusione delle istanze DB RDS in un piano di backup consente di proteggere i dati da perdite o eliminazione indesiderate.

Suggerimento: le istanze DB RDS dovrebbero essere coperte da un piano di backup

Per correggere questo esito, procedi nel seguente modo:

Terraform

Per risolvere questo controllo, imposta backup_retention_period su un valore maggiore di 7 nella risorsa aws_db_instance.

resource "aws_db_instance" "example" {
  # ... other Configuration ...
  backup_retention_period = 7
}

Console AWS

Per abilitare immediatamente i backup automatici

  1. Apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.
  2. Nel riquadro di navigazione, scegli Database, quindi scegli l'istanza DB che desideri modificare.
  3. Scegli Modifica per aprire la pagina Modifica istanza DB.
  4. In Periodo di conservazione dei backup, scegli un valore positivo diverso da zero, ad esempio 30 giorni, quindi scegli Continua.
  5. Seleziona la sezione Pianificazione delle modifiche e scegli quando applicare le modifiche: puoi scegliere Applica durante la successiva periodo di manutenzione pianificata o Applica immediatamente.
  6. Quindi, nella pagina di conferma, scegli Modifica istanza DB per salvare le modifiche e abilitare i backup automatici.

interfaccia a riga di comando AWS

Lo stesso vale per AWS CLI. Per abilitare i backup automatici, modifica il valore di backup-retention-period in modo che sia maggiore di 0 (valore predefinito).

aws rds modify-db-instance --db-instance-identifier "test-rds" --backup-retention-period 7

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Rds Logging Enabled

Nome categoria nell'API: RDS_LOGGING_ENABLED

Questa operazione consente di verificare se i seguenti log di Amazon RDS sono abilitati e inviati a CloudWatch.

Nei database RDS devono essere abilitati i log pertinenti. Il logging dei database fornisce record dettagliati delle richieste inviate a RDS. I log del database possono aiutare con i controlli di sicurezza e di accesso e possono aiutare a diagnosticare i problemi di disponibilità.

Suggerimento: controlla se i log esportati sono abilitati per tutte le istanze DB RDS

Per correggere questo esito, procedi nel seguente modo:

Terraform

resource "aws_db_instance" "example" {
  # ... other configuration for MySQL ...
  enabled_cloudwatch_logs_exports = ["audit", "error", "general", "slowquery"]
  parameter_group_name            = aws_db_parameter_group.example.name
}

resource "aws_db_parameter_group" "example" {
  name   = "${aws_db_instance.example.dbInstanceIdentifier}-parameter-group"
  family = "mysql5.7"

  parameter {
    name  = "general_log"
    value = 1
  }

  parameter {
    name  = "slow_query_log"
    value = 1
  }

  parameter {
    name  = "log_output"
    value = "FILE"
  }
}

Per MariaDB, crea anche un gruppo di opzioni personalizzate e imposta option_group_name nella risorsa aws_db_instance.

resource "aws_db_instance" "example" {
  # ... other configuration for MariaDB ...
  enabled_cloudwatch_logs_exports = ["audit", "error", "general", "slowquery"]
  parameter_group_name            = aws_db_parameter_group.example.name
  option_group_name               = aws_db_option_group.example.name
}

resource "aws_db_option_group" "example" {
  name                     = "mariadb-option-group-for-logs"
  option_group_description = "MariaDB Option Group for Logs"
  engine_name              = "mariadb"
  option {
    option_name = "MARIADB_AUDIT_PLUGIN"
    option_settings {
      name  = "SERVER_AUDIT_EVENTS"
      value = "CONNECT,QUERY,TABLE,QUERY_DDL,QUERY_DML,QUERY_DCL"
    }
  }
}

Console AWS

Per creare un gruppo di parametri DB personalizzato

  1. Apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.
  2. Nel riquadro di navigazione, scegli Gruppi di parametri.
  3. Scegli Crea gruppo di parametri.
  4. Nell'elenco Famiglia di gruppi di parametri, scegli una famiglia di gruppi di parametri DB.
  5. Nell'elenco Tipo, scegli Gruppo di parametri DB.
  6. In Nome gruppo, inserisci il nome del nuovo gruppo di parametri DB.
  7. In Descrizione, inserisci una descrizione per il nuovo gruppo di parametri DB.
  8. Scegli Crea.

Per creare un nuovo gruppo di opzioni per il logging MariaDB utilizzando la console

  1. Apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.
  2. Nel riquadro di navigazione, scegli Gruppi di opzioni.
  3. Scegli Crea gruppo.
  4. Nella finestra Crea gruppo di opzioni, fornisci le seguenti informazioni:
  5. Nome: deve essere univoco all'interno del tuo account AWS. Solo lettere, numeri e trattini.
  6. Descrizione: utilizzata solo per la visualizzazione.
    • Motore: seleziona il motore DB.
    • Versione principale del motore: seleziona la versione principale del motore DB.
  7. Scegli Crea.
  8. Scegli il nome del gruppo di opzioni appena creato.
  9. Scegli Aggiungi opzione.
  10. Scegli MARIADB_AUDIT_PLUGIN dall'elenco Nome opzione.
  11. Imposta SERVER_AUDIT_EVENTS su CONNECT, QUERY, TABLE, QUERY_DDL, QUERY_DML, QUERY_DCL.
  12. Scegli Aggiungi opzione.

Per pubblicare i log di SQL Server DB, Oracle DB o PostgreSQL nei log di CloudWatch dalla console di gestione AWS

  1. Apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.
  2. Nel riquadro di navigazione, scegli Database.
  3. Scegli l'istanza DB che desideri modificare.
  4. Scegli Modifica.
  5. In Esportazioni dei log, scegli tutti i file di log per avviare la pubblicazione nei log di CloudWatch.
  6. Le esportazioni dei log sono disponibili solo per le versioni del motore del database che supportano la pubblicazione nei log di CloudWatch.
  7. Scegli Continua. Nella pagina di riepilogo, scegli Modifica istanza DB.

Per applicare un nuovo gruppo di parametri DB o un gruppo di opzioni DB a un'istanza DB RDS

  1. Apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.
  2. Nel riquadro di navigazione, scegli Database.
  3. Scegli l'istanza DB che desideri modificare.
  4. Scegli Modifica.
  5. In Opzioni database, modifica il gruppo di parametri DB e il gruppo di opzioni DB in base alle esigenze.
  6. Al termine delle modifiche, scegli Continua. Controlla il riepilogo delle modifiche.
  7. Seleziona Modifica istanza DB per salvare le modifiche.

interfaccia a riga di comando AWS

Recupera le famiglie di motori e scegli quella che corrisponde al motore e alla versione dell'istanza DB.

aws rds describe-db-engine-versions \
  --query "DBEngineVersions[].DBParameterGroupFamily" \
  --engine "mysql"

Crea un gruppo di parametri in base al motore e alla versione.

aws rds create-db-parameter-group \
  --db-parameter-group-name "rds-mysql-parameter-group" \
  --db-parameter-group-family "mysql5.7" \
  --description "Example parameter group for logs"

Crea un file rds-parameters.json contenente i parametri necessari in base al motore DB. In questo esempio viene utilizzato MySQL5.7.

[
  {
    "ParameterName": "general_log",
    "ParameterValue": "1",
    "ApplyMethod": "immediate"
  },
  {
    "ParameterName": "slow_query_log",
    "ParameterValue": "1",
    "ApplyMethod": "immediate"
  },
  {
    "ParameterName": "log_output",
    "ParameterValue": "FILE",
    "ApplyMethod": "immediate"
  }
]

Modifica il gruppo di parametri per aggiungere i parametri in base al motore DB. Questo esempio utilizza MySQL5.7

aws rds modify-db-parameter-group \
  --db-parameter-group-name "rds-mysql-parameter-group" \
  --parameters file://rds-parameters.json

Modifica l'istanza DB per associare il gruppo di parametri.

aws rds modify-db-instance \
  --db-instance-identifier "test-rds" \
  --db-parameter-group-name "rds-mysql-parameter-group"

Inoltre, per MariaDB, crea un gruppo di opzioni come segue.

aws rds create-option-group \
  --option-group-name "rds-mariadb-option-group" \
  --engine-name "mariadb" \
  --major-engine-version "10.6" \
  --option-group-description "Option group for MariaDB logs"

Crea un file rds-mariadb-options.json come segue.

{
  "OptionName": "MARIADB_AUDIT_PLUGIN",
  "OptionSettings": [
    {
      "Name": "SERVER_AUDIT_EVENTS",
      "Value": "CONNECT,QUERY,TABLE,QUERY_DDL,QUERY_DML,QUERY_DCL"
    }
  ]
}

Aggiungi l'opzione al gruppo di opzioni.

aws rds add-option-to-option-group \
  --option-group-name "rds-mariadb-option-group" \
  --options file://rds-mariadb-options.json

Associare il gruppo di opzioni all'istanza DB modificando l'istanza MariaDB.

aws rds modify-db-instance \
  --db-instance-identifier "rds-test-mariadb" \
  --option-group-name "rds-mariadb-option-group"

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Rds Multi Az Support

Nome categoria nell'API: RDS_MULTI_AZ_SUPPORT

Le istanze DB RDS devono essere configurate per più zone di disponibilità (AZ). Ciò garantisce la disponibilità dei dati archiviati. I deployment multi-AZ consentono il failover automatico in caso di problemi con la disponibilità delle zone di disponibilità e durante la normale manutenzione di RDS.

Suggerimento: controlla se l'alta disponibilità è abilitata per tutte le istanze DB RDS

Per correggere questo esito, procedi nel seguente modo:

Terraform

Per risolvere questo controllo, imposta multi_az su true nella risorsa aws_db_instance.

resource "aws_db_instance" "example" {
  # ... other configuration ...
  multi_az                = true
}

Console AWS

Abilitare più zone di disponibilità per un'istanza DB

  1. Apri la console Amazon RDS all'indirizzo https://console.aws.amazon.com/rds/.
  2. Nel riquadro di navigazione, scegli Database, quindi scegli l'istanza DB che desideri modificare.
  3. Scegli Modifica. Viene visualizzata la pagina Modifica istanza DB.
  4. In Specifiche istanza, imposta Deployment multi-AZ su Sì.
  5. Scegli Continua e controlla il riepilogo delle modifiche.
  6. (Facoltativo) Scegli Applica immediatamente per applicare subito le modifiche. La scelta di questa opzione in alcuni casi può causare un'interruzione. Per ulteriori informazioni, consulta la sezione Utilizzo dell'impostazione Applica immediatamente nella Guida dell'utente di Amazon RDS.
  7. Nella pagina di conferma, rivedi le modifiche. Se sono corrette, scegli Modifica istanza DB per salvare le modifiche.

interfaccia a riga di comando AWS

Lo stesso vale per AWS CLI. Attiva il supporto multi-Az fornendo l'opzione --multi-az.

modify-db-instance
  --db-instance-identifier "test-rds" \
  --multi-az

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Redshift Cluster Configuration Check

Nome categoria nell'API: REDSHIFT_CLUSTER_CONFIGURATION_CHECK

Questo verifica la presenza di elementi essenziali di un cluster Redshift: crittografia at-rest, logging e tipo di nodo.

Questi elementi di configurazione sono importanti per la manutenzione di un cluster Redshift sicuro e osservabile.

Suggerimento: verifica che tutti i cluster Redshift abbiano crittografia at-rest, logging e tipo di nodo.

Per correggere questo esito, procedi nel seguente modo:

Terraform

resource "aws_kms_key" "redshift_encryption" {
  description         = "Used for Redshift encryption configuration"
  enable_key_rotation = true
}

resource "aws_redshift_cluster" "example" {
  # ... other configuration ...
  encrypted                           = true
  kms_key_id                          = aws_kms_key.redshift_encryption.id
  logging {
    enable               = true
    log_destination_type = "cloudwatch"
    log_exports          = ["connectionlog", "userlog", "useractivitylog"]
  }
}

Console AWS

Per abilitare l'audit logging del cluster

  1. Apri la console Amazon Redshift all'indirizzo https://console.aws.amazon.com/redshift/.
  2. Nel menu di navigazione, scegli Cluster, quindi scegli il nome del cluster da modificare.
  3. Scegli Proprietà.
  4. Scegli "Modifica e modifica log di controllo".
  5. Imposta Configura audit logging su Attiva, imposta Tipo di esportazione dei log su CloudWatch (consigliato) e scegli i log da esportare.

Per utilizzare AWS S3 per gestire gli audit log di Redshift, consulta Redshift - Database audit logging nella documentazione di AWS.

  1. Scegli Salva modifiche.

a modificare la crittografia del database su un cluster.

  1. Accedi alla console di gestione AWS e apri la console Amazon Redshift all'indirizzo https://console.aws.amazon.com/redshift/.
  2. Nel menu di navigazione, scegli Cluster, quindi scegli il cluster per cui vuoi modificare la crittografia.
  3. Scegli Proprietà.
  4. Scegli Modifica e modifica la crittografia.
  5. Scegli la crittografia da utilizzare (KMS o HSM) e fornisci le seguenti informazioni:

    • Per KMS: chiave da utilizzare
    • Per HSM: connessione e certificato client

interfaccia a riga di comando AWS

  1. Crea una chiave KMS e recupera l'ID chiave
aws kms create-key \
  --description "Key to encrypt Redshift Clusters"
  1. Modifica il cluster
aws redshift modify-cluster \
  --cluster-identifiers "test-redshift-cluster" \
  --encrypted \
  --kms-key-id <value>

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Redshift Cluster Maintenancesettings Check

Nome categoria nell'API: REDSHIFT_CLUSTER_MAINTENANCESETTINGS_CHECK

Gli upgrade automatici della versione principale vengono eseguiti in base al periodo di manutenzione

Suggerimento: verifica che in tutti i cluster Redshift sia abilitato il criterio allowVersionUpgrade e che sia stato impostato il valore preferredManutenzioneWindow e automatedSnapshotFidelizzazionePeriod

Per correggere questo esito, procedi nel seguente modo:

Terraform

Questo controllo è conforme a tutti i valori predefiniti forniti da Terraform. In caso di errore del cluster Redshift, esamina i requisiti e rimuovi gli override predefiniti per i seguenti attributi della risorsa aws_redshift_cluster.

resource "aws_redshift_cluster" "example" {

  # ...other configuration ...

  # The following values are compliant and set by default if omitted.
  allow_version_upgrade               = true
  preferred_maintenance_window        = "sat:10:00-sat:10:30"
  automated_snapshot_retention_period = 1
}

Console AWS

Quando crei un cluster Redshift tramite la console AWS, i valori predefiniti sono già conformi a questo controllo.

Per maggiori informazioni, consulta Gestire i cluster utilizzando la console

interfaccia a riga di comando AWS

Per risolvere questo controllo utilizzando AWS CLI, segui questi passaggi:

aws redshift modify-cluster \
  --cluster-identifier "test-redshift-cluster" \
  --allow-version-upgrade

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Redshift Cluster Public Access Check

Nome categoria nell'API: REDSHIFT_CLUSTER_PUBLIC_ACCESS_CHECK

L'attributo PubliclyAccessible della configurazione del cluster Amazon Redshift indica se il cluster è accessibile pubblicamente. Se il cluster è configurato con PubliclyAccessible impostato su true, si tratta di un'istanza per internet con un nome DNS risolvibile pubblicamente, che si risolve in un indirizzo IP pubblico.

Quando il cluster non è accessibile pubblicamente, si tratta di un'istanza interna con un nome DNS che si risolve in un indirizzo IP privato. A meno che tu non voglia che il cluster sia accessibile pubblicamente, il cluster non deve essere configurato con PubliclyAccessible impostato su true.

Suggerimento: controlla se i cluster Redshift sono accessibili pubblicamente

Per correggere questo esito, procedi nel seguente modo:

Terraform

Per risolvere questo controllo, è necessario modificare la risorsa del cluster Redshift e impostare publicly_accessible su false. Il valore predefinito è true.

resource "aws_redshift_cluster" "example" {
  # ... other configuration ...
  publicly_accessible = false
}

Console AWS

Disattivare l'accesso pubblico a un cluster Amazon Redshift

  1. Apri la console Amazon Redshift all'indirizzo https://console.aws.amazon.com/redshift/.
  2. Nel menu di navigazione, scegli Cluster, quindi scegli il nome del cluster con il gruppo di sicurezza da modificare.
  3. Scegli Azioni, quindi seleziona Modifica impostazione accessibile pubblicamente.
  4. In Consenti a istanze e dispositivi esterni al VPC di connettersi al tuo database tramite l'endpoint del cluster, scegli No.
  5. Scegli Conferma.

interfaccia a riga di comando AWS

Usa il comando modify-cluster per impostare --no-publicly-accessible.

aws redshift modify-cluster \
  --cluster-identifier "test-redshift-cluster" \
  --no-publicly-accessible

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Restricted Common Ports

Nome categoria nell'API: RESTRICTED_COMMON_PORTS

Questo valore consente di verificare se il traffico in entrata senza restrizioni per i gruppi di sicurezza è accessibile alle porte specificate che presentano il rischio più elevato. Questo controllo non riesce se una delle regole di un gruppo di sicurezza consente il traffico in entrata da "0.0.0.0/0" o "::/0" per quelle porte.

L'accesso illimitato (0.0.0.0/0) aumenta le opportunità di attività dannose, come la pirateria informatica, gli attacchi denial-of-service e la perdita di dati.

I gruppi di sicurezza forniscono un filtro stateful del traffico di rete in entrata e in uscita verso le risorse AWS. Nessun gruppo di sicurezza deve consentire l'accesso senza restrizioni in entrata alle seguenti porte:

  • 20, 21 (FTP)
  • 22 (SSH)
  • 23 (Telnet)
  • 25 (SMTP)
  • 110 (POP3)
  • 135 (RPC)
  • 143 (IMAP)
  • 445 (CIFS)
  • 1433, 1434 (MSSQL)
  • 3000 (framework di sviluppo web Go, Node.js e Ruby)
  • 3306 (mySQL)
  • 3389 (RDP)
  • 4333 (ahsp)
  • 5000 (framework di sviluppo web in Python)
  • 5432 (postgresql)
  • 5500 (fcp-addr-srvr1)
  • 5601 (Dashboard OpenSearch)
  • 8080 (proxy)
  • 8088 (porta HTTP precedente)
  • 8888 (porta HTTP alternativa)
  • 9200 o 9300 (OpenSearch)

Consiglio: i gruppi di sicurezza non devono consentire l'accesso illimitato alle porte ad alto rischio

Per correggere questo esito, procedi nel seguente modo:

Console AWS

Per eliminare una regola del gruppo di sicurezza:

  1. Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/.
  2. Nel riquadro di navigazione, scegli Gruppi di sicurezza.
  3. Seleziona il gruppo di sicurezza da aggiornare, scegli Azioni, quindi seleziona Modifica regole in entrata per rimuovere una regola in entrata o Modifica regole in uscita per rimuovere una regola in uscita.
  4. Fai clic sul pulsante Elimina a destra della regola da eliminare.
  5. Scegli Anteprima modifiche, quindi Conferma.

Per informazioni su come eliminare le regole da un gruppo di sicurezza, vedi Eliminare le regole da un gruppo di sicurezza nella Guida dell'utente di Amazon EC2 per le istanze Linux.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Restricted Ssh

Nome categoria nell'API: RESTRICTED_SSH

I gruppi di sicurezza forniscono un filtro stateful del traffico di rete in entrata e in uscita verso le risorse AWS.

Il CIS consiglia che nessun gruppo di sicurezza consenta l'accesso illimitato in entrata alla porta 22. La rimozione della connettività illimitata ai servizi della console remota, ad esempio SSH, riduce l'esposizione del server al rischio.

Consiglio: i gruppi di sicurezza non devono consentire il traffico in entrata da 0.0.0.0/0 alla porta 22

Per correggere questo esito, procedi nel seguente modo:

Console AWS

Esegui i passaggi seguenti per ogni gruppo di sicurezza associato a un VPC.

Apri la console VPC Amazon all'indirizzo https://console.aws.amazon.com/vpc/.

  1. Nel riquadro a sinistra, scegli Gruppi di sicurezza.
  2. Seleziona un gruppo di sicurezza.
  3. Nella sezione inferiore della pagina, scegli la scheda Regole in entrata.
  4. Scegli Modifica regole.
  5. Identifica la regola che consente l'accesso tramite la porta 22, quindi scegli la X per rimuoverla.
  6. Scegli Salva regole.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Rotation Customer Created Cmks Enabled

Nome categoria nell'API: ROTATION_CUSTOMER_CREATED_CMKS_ENABLED

Controlla se la rotazione automatica della chiave è abilitata per ogni chiave e corrisponde all'ID della chiave della chiave KMS AWS creata dal cliente. La regola è NON_COMPLIANT se il ruolo del registratore di configurazione AWS per una risorsa non ha l'autorizzazione kms:DescribeKey.

Suggerimento: assicurati che la rotazione per le chiavi CMK create dal cliente sia abilitata

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Rotation Customer Created Symmetric Cmks Enabled

Nome categoria nell'API: ROTATION_CUSTOMER_CREATED_SYMMETRIC_CMKS_ENABLED

AWS Key Management Service (KMS) consente ai clienti di ruotare la chiave di supporto, che è il materiale della chiave archiviato nel KMS e che è legato all'ID della chiave master del cliente (CMK) creata dal cliente. È la chiave di supporto utilizzata per eseguire operazioni crittografiche come la crittografia e la decriptazione. Attualmente la rotazione automatica della chiave conserva tutte le chiavi di supporto precedenti in modo che la decrittografia dei dati criptati possa avvenire in modo trasparente. Ti consigliamo di abilitare rotazione della chiave CMK per le chiavi simmetriche. La rotazione della chiave non può essere abilitata per una CMK asimmetrica.

Consiglio: assicurati che la rotazione per le chiavi CMK simmetriche create dal cliente sia abilitata

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Accedi alla console di gestione AWS e apri la console IAM all'indirizzo https://console.aws.amazon.com/iam.
  2. Nel riquadro di navigazione a sinistra, scegli Customer managed keys .
  3. Seleziona una CMK gestita dal cliente in cui Key spec = SYMMETRIC_DEFAULT
  4. Nel riquadro "Configurazione generale", apri la scheda "Rotazione chiave"
  5. Seleziona la casella di controllo "Ruota automaticamente questa chiave KMS ogni anno".

interfaccia a riga di comando AWS

  1. Esegui questo comando per abilitare la rotazione della chiave:
 aws kms enable-key-rotation --key-id <kms_key_id>

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Routing Tables Vpc Peering Are Least Access

Nome categoria nell'API: ROUTING_TABLES_VPC_PEERING_ARE_LEAST_ACCESS

Controlla se le tabelle di route per il peering VPC sono configurate con l'entità con privilegi minimi.

Suggerimento: assicurati che le tabelle di routing per il peering VPC abbiano un accesso minimo

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

S3 Account Level Public Access Blocks

Nome categoria nell'API: S3_ACCOUNT_LEVEL_PUBLIC_ACCESS_BLOCKS

La funzionalità Blocca accesso pubblico di Amazon S3 fornisce impostazioni per punti di accesso, bucket e account per aiutarti a gestire l'accesso pubblico alle risorse Amazon S3. Per impostazione predefinita, nuovi bucket, punti di accesso e oggetti non consentono l'accesso pubblico.

Suggerimento: verifica se le impostazioni di blocco dell'accesso pubblico S3 richieste sono configurate a livello di account

Per correggere questo esito, procedi nel seguente modo:

Terraform

La seguente risorsa Terraform configura l'accesso a livello di account a S3.

resource "aws_s3_account_public_access_block" "s3_control" {
  block_public_acls       = true
  block_public_policy     = true
  ignore_public_acls      = true
  restrict_public_buckets = true
}

Console AWS

per modificare le impostazioni di blocco dell'accesso pubblico per tutti i bucket S3 in un account AWS.

  1. Accedi alla console di gestione AWS e apri la console Amazon S3 all'indirizzo https://console.aws.amazon.com/s3/.
  2. Scegli Blocca le impostazioni di accesso pubblico per questo account.
  3. Scegli Modifica per modificare le impostazioni di blocco dell'accesso pubblico per tutti i bucket nel tuo account AWS.
  4. Scegli le impostazioni che desideri modificare, quindi seleziona Salva modifiche.
  5. Quando ti viene chiesta conferma, inserisci Conferma. Quindi scegli Conferma per salvare le modifiche.

interfaccia a riga di comando AWS

aws s3control put-public-access-block \
--account-id <value> \
--public-access-block-configuration '{"BlockPublicAcls": true, "BlockPublicPolicy": true, "IgnorePublicAcls": true, "RestrictPublicBuckets": true}'

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

S3 Bucket Logging Enabled

Nome categoria nell'API: S3_BUCKET_LOGGING_ENABLED

La funzionalità Registrazione degli accessi al server AWS S3 registra le richieste di accesso ai bucket di archiviazione, il che è utile per i controlli di sicurezza. Per impostazione predefinita, il logging degli accessi al server non è abilitato per i bucket S3.

Suggerimento: controlla se il logging è abilitato in tutti i bucket S3

Per correggere questo esito, procedi nel seguente modo:

Terraform

L'esempio seguente mostra come creare due bucket:

  1. Un bucket di logging
  2. Un bucket conforme
variable "bucket_acl_map" {
  type = map(any)
  default = {
    "logging-bucket"   = "log-delivery-write"
    "compliant-bucket" = "private"
  }
}

resource "aws_s3_bucket" "all" {
  for_each            = var.bucket_acl_map
  bucket              = each.key
  object_lock_enabled = true
  tags = {
    "Pwd"    = "s3"
  }
}

resource "aws_s3_bucket_acl" "private" {
  for_each = var.bucket_acl_map
  bucket   = each.key
  acl      = each.value
}

resource "aws_s3_bucket_versioning" "enabled" {
  for_each = var.bucket_acl_map
  bucket   = each.key
  versioning_configuration {
    status = "Enabled"
  }
}

resource "aws_s3_bucket_logging" "enabled" {
  for_each      = var.bucket_acl_map
  bucket        = each.key
  target_bucket = aws_s3_bucket.all["logging-bucket"].id
  target_prefix = "log/"
}

resource "aws_s3_bucket_server_side_encryption_configuration" "example" {
  for_each = var.bucket_acl_map
  bucket   = each.key

  rule {
    apply_server_side_encryption_by_default {
      sse_algorithm     = "aws:kms"
    }
  }
}

Console AWS

Per informazioni su come abilitare il logging degli accessi S3 tramite la console AWS, consulta Abilitazione del logging degli accessi al server Amazon S3 nella documentazione di AWS.

interfaccia a riga di comando AWS

L'esempio seguente mostra come:

  1. Crea un criterio del bucket per concedere l'autorizzazione dell'entità di servizio di logging a PutObject nel bucket di logging.

policy.json javascript { "Version": "2012-10-17", "Statement": [ { "Sid": "S3ServerAccessLogsPolicy", "Effect": "Allow", "Principal": {"Service": "logging.s3.amazonaws.com"}, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::MyBucket/Logs/*", "Condition": { "ArnLike": {"aws:SourceARN": "arn:aws:s3:::SOURCE-BUCKET-NAME"}, "StringEquals": {"aws:SourceAccount": "SOURCE-AWS-ACCOUNT-ID"} } } ] }

aws s3api put-bucket-policy \
  --bucket my-bucket
  --policy file://policy.json
  1. Applica il criterio al bucket di logging

logging.json javascript { "LoggingEnabled": { "TargetBucket": "MyBucket", "TargetPrefix": "Logs/" } }

aws s3api put-bucket-logging \
  --bucket MyBucket \
  --bucket-logging-status file://logging.json

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

S3 Bucket Policy Set Deny Http Requests

Nome categoria nell'API: S3_BUCKET_POLICY_SET_DENY_HTTP_REQUESTS

A livello di bucket Amazon S3, puoi configurare le autorizzazioni tramite un criterio del bucket che rende gli oggetti accessibili solo tramite HTTPS.

Suggerimento: assicurati che il criterio del bucket S3 sia impostato in modo da rifiutare le richieste HTTP

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Accedi ad AWS Management Console e apri la console Amazon S3 utilizzando https://console.aws.amazon.com/s3/
  2. Seleziona la casella di controllo accanto al bucket.
  3. Fai clic su "Autorizzazioni".
  4. Fai clic su "Criterio bucket"
  5. Aggiungilo alle norme esistenti inserendo le informazioni richieste { "Sid": <optional>", "Effect": "Deny", "Principal": "*", "Action": "s3:*", "Resource": "arn:aws:s3:::<bucket_name>/*", "Condition": { "Bool": { "aws:SecureTransport": "false" } } }
  6. Salva
  7. Ripeti l'operazione per tutti i bucket del tuo account AWS che contengono dati sensibili.

Dalla console

con AWS Policy Builder:

  1. Ripeti i passaggi precedenti da 1 a 4.
  2. Fai clic su Policy Generator nella parte inferiore dell'Editor criteri bucket
  3. Seleziona il tipo di criterio S3 Bucket Policy
  4. Aggiungi istruzioni
  5. Effect = Rifiuta
  6. Principal = *
  7. AWS Service = Amazon S3
  8. Actions = *
  9. Amazon Resource Name =
  10. Genera criterio
  11. Copia il testo e aggiungilo al criterio del bucket.

interfaccia a riga di comando AWS

  1. Esporta il criterio del bucket in un file json. aws s3api get-bucket-policy --bucket <bucket_name> --query Policy --output text > policy.json

  2. Modifica il file policy.json aggiungendo questa istruzione:

{
 "Sid": <optional>",
 "Effect": "Deny",
 "Principal": "*",
 "Action": "s3:*",
 "Resource": "arn:aws:s3:::<bucket_name>/*",
 "Condition": {
 "Bool": {
 "aws:SecureTransport": "false"
 }
 }
 }
  1. Applica di nuovo questo criterio modificato al bucket S3:
aws s3api put-bucket-policy --bucket <bucket_name> --policy file://policy.json

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

S3 Bucket Replication Enabled

Nome categoria nell'API: S3_BUCKET_REPLICATION_ENABLED

Questo controllo verifica se in un bucket Amazon S3 è abilitata la replica tra regioni. Il controllo non riesce se nel bucket non è abilitata la replica tra regioni o se è abilitata anche la replica nelle stesse regioni.

La replica è la copia automatica e asincrona degli oggetti nei bucket nella stessa regione AWS o in regioni diverse. La replica copia gli oggetti appena creati e gli aggiornamenti degli oggetti da un bucket di origine a uno o più bucket di destinazione. Le best practice di AWS consigliano la replica per i bucket di origine e di destinazione che appartengono allo stesso account AWS. Oltre alla disponibilità, dovresti prendere in considerazione altre impostazioni di protezione dei sistemi.

Suggerimento: controlla se la replica tra regioni è abilitata per i bucket S3

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

S3 Bucket Server Side Encryption Enabled

Nome categoria nell'API: S3_BUCKET_SERVER_SIDE_ENCRYPTION_ENABLED

Questo controllo verifica che nel bucket S3 sia abilitata la crittografia predefinita di Amazon S3 o che il criterio del bucket S3 neghi esplicitamente le richieste put-object senza crittografia lato server.

Suggerimento: assicurati che tutti i bucket S3 utilizzino la crittografia at-rest

Per correggere questo esito, procedi nel seguente modo:

Terraform

resource "aws_s3_bucket_server_side_encryption_configuration" "enable" {
  bucket = "my-bucket"

  rule {
    apply_server_side_encryption_by_default {
      sse_algorithm = "AES256"
    }
  }
}

Console AWS

abilitare la crittografia predefinita in un bucket S3

  1. Apri la console Amazon S3 all'indirizzo https://console.aws.amazon.com/s3/.
  2. Nel riquadro di navigazione a sinistra, scegli Bucket.
  3. Scegli il bucket S3 dall'elenco.
  4. Scegli Proprietà.
  5. Scegli Crittografia predefinita.
  6. Per la crittografia, scegli AES-256 o AWS-KMS.
  7. Scegli AES-256 per utilizzare le chiavi gestite da Amazon S3 per la crittografia predefinita. Per ulteriori informazioni sull'utilizzo della crittografia lato server di Amazon S3 per criptare i tuoi dati, consulta la Guida dell'utente di Amazon Simple Storage Service.
  8. Scegli AWS-KMS per utilizzare le chiavi gestite da AWS KMS per la crittografia predefinita. Quindi scegli una chiave master dall'elenco delle chiavi master KMS di AWS che hai creato.
  9. Digita l'Amazon Resource Name (ARN) della chiave AWS KMS da utilizzare. Puoi trovare l'ARN della tua chiave KMS di AWS nella sezione Chiavi di crittografia della console IAM. In alternativa, puoi scegliere il nome di una chiave dall'elenco a discesa.
  10. Importante: se utilizzi l'opzione KMS di AWS per la configurazione di crittografia predefinita, sei soggetto alle quote RPS (richieste al secondo) di AWS KMS. Per ulteriori informazioni sulle quote KMS di AWS e su come richiedere un aumento della quota, consulta la Guida per gli sviluppatori di AWS Key Management Service.
  11. Scegli Salva.

Per ulteriori informazioni sulla creazione di una chiave KMS di AWS, consulta la Guida per gli sviluppatori di AWS Key Management Service.

Per ulteriori informazioni sull'utilizzo di AWS KMS con Amazon S3, consulta la Guida dell'utente per Amazon Simple Storage Service.

Quando abiliti la crittografia predefinita, potresti dover aggiornare il criterio del bucket. Per ulteriori informazioni sul passaggio dai criteri dei bucket alla crittografia predefinita, consulta la guida dell'utente di Amazon Simple Storage Service.

interfaccia a riga di comando AWS

aws s3api put-bucket-encryption \
  --bucket my-bucket \
  --server-side-encryption-configuration '{"Rules": [{"ApplyServerSideEncryptionByDefault": {"SSEAlgorithm": "AES256"}}]}'

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

S3 Bucket Versioning Enabled

Nome categoria nell'API: S3_BUCKET_VERSIONING_ENABLED

Amazon S3 è un mezzo per mantenere più varianti di un oggetto nello stesso bucket e può aiutarti a recuperare più facilmente sia da azioni utente indesiderate che da errori delle applicazioni.

Suggerimento: controlla che il controllo delle versioni sia abilitato per tutti i bucket S3

Per correggere questo esito, procedi nel seguente modo:

Terraform

resource "aws_s3_bucket" "my_bucket" {
  bucket = "my-bucket"

  versioning {
    enabled = true
  }
}

Console AWS

Per abilitare o disabilitare il controllo delle versioni in un bucket S3

  1. Accedi alla console di gestione AWS e apri la console Amazon S3 all'indirizzo https://console.aws.amazon.com/s3/.
  2. Nell'elenco Bucket, scegli il nome del bucket per cui vuoi abilitare il controllo delle versioni.
  3. Scegli Proprietà.
  4. In Controllo delle versioni dei bucket, scegli Modifica.
  5. Scegli Sospendi o Attiva, quindi scegli Salva modifiche.

interfaccia a riga di comando AWS

aws s3control put-bucket-versioning \
--bucket <bucket_name> \
--versioning-configuration Status=Enabled

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

S3 Default Encryption Kms

Nome categoria nell'API: S3_DEFAULT_ENCRYPTION_KMS

Controlla se i bucket Amazon S3 sono criptati con AWS Key Management Service (AWS KMS)

Suggerimento: verifica che tutti i bucket siano criptati con KMS

Per correggere questo esito, procedi nel seguente modo:

Terraform

resource "aws_kms_key" "s3_encryption" {
  description         = "Used for S3 Bucket encryption configuration"
  enable_key_rotation = true
}

resource "aws_s3_bucket_server_side_encryption_configuration" "enable" {
  bucket   = "my-bucket"

  rule {
    apply_server_side_encryption_by_default {
      kms_master_key_id = aws_kms_key.s3_encryption.arn
      sse_algorithm     = "aws:kms"
    }
  }
}

Console AWS

abilitare la crittografia predefinita in un bucket S3

  1. Apri la console Amazon S3 all'indirizzo https://console.aws.amazon.com/s3/.
  2. Nel riquadro di navigazione a sinistra, scegli Bucket.
  3. Scegli il bucket S3 dall'elenco.
  4. Scegli Proprietà.
  5. Scegli Crittografia predefinita.
  6. Per la crittografia, scegli AWS-KMS.
  7. Scegli AWS-KMS per utilizzare le chiavi gestite da AWS KMS per la crittografia predefinita. Quindi scegli una chiave master dall'elenco delle chiavi master KMS di AWS che hai creato. Per ulteriori informazioni su come creare chiavi KMS, consulta la Documentazione di AWS - Creazione di chiavi
  8. Digita l'Amazon Resource Name (ARN) della chiave AWS KMS da utilizzare. Puoi trovare l'ARN della tua chiave KMS di AWS nella sezione Chiavi di crittografia della console IAM. In alternativa, puoi scegliere il nome di una chiave dall'elenco a discesa.
  9. Importante: questa soluzione è soggetta alle quote RPS (richieste al secondo) del KMS AWS. Per ulteriori informazioni sulle quote KMS di AWS e su come richiedere un aumento della quota, consulta la Guida per gli sviluppatori di AWS Key Management Service.
  10. Scegli Salva.

Per ulteriori informazioni sull'utilizzo di AWS KMS con Amazon S3, consulta la Guida dell'utente per Amazon Simple Storage Service.

Quando abiliti la crittografia predefinita, potresti dover aggiornare il criterio del bucket. Per ulteriori informazioni sul passaggio dai criteri dei bucket alla crittografia predefinita, consulta la guida dell'utente di Amazon Simple Storage Service.

interfaccia a riga di comando AWS

Crea una chiave KMS

aws kms create-key \
  --description "Key to encrypt S3 buckets"

Abilita rotazione della chiave

aws kms enable-key-rotation \
  --key-id <key_id_from_previous_command>

Aggiorna bucket

aws s3api put-bucket-encryption \
  --bucket my-bucket \
  --server-side-encryption-configuration '{"Rules": [{"ApplyServerSideEncryptionByDefault": {"KMSMasterKeyID": "<id_from_key>", "SSEAlgorithm": "AES256"}}]}'

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Sagemaker Notebook Instance Kms Key Configured

Nome categoria nell'API: SAGEMAKER_NOTEBOOK_INSTANCE_KMS_KEY_CONFIGURED

Controlla se è configurata una chiave AWS Key Management Service (AWS KMS) per un'istanza di blocco note Amazon SageMaker. La regola è NON_COMPLIANT se "KmsKeyId" non è specificato per l'istanza del blocco note SageMaker.

Suggerimento: verifica che tutte le istanze di blocco note SageMaker siano configurate per l'utilizzo di KMS

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Sagemaker Notebook No Direct Internet Access

Nome categoria nell'API: SAGEMAKER_NOTEBOOK_NO_DIRECT_INTERNET_ACCESS

Controlla se l'accesso diretto a internet è disabilitato per un'istanza di blocco note SageMaker. A questo scopo, verifica se il campo DirectInternetAccess è disabilitato per l'istanza del blocco note.

Se configuri l'istanza SageMaker senza un VPC, per impostazione predefinita l'accesso diretto a internet è abilitato sull'istanza. Devi configurare l'istanza con un VPC e modificare l'impostazione predefinita in Disabilita: accedi a internet tramite un VPC.

Per addestrare o ospitare modelli da un blocco note, è necessario l'accesso a internet. Per abilitare l'accesso a internet, assicurati che il VPC abbia un gateway NAT e che il gruppo di sicurezza consenta le connessioni in uscita. Per saperne di più su come connettere un'istanza di blocco note alle risorse in un VPC, consulta Connettere un'istanza di blocco note alle risorse in un VPC nella Guida per gli sviluppatori di Amazon SageMaker.

Devi inoltre assicurarti che l'accesso alla configurazione di SageMaker sia limitato solo agli utenti autorizzati. Limita le autorizzazioni IAM degli utenti per modificare le impostazioni e le risorse di SageMaker.

Suggerimento: controlla se l'accesso diretto a internet è disabilitato per tutte le istanze di blocchi note Amazon SageMaker

Per correggere questo esito, procedi nel seguente modo:

Console AWS

Tieni presente che non puoi modificare l'impostazione di accesso a internet dopo la creazione di un'istanza di blocco note. Deve essere interrotto, eliminato e ricreato.

Per configurare un'istanza di blocco note SageMaker in modo che neghi l'accesso diretto a internet:

  1. Apri la console SageMaker all'indirizzo https://console.aws.amazon.com/sagemaker/
  2. Vai alle istanze di blocco note.
  3. Elimina l'istanza in cui è abilitato l'accesso diretto a internet. Scegli l'istanza, scegli Azioni, quindi scegli Arresta.
  4. Dopo aver arrestato l'istanza, scegli Azioni e poi Elimina.
  5. Scegli Crea istanza blocco note. Fornisci i dettagli di configurazione.
  6. Espandi la sezione Rete, quindi scegli un VPC, una subnet e un gruppo di sicurezza. In Accesso diretto a internet, scegli Disabilita: accedi a internet tramite un VPC.
  7. Scegli Crea istanza blocco note.

Per ulteriori informazioni, consulta Connettere un'istanza di blocco note alle risorse in un VPC nella Guida per gli sviluppatori Amazon SageMaker.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Secretsmanager Rotation Enabled Check

Nome categoria nell'API: SECRETSMANAGER_ROTATION_ENABLED_CHECK

Verifica se un secret archiviato in AWS Secret Manager è configurato con rotazione automatica. Il controllo non riesce se il secret non è configurato con la rotazione automatica. Se fornisci un valore personalizzato per il parametro maximumAllowedRotationFrequency, il controllo viene eseguito solo se il secret viene ruotato automaticamente entro il periodo di tempo specificato.

Secret Manager ti aiuta a migliorare la strategia di sicurezza della tua organizzazione. I secret includono credenziali del database, password e chiavi API di terze parti. Puoi utilizzare Secret Manager per archiviare i secret a livello centrale, criptarli automaticamente, controllarne l'accesso e ruotare i secret in modo sicuro e automatico.

Secret Manager può ruotare i secret. Puoi utilizzare la rotazione per sostituire i secret a lungo termine con altri a breve termine. La rotazione dei secret limita il periodo di tempo in cui un utente non autorizzato può utilizzare un secret compromesso. Per questo motivo, devi ruotare spesso i secret. Per saperne di più sulla rotazione, consulta Rotazione dei secret di AWS Secrets Manager nella Guida dell'utente di AWS Secrets Manager.

Suggerimento: verifica che la rotazione di tutti i secret di AWS Secret Manager sia abilitata

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Sns Encrypted Kms

Nome categoria nell'API: SNS_ENCRYPTED_KMS

Controlla se un argomento SNS è criptato at-rest mediante KMS AWS. I controlli hanno esito negativo se un argomento SNS non utilizza una chiave KMS per la crittografia lato server (SSE).

La crittografia dei dati at-rest riduce il rischio che un utente non autenticato su AWS acceda a dati archiviati su disco. Inoltre, aggiunge un altro insieme di controlli dell'accesso per limitare la possibilità di utenti non autorizzati di accedere ai dati. Ad esempio, le autorizzazioni API sono necessarie per decriptare i dati prima che possano essere letti. Gli argomenti SNS devono essere criptati at-rest per un ulteriore livello di sicurezza.

Suggerimento: controlla che tutti gli argomenti SNS siano criptati con KMS

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Vpc Default Security Group Closed

Nome categoria nell'API: VPC_DEFAULT_SECURITY_GROUP_CLOSED

Questo controllo verifica se il gruppo di sicurezza predefinito di un VPC consente il traffico in entrata o in uscita. Il controllo non riesce se il gruppo di sicurezza consente il traffico in entrata o in uscita.

Le regole per il gruppo di sicurezza predefinito consentono tutto il traffico in uscita e in entrata dalle interfacce di rete (e dalle relative istanze associate) assegnate allo stesso gruppo di sicurezza. Ti consigliamo di non utilizzare il gruppo di sicurezza predefinito. Poiché il gruppo di sicurezza predefinito non può essere eliminato, devi modificare l'impostazione delle regole del gruppo di sicurezza predefinito per limitare il traffico in entrata e in uscita. In questo modo si evita il traffico indesiderato se il gruppo di sicurezza predefinito è stato configurato per errore per risorse come le istanze EC2.

Suggerimento: assicurati che il gruppo di sicurezza predefinito di ogni VPC limiti tutto il traffico

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Vpc Flow Logging Enabled All Vpcs

Nome categoria nell'API: VPC_FLOW_LOGGING_ENABLED_ALL_VPCS

I log di flusso VPC sono una funzionalità che consente di acquisire informazioni sul traffico IP da e verso le interfacce di rete nel VPC. Dopo aver creato un log di flusso, puoi visualizzare e recuperare i relativi dati nei log di Amazon CloudWatch. È consigliabile abilitare i log di flusso VPC per i "rifiuti" dei pacchetti per i VPC.

Suggerimento: assicurati che il logging dei flussi VPC sia abilitato in tutti i VPC

Per correggere questo esito, procedi nel seguente modo:

Console AWS

  1. Accedi alla console di gestione
  2. Seleziona Services, poi VPC
  3. Nel riquadro di navigazione a sinistra, seleziona Your VPCs
  4. Seleziona un VPC
  5. Nel riquadro a destra, seleziona la scheda Flow Logs.
  6. Se non esiste alcun log di flusso, fai clic su Create Flow Log
  7. Per Filtro, seleziona Reject
  8. Inserisci Role e Destination Log Group
  9. Fai clic su Create Log Flow.
  10. Fai clic su CloudWatch Logs Group

Nota:l'impostazione del filtro su "Rifiuta" ridurrà drasticamente l'accumulo di dati di logging per questo suggerimento e fornirà informazioni sufficienti ai fini del rilevamento, della ricerca e della correzione delle violazioni. Tuttavia, durante i periodi di progettazione del gruppo di sicurezza con privilegio minimo, impostare il filtro su "Tutti" può essere molto utile per scoprire i flussi di traffico esistenti necessari per il corretto funzionamento di un ambiente già in esecuzione.

interfaccia a riga di comando AWS

  1. Crea un documento relativo alle norme e assegnagli il nome role_policy_document.json, quindi incolla i seguenti contenuti:
{
 "Version": "2012-10-17",
 "Statement": [
 {
 "Sid": "test",
 "Effect": "Allow",
 "Principal": {
 "Service": "ec2.amazonaws.com"
 },
 "Action": "sts:AssumeRole"
 }
 ]
}
  1. Crea un altro documento relativo alle norme e assegnagli il nome iam_policy.json, quindi incolla i seguenti contenuti:
{
 "Version": "2012-10-17",
 "Statement": [
 {
 "Effect": "Allow",
 "Action":[
 "logs:CreateLogGroup",
 "logs:CreateLogStream",
 "logs:DescribeLogGroups",
 "logs:DescribeLogStreams",
 "logs:PutLogEvents",
 "logs:GetLogEvents",
 "logs:FilterLogEvents"
 ],
 "Resource": "*"
 }
 ]
}
  1. Esegui il comando seguente per creare un ruolo IAM:
aws iam create-role --role-name <aws_support_iam_role> --assume-role-policy-document file://<file-path>role_policy_document.json
  1. Esegui il comando seguente per creare un criterio IAM:
aws iam create-policy --policy-name <ami-policy-name> --policy-document file://<file-path>iam-policy.json
  1. Esegui il comando attach-group-policy utilizzando l'ARN del criterio IAM restituito al passaggio precedente per collegare il criterio al ruolo IAM (se il comando ha esito positivo, non viene restituito alcun output):
aws iam attach-group-policy --policy-arn arn:aws:iam::<aws-account-id>:policy/<iam-policy-name> --group-name <group-name>
  1. Esegui describe-vpcs per ottenere il VpcId disponibile nella regione selezionata:
aws ec2 describe-vpcs --region <region>
  1. L'output comando deve restituire l'ID VPC disponibile nella regione selezionata.
  2. Esegui create-flow-logs per creare un log di flusso per la VPC:
aws ec2 create-flow-logs --resource-type VPC --resource-ids <vpc-id> --traffic-type REJECT --log-group-name <log-group-name> --deliver-logs-permission-arn <iam-role-arn>
  1. Ripeti il passaggio 8 per altri VPC disponibili nella regione selezionata.
  2. Modifica la regione aggiornando --region e ripeti la procedura di correzione per altre vCPU.

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Vpc Sg Open Only To Authorized Ports

Nome categoria nell'API: VPC_SG_OPEN_ONLY_TO_AUTHORIZED_PORTS

Questo controllo verifica se un gruppo di sicurezza Amazon EC2 consente il traffico in entrata illimitato da porte non autorizzate. Lo stato del controllo viene determinato come segue:

Se si utilizza il valore predefinito per AuthorizedTcpPorts, il controllo non riesce se il gruppo di sicurezza consente il traffico in entrata illimitato da qualsiasi porta diversa dalle porte 80 e 443.

Se fornisci valori personalizzati per AuthorizedTcpPorts o AuthorizedUdpPorts, il controllo non andrà a buon fine se il gruppo di sicurezza consente il traffico in entrata illimitato da qualsiasi porta non in elenco.

Se non viene utilizzato nessun parametro, il controllo non va a buon fine per tutti i gruppi di sicurezza che hanno una regola per il traffico in entrata senza limitazioni.

I gruppi di sicurezza forniscono un filtro stateful del traffico di rete in entrata e in uscita verso AWS. Le regole del gruppo di sicurezza devono seguire l'entità dell'accesso con privilegi minimi. L'accesso senza restrizioni (indirizzo IP con suffisso /0) aumenta le possibilità di attività dannose come la pirateria informatica, gli attacchi denial of service e la perdita di dati. A meno che una porta non sia specificamente consentita, deve negare l'accesso illimitato.

Consiglio: verifica che qualsiasi gruppo di sicurezza con 0.0.0.0/0 di qualsiasi VPC consenta solo traffico TCP/UDP in entrata specifico

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.

Both VPC VPN Tunnels Up

Nome categoria nell'API: VPC_VPN_2_TUNNELS_UP

Un tunnel VPN è un collegamento criptato in cui i dati possono passare dalla rete del cliente a o da AWS all'interno di una connessione VPN AWS Site-to-Site. Ogni connessione VPN include due tunnel VPN che puoi utilizzare contemporaneamente per garantire l'alta disponibilità. Verificare che entrambi i tunnel VPN siano attivi per una connessione VPN è importante per confermare una connessione sicura e ad alta disponibilità tra un VPC AWS e la tua rete remota.

Questo controllo verifica che entrambi i tunnel VPN forniti da AWS Site-to-Site VPN siano in stato UP. Il controllo non riesce se lo stato di uno o entrambi i tunnel è GIÙ.

Suggerimento: verifica che entrambi i tunnel AWS VPN forniti da AWS site-to-site siano in stato UP

Scopri di più sulle impostazioni di analisi e sugli asset supportati di questo tipo di risultato.