Bitbucket di Atlassian è una piattaforma di controllo delle versioni e collaborazione leader del settore, che consente ai team di ospitare facilmente il proprio codice nei repository Git, ottimizzando al contempo i processi di sviluppo in modo più fluido che mai.
Man mano che il codice viene distribuito e modificato, permane il pericolo intrinseco di esporre accidentalmente informazioni sensibili come password, chiavi API e credenziali riservate. Secret Scanning funge da sentinella in questo caso, eseguendo regolarmente la scansione dei repository per rilevare eventuali fughe di informazioni involontarie.
Vi guideremo alla scoperta di Bitbucket Secret Scanning, dalle sue funzionalità di base alla comprensione della sua importanza, al suo utilizzo efficace, al riconoscimento dei suoi limiti e all'uso efficace di SentinelOne. Scopriremo come SentinelOne può diventare il vostro partner e protettore di fiducia per la sicurezza informatica!
Che cos'è Bitbucket Secret Scanning?
Bitbucket Secret Scanning è una funzionalità integrata in Bitbucket che consente di monitorare e valutare le modifiche al codice in tempo reale. Man mano che gli sviluppatori eseguono il commit e inviano le modifiche ai repository, questo meccanismo di scansione analizza i dati alla ricerca di pattern corrispondenti a chiavi API, token OAuth o credenziali di database, mentre gli sviluppatori rendono disponibili le modifiche per la revisione.
Alla base di questa funzione vi sono tecniche avanzate di riconoscimento dei modelli. Non accontentandosi di trovare segreti in testo semplice, lo scanner utilizza euristica, espressioni regolari e strutture segrete note per identificare rapidamente potenziali esposizioni e ridurre al minimo i falsi positivi e i falsi negativi, garantendo un meccanismo di rilevamento efficace.
Bitbucket Secret Scanning fornisce servizi e piattaforme con supporto per identificare in modo efficiente i segreti da più servizi e piattaforme di terze parti, segnalando i potenziali segreti che trova e fornendo strumenti e suggerimenti su come gestire al meglio la loro esposizione, aiutando gli sviluppatori ad agire rapidamente contro le esposizioni nei loro codici e a proteggerli in modo efficiente.
Perché Bitbucket Secret Scanning è importante?
La sicurezza spesso passa in secondo piano rispetto alla funzionalità e alla velocità di consegna nei progetti di sviluppo software, ma anche una minima esposizione di informazioni sensibili potrebbe avere ripercussioni disastrose per le aziende, che vanno da violazioni dei dati a perdite finanziarie. Con Bitbucket Secret Scanning come misura di protezione, il nostro obiettivo è individuare in modo proattivo le vulnerabilità prima che diventino minacce critiche.
Ogni commit o push effettuato senza un meccanismo di scansione di questo tipo è come sparare alla cieca: non si conoscono le potenziali esposizioni che si nascondono all'interno. Bitbucket garantisce che queste fughe accidentali di informazioni vengano immediatamente identificate e risolte per rafforzare i livelli di sicurezza del codice.
Cinque punti chiave di Bitbucket Secret Scanning:
- Sicurezza dei dati: Con la scansione dei segreti, le informazioni sensibili come le chiavi API o le credenziali del database rimarranno protette da accessi non autorizzati e potenziali violazioni dei dati.
- Conformità alla legge sulla privacy dei dati: La protezione dei dati personali è sia una best practice che un obbligo legale per molte aziende. La scansione segreta aiuta le aziende a rispettare le normative sulla protezione dei dati.
- Gestione della reputazione: Le violazioni dei dati possono danneggiare l'affidabilità di un'organizzazione; riconoscendo e correggendo attivamente le esposizioni, le organizzazioni possono preservare l'affidabilità del proprio marchio.
- Efficienza dei costi: Risolvere le vulnerabilità dopo che si sono verificate può essere più costoso che adottare misure proattive come la scansione segreta per ridurre i rischi. La scansione segreta funge da misura efficiente di riduzione dei costi contro future violazioni.
- Produttività degli sviluppatori: Grazie al feedback in tempo reale sulle potenziali vulnerabilità, gli sviluppatori possono risolvere i problemi immediatamente, invece di dover tornare indietro e eseguire il debug in un secondo momento.
Guida al mercato CNAPP
La guida di mercato Gartner per le piattaforme di protezione delle applicazioni cloud-native fornisce informazioni chiave sullo stato del mercato delle CNAPP.
Leggi la guidaCome utilizzare Bitbucket Secret Scanning?
Bitbucket Secret Scanning è uno strumento di sicurezza integrato creato appositamente per rafforzare la protezione del codice. Questo processo prevede la scansione del codice alla ricerca di materiale potenzialmente sensibile come token, password e chiavi private, che potrebbero essere stati accidentalmente incorporati durante lo sviluppo.
Una volta rilevati potenziali segreti nei nuovi commit, vengono immediatamente distribuite notifiche immediate, non solo ai responsabili, ma anche a tutte le parti coinvolte in quella particolare cronologia di commit. Anche senza server di posta configurati, Bitbucket mantiene un registro di controllo che registra i segreti rilevati. questo registro è accessibile dalla sezione di amministrazione e può essere salvato come file sul sistema.
- Personalizzazione dello scanner di segreti
- Risoluzione dei problemi rilevati
- Tracciamento e monitoraggio dei segreti trapelati
- Messa a punto e riduzione dei falsi positivi
1. Personalizzazione dello scanner dei segreti
Per impostazione predefinita, lo scanner dei segreti utilizza modelli predefiniti per eseguire la scansione dei repository. Sebbene questi modelli dovrebbero rilevare in modo efficiente la maggior parte dei segreti generici, è comunque possibile personalizzarne il comportamento, se necessario:
- Modifica delle regole: dalle impostazioni di Sistema, Progetto o Repository, è possibile abilitare la scansione dei segreti e creare o modificare le regole esistenti utilizzando espressioni regolari per i modelli di riga o i modelli di percorso. Quando entrambi i modelli sono specificati contemporaneamente, lo scanner cerca solo i percorsi specificatamente menzionati per quel modello.
- Personalizzazione dell'elenco di autorizzazioni: la personalizzazione dell'elenco di autorizzazioni consente di definire elenchi di autorizzazioni che impediscono a determinate corrispondenze di attivare notifiche, rendendo questo metodo ideale per bypassare modelli che non contengono nulla di segreto ma che vengono erroneamente segnalati dalle regole dello scanner. Proprio come le regole dello scanner, anche le regole dell'elenco di autorizzazioni possono essere personalizzate secondo necessità, ma qualsiasi corrispondenza che si verifica prima di una regola dell'elenco di autorizzazioni ha la precedenza sulle regole di scansione.
- Esclusione dalla scansione: sia a livello globale che di progetto, hai la possibilità di escludere determinati repository dalla scansione dei segreti; qualsiasi nuovo commit da tali repository non sarà soggetto a scansione in questo momento.
2. Risoluzione dei problemi rilevati
Una volta rilevati dallo scanner, tutti i segreti devono essere considerati compromessi e invalidati immediatamente sulla loro piattaforma originale e sostituiti di conseguenza. La loro rimozione dalla cronologia Git non è sufficiente; eventuali residui potrebbero persistere in altri rami, richieste di pull o copie archiviate localmente. Pertanto, per ottenere risultati ottimali, si consiglia di revocarli direttamente alla fonte.
Gli amministratori potrebbero voler modificare le impostazioni dello scanner in caso di falsi positivi; ciò potrebbe comportare la revisione dei modelli regex, la specificazione di percorsi di file specifici per la scansione o la creazione di liste di autorizzazioni che menzionano solo modelli che non appartengono a segreti autentici.
3. Tracciamento e monitoraggio dei segreti trapelati
Bitbucket Secret Scanning fornisce una soluzione di monitoraggio proattivo, registrando i casi in cui vengono rilevati segreti, anche senza server di posta elettronica impostati, garantendo così che nessun caso sfugga al suo sistema.
Bitbucket fornisce un registro di controllo facilmente accessibile tramite la sua interfaccia di amministrazione, semplificando l'individuazione degli avvisi relativi ai segreti rilevati tramite il filtraggio delle voci del registro. Ogni record di rilevamento di un segreto offre dettagli quali l'ID del nodo, il metodo utilizzato e l'ID di commit del suo creatore, nonché informazioni quali il percorso o la regola specifica che ha attivato il rilevamento.
Bitbucket fornisce l'accesso ai dati grezzi tramite il file audit.log situato in $BITBUCKET_HOME/log/audit per coloro che necessitano di un accesso grezzo o che richiedono l'integrazione di strumenti di monitoraggio, rendendo ogni record JSON di avviso facilmente analizzabile o integrabile con strumenti di monitoraggio di terze parti per facilitare l'analisi e la comprensione. Ogni evento di rilevamento di segreti in questo file ha la chiave auditType "Segreto rilevato", che ne facilita l'identificazione.
4. Messa a punto e riduzione dei falsi positivi
Uno degli obiettivi principali dell'utilizzo di Secret Scanning è trovare un equilibrio tra vigilanza e accuratezza, in modo da non perdere nessun segreto autentico e allo stesso tempo non compromettere l'efficienza operativa con troppi falsi positivi che distolgono l'attenzione dalle questioni più urgenti.
Modifica delle regole di Secret Scanning: se lo scanner sembra troppo zelante o impreciso, è possibile modificarne il comportamento di conseguenza. La modifica dei modelli regex spesso aiuta a perfezionarne la sensibilità; modelli regex di grandi dimensioni potrebbero rilevare troppe stringhe come possibili segreti e potrebbero verificarsi falsi positivi a causa di regole di scansione troppo zelanti.
Limitare l'ambito della scansione: se determinati file o directory tendono a generare falsi positivi e non rappresentano vere minacce alla sicurezza, i modelli di percorso offrono la flessibilità necessaria per escluderli dalla scansione.
Utilizzare le liste di autorizzazione: le liste di autorizzazione possono essere uno strumento estremamente efficace per specificare quali modelli non devono essere trattati come segreti. Se un problema continua a presentarsi in modo errato, aggiungerlo a un'allowlist a livello di progetto o repository può garantire che non attivi notifiche in futuro.
Best practice per la gestione dei segreti
In un panorama digitale sempre più interconnesso, la protezione dei dati sensibili è fondamentale. Segreti come chiavi API, password e token svolgono un ruolo essenziale nella protezione delle operazioni di qualsiasi organizzazione: strumenti automatizzati come Bitbucket Secret Scanning sono particolarmente efficaci nel rilevare le fughe di informazioni, mentre le pratiche fondamentali di gestione dei segreti rafforzano la sicurezza.
- Centralizzare la gestione dei segreti
- Ruotare regolarmente i segreti
- Limitare l'accesso e utilizzare autorizzazioni basate sui ruoli
- Implementare l'autenticazione a più fattori (MFA)
- Controllare e monitorare l'accesso ai segreti
1. Centralizzare la gestione dei segreti
La centralizzazione della gestione dei segreti offre alle organizzazioni un modo metodico e coerente per gestire le informazioni sensibili. Con un'unica fonte centrale di verità, il monitoraggio, la gestione e l'aggiornamento dei segreti diventano molto più semplici, riducendo in modo significativo gli errori o le sviste che altrimenti potrebbero verificarsi. I sistemi centralizzati offrono molte strategie collaudate che migliorano la sicurezza, come i controlli di accesso basati sui ruoli, i programmi di rotazione dei segreti e i registri di controllo dettagliati, che contribuiscono tutti a rafforzare la sicurezza dei segreti.
Al contrario, i sistemi decentralizzati potrebbero causare ridondanze, sviste e incoerenze nella gestione di materiali sensibili. Inoltre, man mano che la gestione diventa più frammentata, diventa sempre più difficile applicare in modo coerente gli standard di sicurezza nei vari siti di archiviazione delle informazioni.
2. Ruotare regolarmente i segreti
La rotazione periodica dei segreti è una componente integrante della sicurezza informatica, che aiuta le organizzazioni a garantire che, anche se uno o più segreti vengono compromessi, la loro durata e il potenziale di uso improprio siano limitati. Gli strumenti di rotazione automatizzano ulteriormente questo processo, eliminando al contempo gli oneri amministrativi e gli errori umani, assicurando che i segreti vengano aggiornati a intervalli regolari in modo che gli enti malintenzionati abbiano meno possibilità di sfruttarli anche se ne ottengono l'accesso.
3. Limitare l'accesso e utilizzare autorizzazioni basate sui ruoli
Aderire al Principio del privilegio minimo (PoLP) può ridurre significativamente le potenziali vulnerabilità di sicurezza. Questa strategia prevede di concedere l'accesso solo a coloro che ne hanno bisogno (in base al loro ruolo). Limitando l'accesso alle informazioni o ai segreti, si riducono notevolmente le fughe di notizie involontarie o gli abusi intenzionali, diminuendo in modo significativo i rischi e le vulnerabilità associati alla divulgazione di segreti o all'uso improprio da parte di terzi non autorizzati.
Tuttavia, non è sufficiente impostare i permessi; è necessario effettuare revisioni e adeguamenti regolari per garantire che siano in linea con i cambiamenti o l'evoluzione dei ruoli, eliminando così i punti di accesso che altrimenti diventerebbero vulnerabili e rafforzando ulteriormente la sicurezza dei segreti.
4. Implementare l'autenticazione a più fattori (MFA)
L'autenticazione tramite password a volte può non essere sufficiente a garantire la sicurezza; l'aggiunta di un ulteriore livello tramite autenticazione a più fattori aumenta significativamente questo ostacolo e garantisce che, anche se gli autori di attacchi malintenzionati superano il livello di difesa iniziale, devono comunque affrontare un'altra barriera di autenticazione, offrendo maggiore tranquillità e livelli aggiuntivi di protezione contro gli aggressori.
Il secondo livello comprende in genere qualcosa che l'utente possiede o eredita, come il proprio telefono, oppure qualcosa di intrinseco, come l'impronta digitale o il riconoscimento facciale. Creando contemporaneamente due barriere di protezione, diventa sempre più difficile per gli individui non autorizzati ottenere l'accesso se uno dei segreti viene compromesso.
5. Controllare e monitorare l'accesso ai segreti
Monitorare chi accede a quali segreti, in quale momento e perché può fornire informazioni preziose sullo stato di salute del sistema. Il controllo e il monitoraggio regolari dell'accesso ai segreti aiutano a identificare eventuali anomalie, fornendo segnali di allarme precoci in caso di violazioni o uso improprio di informazioni sensibili.
I registri deliberati forniscono alle organizzazioni un deterrente efficace contro le discrepanze, consentendo loro al contempo di agire rapidamente in caso di discrepanze. Una traccia accessibile delle attività consente di rintracciare facilmente i problemi e i responsabili per un'azione correttiva più efficiente. Inoltre, la loro semplice esistenza può dissuadere gli attori interni da qualsiasi comportamento scorretto all'interno dell'organizzazione.
Sfide e limiti della scansione segreta
- Falsi positivi e falsi negativi
- Problemi di scalabilità
- Integrazione con ambienti diversi
- Manutenzione e aggiornamenti
1. Falsi positivi e falsi negativi
Falsi positivi e falsi negativi: una delle principali sfide associate alla scansione dei segreti è rappresentata dai falsi positivi, ovvero quando un sistema automatico contrassegna erroneamente un oggetto come riservato quando in realtà non lo è. Tale errata identificazione può causare l'attivazione di allarmi inutili e lo spreco di risorse investigative, vanificando gli sforzi compiuti per risolvere il problema.
Al contrario, i falsi negativi sono altrettanto dannosi quando i segreti autentici non vengono rilevati durante i processi di scansione, creando una falsa sicurezza per lunghi periodi e lasciando la vostra organizzazione esposta a compromissioni e sfruttamenti dannosi da parte degli aggressori.
2. Problemi di scalabilità
Man mano che le organizzazioni si espandono e i loro repository, progetti e codebase si moltiplicano, la capacità di scalabilità dei sistemi di scansione dei segreti diventa sempre più un problema. Un sistema progettato per configurazioni più piccole potrebbe avere difficoltà a mantenere risultati accurati con la rapida crescita dei volumi di dati, portando a tempi di scansione più lunghi, potenziali sovraccarichi o tempi di inattività del sistema con conseguente aumento dei tempi di scansione rispetto a quanto inizialmente previsto, se la crescita supera le aspettative di efficienza e accuratezza.
Pertanto, gli strumenti di scansione dei segreti devono essere costruiti tenendo conto di queste considerazioni per garantire l'affidabilità a lungo termine.
3. Integrazione con ambienti diversi
Gli ambienti tecnologici moderni sono estremamente diversificati e consistono in varie piattaforme, linguaggi e strumenti che devono funzionare in modo armonioso insieme. Garantire che uno strumento di scansione dei segreti si integri perfettamente in questi vari ecosistemi può rappresentare una sfida significativa; in caso contrario, potrebbero verificarsi lacune nella copertura della scansione che aumentano i rischi di vulnerabilità. Inoltre, integrazioni complesse aumentano i costi amministrativi, poiché richiedono regolari adeguamenti di manutenzione per mantenere efficace la scansione su tutte le piattaforme.
4. Manutenzione e aggiornamenti
A causa della rapida evoluzione tecnologica, gli strumenti di scansione dei segreti necessitano di frequenti aggiornamenti per rimanere efficaci. Gli aggiornamenti possono includere la risposta a nuove pratiche di codifica, minacce emergenti o cambiamenti negli stack tecnologici, ma farlo regolarmente richiede risorse, poiché possono verificarsi problemi post-aggiornamento che ne compromettono la funzionalità; le organizzazioni devono padroneggiare l'implementazione degli aggiornamenti in modo da non influire sulle operazioni in corso, al fine di rimanere conformi.
Vedere SentinelOne in azione
Scoprite come la sicurezza del cloud basata sull'intelligenza artificiale può proteggere la vostra organizzazione con una demo individuale con un esperto dei prodotti SentinelOne.
Richiedi una demoConclusione
Ora sapete come funziona lo scanner segreto di BitBucket. La scansione dei vostri segreti è una parte importante per mantenere la vostra organizzazione al sicuro. Mantiene gli account degli utenti al sicuro e impedisce che vengano presi in ostaggio dai nemici. Potete usare lo scanner segreto per gestire i segreti da più servizi e piattaforme di terze parti. Vi aiuterà anche a ruotare regolarmente i segreti e a mantenere aggiornate le vostre credenziali sensibili. Implementate l'autenticazione a più fattori (MFA) e utilizzate un gestore di password per una maggiore tranquillità.
"Domande frequenti sulla scansione dei segreti di Bitbucket
Bitbucket Secret Scanning controlla i tuoi repository alla ricerca di credenziali esposte (chiavi API, password, token, certificati) ogni volta che viene eseguito il push del codice. Utilizza il pattern matching (espressioni regolari, euristica) per segnalare qualsiasi cosa che assomigli a un segreto.
Quando viene rilevata una corrispondenza, Bitbucket registra un avviso e avvisa i committers, in modo che tu possa agire prima che tali segreti vengano utilizzati in modo improprio.
I segreti esposti nel codice sorgente consentono agli aggressori di muoversi lateralmente o di aumentare rapidamente i propri privilegi. La scansione rileva gli errori in anticipo, prima che il codice venga unito, in modo che i segreti non rimangano nella cronologia dei commit, dove chiunque abbia accesso al repository può vederli. Ciò riduce il raggio d'azione di una fuga di informazioni e garantisce che le credenziali sensibili non finiscano mai in produzione o nei backup.
Bitbucket esegue la scansione dei diff e dei commit completi utilizzando regole predefinite e personalizzate. Applica espressioni regolari integrate e strutture segrete note a ogni modifica inviata. Quando sono impostati sia un modello di riga che un modello di percorso, limita i controlli a file specifici. Le corrispondenze attivano voci di registro di controllo e inviano e-mail agli autori, ai committers e ai pushers.
Vai su Amministrazione → Sistema (o Progetto/Repository) → Scansione dei segreti, quindi crea o modifica le regole. Definisci un nome, un'espressione regolare per il modello di riga e, facoltativamente, un'espressione regolare per il modello di percorso. Puoi anche impostare elenchi di autorizzazioni per ignorare i falsi positivi noti ed escludere interi repository. Le modifiche hanno effetto immediato per i nuovi push.
È possibile individuare le credenziali trapelate prima che raggiungano la produzione o i backup. Gli avvisi in tempo reale garantiscono che gli sviluppatori risolvano rapidamente i problemi, mentre i registri di audit conservano una traccia di ogni rilevamento. Le regole personalizzate aiutano a individuare i formati dei token interni insieme ai modelli pubblici. Nel complesso, mantiene il codice al sicuro senza bloccare inutilmente i flussi di lavoro degli sviluppatori.
Sì. Oltre ai modelli predefiniti, puoi aggiungere regole regex personalizzate e liste di autorizzazioni illimitate a livello globale, di progetto o di repository. Sei tu a decidere quali percorsi di file scansionare e quali modelli ignorare. Questo ti consente di ottimizzare il rilevamento, riducendo i falsi positivi e coprendo i formati segreti interni.
Tutti i rilevamenti vengono visualizzati nel registro di controllo di Bitbucket ($BITBUCKET_HOME/log/audit) e nella sezione di controllo dell'interfaccia utente. Le notifiche e-mail vengono inviate a tutte le persone coinvolte nel commit. Gli amministratori possono cercare nel registro di controllo le voci "segreto rilevato", esportare i registri per la conformità e rivedere le fughe di informazioni storiche per garantire che siano state intraprese misure correttive (rotazione o revoca).
Abilita la scansione per impostazione predefinita e attiva la protezione push per bloccare le violazioni. Rivedi e aggiorna regolarmente le regole regex e gli elenchi di autorizzazioni per bilanciare copertura e rumore. Automatizza la rotazione dei segreti per tutte le credenziali contrassegnate. Combina la scansione con i controlli CI/CD in modo che le richieste di pull non vengano unite fino a quando i segreti non vengono rimossi o mascherati.
SentinelOne si integra con Bitbucket per centralizzare il rilevamento e la risposta. Quando viene rilevata una corrispondenza segreta, la piattaforma Singularity di SentinelOne acquisisce l'avviso, lo correla con l'attività dell'endpoint o del cloud e può attivare automaticamente playbook di correzione, come l'applicazione della rotazione delle chiavi segrete o la messa in quarantena dei rami di codice interessati, per contenere i rischi più rapidamente.
