SEC01-BP02 Utente root e proprietà dell'account sicuro
L'utente root è la figura più privilegiata di un Account AWS, ha pieno accesso amministrativo a tutte le risorse dell'account e, in alcuni casi, non può essere limitato dalle policy di sicurezza. Disabilitare l'accesso programmatico all'utente root, stabilire controlli appropriati per l'utente root ed evitare l'uso di routine dell'utente root aiuta a ridurre il rischio di esposizione involontaria delle credenziali root e la conseguente compromissione dell'ambiente cloud.
Risultato desiderato: la sicurezza dell'utente root contribuisce a ridurre la possibilità che si verifichino danni accidentali o intenzionali a causa dell'uso improprio delle credenziali dell'utente root. La creazione di controlli investigativi può anche permettere di avvisare il personale appropriato quando vengono eseguite azioni utilizzando l'utente root.
Anti-pattern comuni:
-
Utilizzo dell'utente root per attività diverse da quelle che richiedono le proprie credenziali.
-
Nessun test dei piani di emergenza su base regolare per verificare il funzionamento delle infrastrutture critiche, dei processi e del personale durante un'emergenza.
-
Analisi limitata al tipico flusso di accesso all'account, trascurando di considerare o testare metodi alternativi di ripristino dell'account.
-
Nessuna gestione di DNS, server di posta elettronica e provider telefonici come parte del perimetro di sicurezza critico, in quanto utilizzati nel flusso di recupero degli account.
Vantaggi derivanti dall'adozione di questa best practice: proteggere l'accesso all'utente root crea la certezza che le azioni del proprio account siano controllate e sottoposte a audit.
Livello di rischio associato se questa best practice non fosse adottata: elevato
Guida all'implementazione
AWS offre molti strumenti per proteggere gli account. Tuttavia, poiché alcune di queste misure non sono abilitate per impostazione predefinita, è necessario intervenire direttamente per implementarle. Queste raccomandazioni sono i passi fondamentali per mettere in sicurezza il proprio Account AWS. Durante l'implementazione di questi passaggi, è importante creare un processo di valutazione e monitoraggio continuo dei controlli di sicurezza.
Quando si crea un Account AWS per la prima volta, si inizia con una singola identità che ha accesso completo a tutti i servizi e risorse AWS presenti nell'account. Questa identità è chiamata utente root dell'Account AWS. È possibile accedere come utente root mediante l'indirizzo e-mail e la password usati per creare l'account. A causa dei livelli elevati di accesso concessi all'utente root AWS, è necessario limitare l'uso dell'utente root AWS all'esecuzione di attività che lo richiedono specificamente. Le credenziali di accesso dell'utente root devono essere tenute sotto stretta sorveglianza e l'autenticazione a più fattori (MFA) deve essere sempre abilitata per l'utente root dell'Account AWS.
Oltre al normale flusso di autenticazione per accedere all'utente root utilizzando un nome utente, una password e un dispositivo di autenticazione a più fattori (MFA), esistono flussi di recupero dell'account che consentono di accedere all'utente root dell'Account AWS grazie all'accesso all'indirizzo e-mail e al numero di telefono associati all'account. Pertanto, è altrettanto importante proteggere l'account e-mail dell'utente root a cui vengono inviati l'e-mail di recupero e il numero di telefono associato all'account. Considerare anche le potenziali dipendenze circolari, quando l'indirizzo e-mail associato all'utente root è ospitato su server di posta elettronica o su risorse del servizio dei nomi di dominio (DNS) dello stesso Account AWS.
Quando si utilizza AWS Organizations, esistono più Account AWS, ognuno dei quali ha un utente root. Un account è designato come account di gestione e sotto l'account di gestione possono essere aggiunti diversi livelli di account membri. La priorità è proteggere l'utente root dell'account di gestione, quindi occuparsi degli utenti root degli account membri. La strategia per la protezione dell'utente root dell'account di gestione può essere diversa da quella degli utenti root degli account membri ed è possibile effettuare controlli di sicurezza preventivi sugli utenti root degli account membri.
Passaggi dell'implementazione
Per stabilire i controlli per l'utente root si consigliano le seguenti fasi di implementazione. Eventuali raccomandazioni sono collegate a CIS AWS Foundations benchmark versione 1.4.0. Oltre a questi passaggi, consulta le AWS best practice guidelines
Controlli preventivi
-
Imposta informazioni di contatto accurate per l'account.
-
Queste informazioni vengono utilizzate per il flusso di recupero della password persa, per il flusso di recupero dell'account del dispositivo MFA perso e per le comunicazioni critiche relative alla sicurezza con il team.
-
Utilizza un indirizzo e-mail ospitato dal dominio aziendale, preferibilmente una lista di distribuzione, come indirizzo e-mail dell'utente root. L'utilizzo di una lista di distribuzione piuttosto che dell'account di e-mail di un singolo individuo offre una maggiore ridondanza e continuità di accesso all'account root per lunghi periodi di tempo.
-
Il numero di telefono indicato nelle informazioni di contatto deve essere dedicato e sicuro per questo scopo. Il numero di telefono non deve essere indicato o condiviso con nessuno.
-
-
Non creare chiavi di accesso per l'utente root. Se sono presenti chiavi di accesso, rimuovile (CIS 1.4).
-
Elimina le credenziali programmatiche a lunga durata (chiavi di accesso e segrete) per l'utente root.
-
Se esistono già chiavi di accesso per l'utente root, è necessario passare i processi che utilizzano tali chiavi all'uso di chiavi di accesso temporanee di un ruolo AWS Identity and Access Management (IAM), quindi eliminare le chiavi di accesso per l'utente root.
-
-
Stabilisci se è necessario memorizzare le credenziali per l'utente root.
-
Se utilizzi AWS Organizations per creare nuovi account membro, la password iniziale dell'utente root sui nuovi account membro è impostata su un valore casuale che non è visibile a te. Considera l'utilizzo del flusso di ripristino della password dal tuo account di gestione di AWS Organization per ottenere l'accesso all'account membro, se necessario.
-
Per gli Account AWS standalone o per l'account di gestione di AWS Organization, considera la creazione e l'archiviazione sicura delle credenziali per l'utente root. Abilita la MFA per l'utente root.
-
-
Abilita i controlli preventivi per gli utenti root degli account membri in ambienti multi-account AWS.
-
Considera di attivare il guardrail preventivo Disallow Creation of Root Access Keys for the Root User (Disabilitare la creazione di chiavi di accesso root per l'utente root) per gli account dei membri.
-
Considera di attivare il guardrail preventivo Disallow Actions as a Root User (Disabilitare le azioni come utente root) per gli account dei membri.
-
-
Se sono necessarie le credenziali per l'utente root:
-
Utilizza una password complessa.
-
Abilita l'autenticazione a più fattori (MFA) per l'utente root, in particolare per gli account dei manager (paganti) AWS Organizations (CIS 1.5).
-
Considera i dispositivi MFA hardware per la resilienza e la sicurezza, in quanto i dispositivi monouso possono ridurre le possibilità che i dispositivi contenenti i codici MFA vengano riutilizzati per altri scopi. Verifica che i dispositivi hardware MFA alimentati da una batteria siano sostituiti regolarmente. (CIS 1.6)
-
Per configurare l'MFA per l'utente root, segui le istruzioni per abilitare un dispositivo MFA o virtuale o hardware.
-
-
Considera la possibilità di iscrivere più dispositivi MFA per il backup. Sono consentiti fino a 8 dispositivi MFA per account
. -
Tieni presente che l'iscrizione di più di un dispositivo MFA per l'utente root disabilita automaticamente il flusso per il recupero dell'account in caso di perdita del dispositivo MFA.
.
-
-
Conserva la password in modo sicuro e considera le dipendenze circolari se la password viene conservata elettronicamente. Non memorizzare la password in modo tale da richiedere l'accesso allo stesso Account AWS per ottenerla.
-
-
Facoltativo: valuta la possibilità di stabilire un programma di rotazione periodica delle password per l'utente root.
-
Le best practice per la gestione delle credenziali dipendono dai requisiti normativi e di policy. Gli utenti root protetti da MFA non dipendono dalla password come unico fattore di autenticazione.
-
La modifica della password dell'utente root su base periodica riduce il rischio che una password esposta inavvertitamente possa essere utilizzata in modo improprio.
-
Controlli di rilevamento
-
Crea allarmi per rilevare l'uso delle credenziali root (CIS 1.7). L'abilitazione di Amazon GuardDuty monitorerà e segnalerà l'uso delle credenziali API dell'utente root attraverso il rilevamento RootCredentialUsage.
-
Valuta e implementa i controlli investigativi inclusi in AWS Well-Architected Security Pillar conformance pack for AWS Config (Pacchetto di conformità del pilastro di sicurezza well-architected di AWS per AWS Config) oppure, se si utilizza AWS Control Tower, i controlli fortemente consigliati disponibili in Control Tower.
Guida operativa
-
Stabilisci chi nell'organizzazione deve avere accesso alle credenziali dell'utente root.
-
Utilizza una regola a due persone, in modo che nessun individuo abbia accesso a tutte le credenziali necessarie e all'MFA per ottenere l'accesso come utente root.
-
Verifica che l'organizzazione, e non un singolo individuo, mantenga il controllo sul numero di telefono e sull'alias e-mail associati all'account (utilizzati per il ripristino della password e il flusso di ripristino MFA).
-
-
Utilizza l'utente root solo in via eccezionale (CIS 1.7).
-
L'utente root dell’account AWS non deve essere utilizzato per le attività giornaliere e nemmeno per quelle amministrative. Effettua il login come utente root solo per eseguire attività AWS che lo richiedono. Tutte le altre azioni devono essere eseguite da altri utenti che assumono i ruoli appropriati.
-
-
Verifica periodicamente che l'accesso all'utente root sia funzionante, in modo da testare le procedure prima di una situazione di emergenza che richieda l'uso delle credenziali dell'utente root.
-
Verifica periodicamente che l'indirizzo e-mail associato all'account e quelli elencati in Alternate Contacts (Contatti alternativi) funzionino. Monitora queste caselle di posta elettronica per le notifiche di sicurezza che potresti ricevere da
<abuse@amazon.com>
. Assicurati inoltre che i numeri di telefono associati all'account siano attivi. -
Prepara procedure di risposta agli incidenti per rispondere all'uso improprio dell'account root. Consulta la AWS Security Incident Response Guide (Guida alla risposta agli incidenti di sicurezza AWS) e alle best practice riportate nella sezione Incident Response (Risposta agli incidenti) del whitepaper Security Pillar (Pilastro di sicurezza) per ulteriori informazioni sulla creazione di una strategia di risposta agli incidenti del tuo Account AWS.
Risorse
Best practice correlate:
Documenti correlati:
-
IAM Best Practices(Best Practice IAM)
-
Amazon GuardDuty – root credential usage alert (Amazon GuardDuty – Avviso sull'utilizzo delle credenziali root)
-
Step-by-step guidance on monitoring for root credential use through CloudTrail (Guida passo-passo sul monitoraggio dell'uso delle credenziali root tramite CloudTrail)
-
Implementazione di funzionalità di break glass access (accesso di emergenza) su AWS
-
Top 10 security items to improve in your Account AWS
(I 10 principali elementi di sicurezza da migliorare nel proprio account AWS) -
Che cosa devo fare se noto un'attività non autorizzata nel mio Account AWS?
Video correlati:
-
Enable AWS adoption at scale with automation and governance
(Consentire l'adozione di AWS su larga scala con l'automazione e la governance) -
Limiting use of AWS root credentials
(Restrizioni nell'uso delle credenziali AWS) da AWS re:inforce 2022 – Security best practices with AWS IAM (Best practice di sicurezza con AWS IAM)
Esempi e laboratori correlati: