Cos’è la proliferazione dei segreti?

La proliferazione dei segreti è la diffusione incontrollata di segreti, incluse chiavi API, password e chiavi crittografiche, attraverso l’infrastruttura, i repository di codice e i canali di comunicazione di un’organizzazione. Invece di risiedere in un gestore centralizzato di segreti, queste credenziali vengono incorporate nel codice sorgente, condivise nelle app di messaggistica e sparse tra gli endpoint. Il risultato è un inventario incompleto e largamente invisibile di segreti che i team di sicurezza non possono monitorare, ruotare o revocare efficacemente.

Mentre le organizzazioni crescono, il numero di segreti aumenta rapidamente, così come il rischio di attacchi basati su credenziali e vulnerabilità della catena di approvvigionamento.

Che cos'è un segreto?

Un segreto è una credenziale non umana che applicazioni, servizi e sistemi utilizzano per autenticarsi tra loro. Esempi comuni includono chiavi API, stringhe di connessione al database, chiavi di crittografia, token di accesso, chiavi SSH e certificati digitali. Poiché un singolo segreto può sbloccare sistemi e dati sensibili, i segreti devono essere archiviati e controllati in modo molto più rigoroso rispetto agli identificatori, come i nomi utente, che i team condividono liberamente.

Come avviene la proliferazione incontrollata dei segreti

La proliferazione dei segreti deriva solitamente dalla creazione e distribuzione di credenziali sensibili senza un monitoraggio o un controllo costanti.

Creazione e crescita delle credenziali

Gli ambienti moderni si basano sia su utenti umani che su identità non umane (NHI), inclusi account di servizio, bot e carichi di lavoro delle applicazioni, che si autenticano utilizzando segreti come chiavi API e token. Man mano che le organizzazioni adottano architetture cloud-native, il numero di segreti cresce rapidamente. Ogni nuovo sistema, carico di lavoro e integrazione richiede l'autenticazione, ampliando la superficie di attacco e aumentando la probabilità di segreti non gestiti. Man mano che le organizzazioni crescono e si adattano alle identità delle macchine, si trovano inevitabilmente ad affrontare il rischio di una proliferazione di segreti.

Gestione e condivisione incoerenti dei segreti

Anche con politiche di sicurezza in atto, sviluppatori e team gestiscono le credenziali in modo incoerente. Uno sviluppatore può memorizzare le credenziali localmente, mentre un altro può codificarle direttamente in codice sorgente o condividerle tramite strumenti di messaggistica. Quando le procedure sicure risultano meno pratiche del semplice copia e incolla delle credenziali, gli utenti tendono generalmente a privilegiare la velocità rispetto alla sicurezza. Se gli utenti di più team adottano lo stesso approccio per centinaia di servizi nel corso del tempo, tale incoerenza porta a una distribuzione diffusa e ingestibile dei segreti.

Mancanza di gestione centralizzata dei segreti

Senza una gestione centralizzata dei segreti, le organizzazioni non possono tracciare con precisione dove sono archiviati i segreti, chi vi ha accesso o come vengono utilizzati. Questa mancanza di visibilità rende difficile ruotare o revocare le credenziali dopo un incidente di sicurezza o la partenza di un dipendente, costringendo i team di sicurezza a rispondere in modo reattivo anziché governare in modo proattivo i propri segreti.

Gestione inadeguata del ciclo di vita

In molti casi, i segreti vengono creati per un uso istantaneo ma non vengono mantenuti o rimossi correttamente una volta completato un progetto. Le credenziali non utilizzate o duplicate possono persistere su più sistemi, aumentando il rischio nel tempo. Se i segreti vecchi o inutilizzati non vengono ruotati o rimossi, l’accesso a codici sorgente, repository o file di configurazione ormai dimenticati potrebbe rimanere attivo a tempo indeterminato. Senza politiche chiare sul ciclo di vita, le organizzazioni finiscono per accumulare segreti obsoleti che rimangono accessibili ma non gestiti, favorendo così la diffusione incontrollata dei segreti tra i vari sistemi.

Avvisi di proliferazione dei segreti

Se ti suona familiare una di queste situazioni, probabilmente hai un problema di proliferazione dei segreti:

  • I segreti compaiono in più di un posto e nessuno può dire quante copie esistano.
  • Le credenziali vengono condivise tramite chat, e-mail o unità condivise.
  • I segreti sono codificati nel codice sorgente, nei file di configurazione o nelle pipeline CI/CD.
  • Solo pochi dipendenti sanno dove sono archiviate determinate credenziali.
  • I vecchi progetti e gli ex dipendenti hanno ancora credenziali attive.
  • Nessuno può produrre su richiesta un inventario completo e aggiornato dei segreti dell'organizzazione.

Perché l’espansione incontrollata dei segreti è pericolosa

Quando i segreti vengono ampiamente distribuiti senza supervisione, le ricadute toccano ogni parte di un’organizzazione. Le credenziali compromesse sono costantemente una delle cause più comuni di violazione dei dati, ed è esattamente per questo che i segreti sparsi e non gestiti sono così pericolosi. Ecco i principali rischi legati alla gestione errata dei segreti:

  • Fughe di dati: i segreti sparsi tra sistemi e strumenti hanno molte più probabilità di emergere in una fuga di dati. Un singolo segreto esposto può consentire l'accesso a dati sensibili e sistemi critici.
  • Violazioni dei sistemi: i segreti gestiti male possono essere compromessi e poi usati per muoversi lateralmente attraverso l’infrastruttura e per aumentare i privilegi.
  • Riduzione della produttività del team: i team di sicurezza e DevOps dedicano tempo a individuare dove sono conservati i segreti e a gestire credenziali distribuite in più sistemi, invece di occuparsi di attività a più alta priorità.
  • Conformità e conseguenze economiche: una gestione inadeguata dei segreti aziendali che porta a una violazione può comportare sanzioni normative, costi per la gestione degli incidenti e responsabilità legali. Ai sensi di PCI DSS, HIPAA o SOC 2, l’impossibilità di dimostrare un accesso controllato alle credenziali costituisce di per sé una non conformità, indipendentemente dal fatto che si sia verificata o meno una violazione della sicurezza.
  • Danni alla reputazione: una violazione riconducibile a segreti gestiti in modo errato può provocare danni duraturi, soprattutto quando i clienti affidano dati sensibili a un’organizzazione. La perdita della fiducia e delle partnership può protrarsi per anni dopo l’incidente.

Esempi comuni di proliferazione dei segreti

La proliferazione dei segreti tende a manifestarsi in questi modi:

  • Segreti codificati nel codice sorgente: gli sviluppatori incorporano i segreti nel codice che viene inviato a un repository. Nei repository pubblici, questa esposizione è immediata e permanente, a meno che il segreto non venga ruotato. Nei repository privati, amplia il raggio di esplosione di qualsiasi compromissione del repository. La scansione dei segreti è in grado di individuare queste esposizioni, ma i segreti già indicizzati dai motori di ricerca o da scanner di terze parti rimangono a rischio anche dopo la cancellazione.
  • Chiavi API memorizzate in più posizioni: dato che i team copiano le chiavi API nei file di configurazione invece di inserirle in fase di esecuzione, lo stesso segreto finisce in più posizioni. Senza una gestione dei segreti, nessuno sa dove si trova ogni copia, quindi nessuno può ruotarla o revocare l’accesso.
  • Segreti rivelati nelle pipeline CI/CD: i segreti incorporati nei file di configurazione, nei log di build o nelle integrazioni CI di terze parti possono essere visibili a chiunque abbia accesso all’esecuzione della pipeline, anche senza accesso diretto al codice.
  • Credenziali dimenticate: i segreti legati a vecchi progetti o a ex dipendenti spesso restano attivi molto tempo dopo che il loro scopo è terminato, rimanendo accessibili ma non attivamente monitorati.
  • Duplicazione dei segreti tra i sistemi: lo stesso segreto replicato tra team o ambienti rende impossibile un controllo coerente degli accessi.
  • Metodi di condivisione non sicuri: i segreti inviati tramite app di messaggistica o e-mail non possono essere tracciati in modo affidabile; non è possibile sapere chi li abbia visti, dove siano finiti o come siano stati archiviati.

Come ridurre il rischio di proliferazione dei segreti

Ridurre la proliferazione dei segreti significa centralizzare il modo in cui i segreti vengono archiviati, consultati e gestiti. Un gestore dei segreti offre alle organizzazioni controllo e visibilità sul loro intero inventario di segreti.

Centralizza i segreti in una cassaforte sicura

Anziché lasciare che le credenziali si diffondano tra file e archivi, archivia ogni segreto in un gestore di segreti dedicato. Una cassaforte centralizzata e crittografata diventa l'unica fonte di verità per archiviare, accedere e distribuire le credenziali.

Applica l’accesso con privilegi minimi

Non tutti hanno bisogno di accedere a tutti i segreti. L'accesso con privilegi minimi concede a ciascuna identità solo i segreti di cui ha bisogno e solo per il tempo necessario, in modo che una credenziale compromessa causi molti meno danni.

Cerca i segreti già presenti negli archivi

La centralizzazione funziona solo se prima elimini la proliferazione esistente. Gli strumenti di scansione dei segreti individuano credenziali già presenti in repository, file di configurazione e artefatti di build. Esegui una scansione iniziale prima di dare per scontato che i tuoi segreti siano al sicuro, quindi imposta una scansione continua per individuare nuove esposizioni.

Automatizza la rotazione delle credenziali

La rotazione automatizzata mantiene aggiornati i segreti senza processi manuali che non sono scalabili. Riduce le finestre di esposizione ed elimina l’onere di tenere traccia della rotazione su centinaia di credenziali.

Migliora visibilità e tracciabilità

Mantieni un inventario in tempo reale dei segreti, compreso dove sono archiviati e come vengono utilizzati. Questa visibilità consente ai team di rilevare comportamenti sospetti, individuare segreti orfani e rispondere rapidamente agli incidenti.

Definisci e applica politiche del ciclo di vita

Stabilisci regole chiare su quando creare, ruotare e ritirare i segreti e automatizza l'applicazione delle regole, quando possibile. Un segreto che non è più necessario dovrebbe essere revocato, non ignorato.

Il modo più efficace per fare tutto questo su larga scala è utilizzare un gestore di segreti dedicato. Keeper Secrets Manager aiuta le organizzazioni a centralizzare la gestione dei segreti archiviando ogni segreto in un'unica posizione crittografata, in modo che i team possano monitorarli e sottoporli a verifiche da un'unica fonte attendibile anziché cercare credenziali sparse nella propria infrastruttura.

Nega il consenso sui cookieLa tua privacy è importante

Utilizziamo i cookie sul nostro sito per offrirti la migliore esperienza di navigazione, pubblicare annunci personalizzati sui nostri prodotti e contenuti e analizzare il traffico del sito web. Per ulteriori informazioni, consulta la nostra Informativa sulla privacy.

Registratevi per una prova gratuita

Acquista ora