Le organizzazioni utilizzano sempre più spesso identità non umane per automatizzare i processi aziendali e i workflow chiave. Queste identità possono includere account di servizio, pipeline di integrazione continua e consegna continua (CI/CD), container, microservizi e strumenti di orchestrazione. Possono anche includere la robotic process automation (RPA) (bot software che imitano azioni umane) e, più recentemente, agenti di AI.
Analogamente agli utenti umani, le entità non umane necessitano di credenziali, o "segreti", per autenticarsi a sistemi e servizi e accedere alle risorse organizzative, spesso con privilegi elevati. Ad esempio, un processo di backup automatizzato potrebbe leggere file riservati e modificare le impostazioni di sistema.
Per gli hacker, questi account non umani privilegiati sono obiettivi di alto valore. Consentono agli attori delle minacce di abusare dei diritti di accesso per rubare dati e danneggiare sistemi critici, tutto questo mentre eludono il rilevamento. Secondo l'X-Force Threat Intelligence Index di IBM, l'hijacking di account validi è il secondo vettore di attacco informatico più comune, rappresentando il 32% di tutti gli incidenti a cui X-Force ha risposto l'anno scorso.
I sistemi di gestione dei segreti aiutano a combattere queste minacce informatiche, consentendo alle organizzazioni di creare, controllare e proteggere i segreti utilizzati dalle entità non umane per accedere alle risorse IT. Con gli strumenti di gestione dei segreti, i team IT possono proteggere le credenziali non umane durante l'intero ciclo di vita, semplificando i workflow automatizzati e prevenendo violazioni dei dati, manomissioni, furti e altri accessi non autorizzati.
Un segreto è una credenziale digitale contenuta in un'applicazione o in un servizio, e consente agli utenti non umani di comunicare ed eseguire azioni su un servizio, database, applicazione o altra risorsa IT. I segreti aiutano le organizzazioni a rafforzare il loro livello di sicurezza garantendo che solo gli utenti autorizzati abbiano accesso a dati e sistemi sensibili.
Alcuni esempi di segreti includono:
Unisciti ai leader della sicurezza che si affidano alla newsletter Think per ricevere notizie selezionate su AI, cybersecurity, dati e automazione. Impara velocemente da tutorial e articoli informativi consegnati direttamente nella tua casella di posta. Leggi l'Informativa sulla privacy IBM.
La gestione dei segreti è una soluzione di sicurezza critica che aiuta le organizzazioni a memorizzare, controllare e ruotare in modo sicuro le credenziali sensibili e altri segreti, come password, chiavi API e token.
È una delle quattro funzionalità principali della gestione degli accessi privilegiati (PAM), un sottoinsieme della gestione delle identità e degli accessi (IAM) che si concentra sulla protezione di account e utenti privilegiati.
Le altre tre funzionalità di PAM includono:
La gestione dei segreti è importante per la metodologia DevOps, che enfatizza lo sviluppo e la distribuzione automatizzati e continui del software.
I team DevOps spesso utilizzano molteplici strumenti di gestione della configurazione o orchestrazione per gestire interi ecosistemi digitali, workflow e endpoint. Spesso gli strumenti utilizzano automazione e script che richiedono l'accesso a informazioni segrete per essere avviati. Senza un servizio di gestione delle chiavi segrete di livello aziendale, l'uso casuale delle chiavi segrete potrebbe aumentare la vulnerabilità del sistema.
Molte organizzazioni integrano le funzioni di gestione dei segreti nella pipeline CI/CD. Questo aiuta a garantire che tutte le parti mobili, come sviluppatori, strumenti e processi automatizzati, abbiano un accesso sicuro ai sistemi sensibili di cui hanno bisogno, quando ne hanno bisogno.
La gestione dei segreti è considerata una componente fondamentale di DevSecOps, un'evoluzione della metodologia DevOps che integra e automatizza continuamente la sicurezza durante tutto il ciclo di vita DevOps.
Il processo di gestione dei segreti si basa in genere su strumenti di gestione dei segreti. Questi strumenti, che possono essere implementati on-premise o come cloud service, possono aiutare a centralizzare, automatizzare e semplificare la creazione, l'uso, la rotazione e la protezione dei segreti.
Sono disponibili sia soluzioni commerciali che open source per la gestione dei segreti. Le opzioni open-source includono Infisical mentre le opzioni commerciali includono CyberArk Conjur (che ha anch'esso un'edizione open-source) e HashiCorp Vault (di HashiCorp, un'azienda IBM).
Alcune funzionalità comuni degli strumenti di gestione dei segreti includono:
Con un servizio di gestione dei segreti di livello aziendale, le organizzazioni possono gestire diversi tipi di segreti in un unico pannello di controllo.
Invece di lasciare che i singoli utenti gestiscano i segreti in piccoli silos, le soluzioni di gestione dei segreti possono memorizzare i segreti in una posizione centrale e sicura chiamata "cassaforte dei segreti".
Quando un utente autorizzato ha bisogno di accedere a un sistema sensibile, può ottenere il segreto corrispondente dalla cassaforte. Lo strumento di gestione dei segreti può verificare e autorizzare automaticamente la richiesta e rilasciare il segreto necessario per l'autenticazione del workflow.
La standardizzazione aiuta a prevenire la dispersione dei segreti, che si verifica quando i segreti vengono memorizzati in vari punti dell'organizzazione, spesso codificati in applicazioni o come testo semplice in documenti condivisi. La dispersione dei segreti rende difficile proteggerli dai malintenzionati e tenere traccia del modo in cui vengono utilizzati.
I segreti creati in un secrets manager possono essere statici o dinamici. Un segreto statico è un segreto che rimane valido per un lungo periodo di tempo, in genere fino a quando non viene modificato manualmente o raggiunge una data di scadenza predeterminata.
Un segreto dinamico viene invece creato dal secrets manager su richiesta, nel momento in cui serve. I segreti dinamici scadono abbastanza rapidamente o possono essere monouso.
Un caso d'uso per un segreto dinamico potrebbe essere proteggere una risorsa riservata come un database o un ambiente cloud come AWS o Microsoft Azure, generando dinamicamente chiavi API ogni volta che si accede o si legge quella risorsa. In questo modo si garantisce che gli aggressori non possano rubare e riutilizzare le chiavi API.
Molti secrets manager possono anche automatizzare la rotazione dei segreti, ossia l'atto di cambiare regolarmente i segreti. La rotazione può essere automatizzata su base programmatica o su richiesta, senza la necessità di riallocare o interrompere le applicazioni. Il time-to-live (TTL) o la durata del leasing possono essere definiti per un segreto al momento della sua creazione, per ridurre il tempo di esistenza del segreto.
I segreti possono essere concessi solo a entità o gruppi specifici per organizzare e limitare l'accesso. Questo viene spesso concesso utilizzando il principio del privilegio minimo, il che significa che a ogni processo viene concesso solo il set di privilegi più restrittivo necessario per eseguire un'attività. Gli utenti possono accedere solo ai segreti necessari per svolgere le attività autorizzate.
Le architetture zero-trust ("mai fidarsi, verifica sempre") spesso regolano l'accesso ai sistemi di gestione dei segreti. Questo aiuta a garantire che ogni richiesta di segreto sia autenticata e autorizzata, anche se proviene dall'interno della rete.
Molti secret manager possono tenere traccia del modo in cui utenti e applicazioni interagiscono e utilizzare i segreti per verificare che i segreti vengano gestiti in modo appropriato durante il loro ciclo di vita. Questo consente all'organizzazione di condurre un monitoraggio quasi in tempo reale degli eventi di accesso ai segreti, autenticazioni e autorizzazioni al secret manager.
I secret manager possono negare rapidamente i tentativi non autorizzati di visualizzare o utilizzare i segreti e revocare l'accesso quando necessario. Questo può aiutare a facilitare una correzione più rapida prima che hacker, minacce interne e altri malintenzionati possano causare danni.
Un potente strumento di automazione dei segreti manterrà registri di audit dettagliati che tracciano gli eventi di autenticazione degli utenti e di accesso segreto.
Il monitoraggio dei segreti è spesso molto più facile da realizzare una volta che un'organizzazione inizia a utilizzare strumenti di automazione dinamica dei segreti. Questi percorsi di audit dettagliati aiutano a convalidare l'uso approvato dei segreti o a rilevare e rintracciare potenziali minacce.
Oltre all'utilizzo di soluzioni per la gestione dei segreti, molte organizzazioni seguono pratiche fondamentali comuni nei loro processi di gestione dei segreti, come:
Man mano che gli ecosistemi IT diventano più complessi, la gestione dei segreti diventa sempre più difficile da controllare in modo efficace. Alcune sfide comuni per la gestione dei segreti possono includere:
Gli ecosistemi decentralizzati in cui amministratori, sviluppatori e utenti gestiscono i propri segreti separatamente possono introdurre rischi, poiché le lacune di sicurezza e l'uso dei segreti potrebbero non essere adeguatamente monitorati o verificati.
Le soluzioni centralizzate di gestione dei segreti possono offrire alle organizzazioni maggiore visibilità e controllo sui segreti.
Quando le password o altri segreti sono incorporati come testo semplice nel codice sorgente o negli script, gli aggressori possono scoprirli facilmente e utilizzarli per accedere a informazioni sensibili.
I segreti hardcoded possono apparire in molti luoghi, inclusi toolchain CI/CD, repository di codice, dispositivi Internet of Things (IoT ), piattaforme di orchestrazione container come Kubernetes, application server, scanner di vulnerabilità e piattaforme di robotic process automation (RPA).
La rotazione regolare dei segreti aiuta a prevenire furti e abusi, ma senza un sistema di gestione dei segreti può essere incoerente o inefficace. Se un segreto rimane invariato per troppo tempo, un hacker potrebbe essere in grado di sbloccarlo andando per tentativi o con un attacco brute force.
Più a lungo viene utilizzata una password, più utenti hanno accesso, maggiore è la possibilità di una perdita involontaria.
La crescita dei sistemi IT può portare a una dispersione in cui i segreti vengono diffusi in molte parti isolate del sistema. La dispersione dei segreti è particolarmente preoccupante negli ecosistemi multicloud ibridi, in cui le organizzazioni combinano ambienti cloud pubblici e privati forniti da più provider di cloud.
Le organizzazioni possono avere migliaia, se non addirittura milioni, di segreti in tutte le loro applicazioni cloud-native, contenitori, microservizi e altre risorse IT. Questa proliferazione crea un enorme carico di sicurezza e amplia la potenziale superficie di attacco.
Tra i servizi, la visibilità potrebbe essere limitata e la gestione dei segreti può diventare rapidamente ingombrante se tracciata manualmente o da sistemi eterogenei. La mancanza di un servizio centralizzato di gestione dei segreti rende più difficile, se non impossibile, l'applicazione di una corretta igiene dei segreti.
Quando un'organizzazione non dispone di un sistema di gestione dei segreti, questi possono essere condivisi manualmente, ad esempio tramite e-mail o SMS, dove gli attori delle minacce possono intercettarli.