Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Sicurezza DevOps include i controlli correlati alla progettazione e alle operazioni di sicurezza nei processi DevOps, inclusa la distribuzione di controlli di sicurezza critici (ad esempio test di sicurezza statici e gestione delle vulnerabilità) prima della fase di distribuzione per garantire la sicurezza durante il processo DevOps. Include anche argomenti comuni, ad esempio la modellazione delle minacce e la sicurezza dell'approvvigionamento software.
DS-1: eseguire la modellazione delle minacce
ID dei controlli CIS v8 | NIST SP 800-53 r4 ID | ID PCI-DSS v3.2.1 |
---|---|---|
16.10, 16.14 | SA-15 | 6.5, 12.2 |
Principio di sicurezza: eseguire la modellazione delle minacce per identificare le potenziali minacce ed enumerare i controlli di mitigazione. Verificare che la modellazione delle minacce soddisfi i seguenti scopi:
- Proteggere le applicazioni e i servizi nella fase di runtime di produzione.
- Proteggere gli artefatti, la pipeline CI/CD sottostante e altri ambienti di strumenti usati per la compilazione, il test e la distribuzione. La modellazione delle minacce deve includere almeno gli aspetti seguenti:
- Definire i requisiti di sicurezza dell'applicazione. Assicurarsi che questi requisiti siano adeguatamente risolti nella modellazione delle minacce.
- Analizzare i componenti dell'applicazione, le connessioni dati e la relativa relazione. Assicurarsi che questa analisi includa anche le connessioni upstream e downstream all'esterno dell'ambito dell'applicazione.
- Elencare le potenziali minacce e i vettori di attacco a cui possono essere esposti i componenti dell'applicazione, le connessioni dati e i servizi upstream e downstream.
- Identificare i controlli di sicurezza applicabili che possono essere usati per attenuare le minacce enumerate e identificare eventuali lacune nei controlli (ad esempio, vulnerabilità di sicurezza) che potrebbero richiedere piani di trattamento aggiuntivi.
- Enumerare e progettare i controlli che possono attenuare le vulnerabilità identificate.
Linee guida di Azure: usare strumenti di modellazione delle minacce, ad esempio lo strumento di modellazione delle minacce Microsoft, con il modello di modello di minacce di Azure incorporato per guidare il processo di modellazione delle minacce. Usare il modello STRIDE per enumerare le minacce sia interne che esterne e identificare i controlli applicabili. Assicurarsi che il processo di modellazione delle minacce includa gli scenari di minaccia nel processo DevOps, ad esempio l'inserimento di codice dannoso tramite un repository di artefatti non sicuri con criteri di controllo di accesso non configurati correttamente.
Se l'utilizzo di uno strumento di modellazione delle minacce non è applicabile, è necessario utilizzare almeno un processo di modellazione delle minacce basato su questionari per identificare le minacce.
Assicurarsi che i risultati della modellazione o dell'analisi delle minacce vengano registrati e aggiornati quando si verifica una modifica importante dell'impatto sulla sicurezza nell'applicazione o nel panorama delle minacce.
Implementazione di Azure e contesto aggiuntivo:
- Panoramica della modellazione delle minacce
- Analisi delle minacce dell'applicazione (incluso STRIDE + metodo basato su questionario)
- Modello di Azure - Stencil del modello di minaccia di Microsoft Security
Indicazioni AWS: usare strumenti di modellazione delle minacce, ad esempio lo strumento di modellazione delle minacce Microsoft, con il modello di modello di minaccia di Azure incorporato per guidare il processo di modellazione delle minacce. Usare il modello STRIDE per enumerare le minacce sia interne che esterne e identificare i controlli applicabili. Assicurarsi che il processo di modellazione delle minacce includa gli scenari di minaccia nel processo DevOps, ad esempio l'inserimento di codice dannoso tramite un repository di artefatti non sicuri con criteri di controllo di accesso non configurati correttamente.
Se l'utilizzo di uno strumento di modellazione delle minacce non è applicabile, è necessario utilizzare almeno un processo di modellazione delle minacce basato su questionari per identificare le minacce.
Assicurarsi che i risultati della modellazione o dell'analisi delle minacce vengano registrati e aggiornati quando si verifica una modifica importante dell'impatto sulla sicurezza nell'applicazione o nel panorama delle minacce.
Implementazione di AWS e contesto aggiuntivo:
- Strumento di modellazione delle minacce Microsoft
- Come affrontare la modellazione delle minacce per AWS
- Analisi delle minacce dell'applicazione (incluso STRIDE + metodo basato su questionario)
Linee guida GCP: usare strumenti di modellazione delle minacce, ad esempio lo strumento di modellazione delle minacce Microsoft con il modello di modello di minacce di Azure incorporato, per guidare il processo di modellazione delle minacce. Usare il modello STRIDE per enumerare le minacce sia interne che esterne e identificare i controlli applicabili. Assicurarsi che il processo di modellazione delle minacce includa gli scenari di minaccia nel processo DevOps, ad esempio l'inserimento di codice dannoso tramite un repository di artefatti non sicuri con criteri di controllo di accesso non configurati correttamente.
Se l'utilizzo di uno strumento di modellazione delle minacce non è applicabile, è necessario utilizzare almeno un processo di modellazione delle minacce basato su questionari per identificare le minacce.
Assicurarsi che i risultati della modellazione o dell'analisi delle minacce vengano registrati e aggiornati quando si verifica una modifica importante dell'impatto sulla sicurezza nell'applicazione o nel panorama delle minacce.
Implementazione di GCP e contesto aggiuntivo:
Parti interessate per la sicurezza dei clienti (Ulteriori informazioni):
DS-2: garantire la sicurezza della catena di approvvigionamento del software
ID dei controlli CIS v8 | NIST SP 800-53 r4 ID | ID PCI-DSS v3.2.1 |
---|---|---|
16.4, 16.6, 16.11 | SA-12, SA-15 | 6.3, 6.5 |
Principio di sicurezza: assicurati che il processo SDLC (Software Development Lifecycle) della tua azienda includa una serie di controlli di sicurezza per governare i componenti software interni e di terze parti (inclusi software proprietario e open source) da cui le tue applicazioni hanno dipendenze. Definire criteri di controllo per impedire l'integrazione e la distribuzione di componenti vulnerabili o dannosi nell'ambiente.
I controlli di sicurezza della catena di approvvigionamento del software dovrebbero includere almeno i seguenti aspetti:
- Gestire correttamente una distinta base software (SBOM) identificando le dipendenze a monte necessarie per la fase di sviluppo, creazione, integrazione e distribuzione del servizio/risorsa.
- Inventario e rilevamento dei componenti software interni e di terze parti per la vulnerabilità nota quando è disponibile una correzione nell'upstream.
- Valutare le vulnerabilità e il malware nei componenti software usando test statici e dinamici delle applicazioni per individuare vulnerabilità sconosciute.
- Assicurarsi che le vulnerabilità e il malware siano mitigati usando l'approccio appropriato. Ciò può includere il codice sorgente locale o la correzione upstream, l'esclusione delle funzionalità e/o l'applicazione di controlli di compensazione se la mitigazione diretta non è disponibile.
Se nell'ambiente di produzione vengono usati componenti di terze parti di origine chiusa, è possibile che la visibilità sia limitata al comportamento di sicurezza. È consigliabile prendere in considerazione controlli aggiuntivi, ad esempio il controllo di accesso, l'isolamento della rete e la sicurezza degli endpoint per ridurre al minimo l'impatto se si verifica un'attività dannosa o una vulnerabilità associata al componente.
Linee guida di Azure: per la piattaforma GitHub, garantire la sicurezza della supply chain del software tramite le funzionalità o gli strumenti seguenti di GitHub Advanced Security o della funzionalità nativa di GitHub:- Usare Dependency Graph per analizzare, inventariare e identificare tutte le dipendenze del progetto e le vulnerabilità correlate tramite Advisory Database.
- Usare Dependabot per assicurarsi che la dipendenza vulnerabile venga monitorata e risolta e assicurarsi che il repository continui automaticamente con le versioni più recenti dei pacchetti e delle applicazioni da cui dipende.
- Utilizza la funzionalità di scansione del codice nativa di GitHub per eseguire la scansione del codice sorgente durante l'approvvigionamento del codice esternamente.
- Usare Microsoft Defender for Cloud per integrare la valutazione della vulnerabilità per l'immagine del contenitore nel flusso di lavoro CI/CD. Per Azure DevOps, è possibile usare estensioni di terze parti per implementare controlli simili per l'inventario, analizzare e correggere i componenti software di terze parti e le relative vulnerabilità.
Implementazione di Azure e contesto aggiuntivo:
- Grafico delle dipendenze di GitHub
- GitHub Dependabot
- Identificare le immagini del contenitore vulnerabili nei flussi di lavoro CI/CD
- Azure DevOps Marketplace : sicurezza della supply chain
Guida AWS: se utilizzi piattaforme CI/CD AWS come CodeCommit o CodePipeline, garantisci la sicurezza della supply chain del software utilizzando CodeGuru Reviewer per scansionare il codice sorgente (per Java e Python) attraverso i flussi di lavoro CI/CD. Piattaforme come CodeCommit e CodePipeline supportano anche estensioni di terze parti per implementare controlli simili per inventariare, analizzare e correggere i componenti software di terze parti e le loro vulnerabilità.
Se gestisci il codice sorgente tramite la piattaforma GitHub, garantisci la sicurezza della supply chain del software attraverso le seguenti funzionalità o strumenti di GitHub Advanced Security o la funzionalità nativa di GitHub:
- Usare Dependency Graph per analizzare, inventariare e identificare tutte le dipendenze del progetto e le vulnerabilità correlate tramite il database consultivo.
- Usare Dependabot per assicurarsi che la dipendenza vulnerabile venga monitorata e risolta e assicurarsi che il repository continui automaticamente con le versioni più recenti dei pacchetti e delle applicazioni da cui dipende.
- Utilizza la funzionalità di scansione del codice nativa di GitHub per eseguire la scansione del codice sorgente durante l'approvvigionamento del codice esternamente.
- Se applicabile, usare Microsoft Defender for Cloud per integrare la valutazione della vulnerabilità per l'immagine del contenitore nel flusso di lavoro CI/CD.
Implementazione di AWS e contesto aggiuntivo:
Linee guida GCP: utilizza Software Delivery Shield per eseguire analisi end-to-end della sicurezza della supply chain del software. Ciò include il servizio Assured OSS (Open Source Software) per l'accesso e l'incorporazione dei pacchetti OSS che sono stati verificati e testati da Google, nonché i pacchetti Java e Python convalidati creati utilizzando le pipeline sicure di Google. Questi pacchetti vengono regolarmente scansionati, analizzati e testati per individuare eventuali vulnerabilità. Tali funzionalità possono essere integrate in Google Cloud Build, Cloud Deploy, Artifact Registry, Artifact Analysis come parte dei flussi di lavoro CI/CD.
Se gestisci il codice sorgente tramite la piattaforma GitHub, garantisci la sicurezza della supply chain del software attraverso le seguenti funzionalità o strumenti di GitHub Advanced Security o la funzionalità nativa di GitHub:
- Usare Dependency Graph per analizzare, inventariare e identificare tutte le dipendenze del progetto e le vulnerabilità correlate tramite il database consultivo.
- Usare Dependabot per assicurarsi che la dipendenza vulnerabile venga monitorata e risolta e assicurarsi che il repository continui automaticamente con le versioni più recenti dei pacchetti e delle applicazioni da cui dipende.
- Utilizza la funzionalità di scansione del codice nativa di GitHub per eseguire la scansione del codice sorgente durante l'approvvigionamento del codice esternamente.
- Se applicabile, usare Microsoft Defender for Cloud per integrare la valutazione della vulnerabilità per l'immagine del contenitore nel flusso di lavoro CI/CD.
Implementazione di GCP e contesto aggiuntivo:
- Sicurezza della catena di approvvigionamento di Google Cloud Software
- Protezione per la distribuzione del software
- Sicurezza della catena di fornitura del software
Parti interessate per la sicurezza dei clienti (Ulteriori informazioni):
DS-3: proteggere l'infrastruttura di DevOps
ID dei controlli CIS v8 | NIST SP 800-53 r4 ID | ID PCI-DSS v3.2.1 |
---|---|---|
16.7 | CM-2, CM-6, AC-2, AC-3, AC-6 | 2.2, 6.3, 7.1 |
Principio di sicurezza: assicurarsi che l'infrastruttura e la pipeline DevOps seguano le best practice di sicurezza in tutti gli ambienti, tra cui le fasi di compilazione, test e produzione. Questo include in genere i controlli di sicurezza per l'ambito seguente:
- Repository di artefatti che archivia il codice sorgente, crea pacchetti e immagini, artefatti del progetto e dati aziendali.
- Server, servizi e strumenti che ospitano pipeline CI/CD.
- Configurazione della pipeline CI/CD.
Linee guida di Azure: nell'ambito dell'applicazione di Microsoft Cloud Security Benchmark ai controlli di sicurezza dell'infrastruttura DevOps, assegnare priorità ai controlli seguenti:
- Proteggi gli artefatti e l'ambiente sottostante per garantire che le pipeline CI/CD non diventino vie per l'inserimento di codice dannoso. Esaminare ad esempio la pipeline CI/CD per identificare eventuali errori di configurazione nelle aree principali di Azure DevOps, ad esempio Organizzazione, Progetti, Utenti, Pipeline (Compilazione e rilascio), Connessioni e Agente di compilazione per identificare eventuali configurazioni errate, ad esempio l'accesso aperto, l'autenticazione debole, la configurazione della connessione non sicura e così via. Per GitHub, usare controlli simili per proteggere i livelli di autorizzazione dell'organizzazione.
- Assicurati che la tua infrastruttura DevOps sia distribuita in modo coerente in tutti i progetti di sviluppo. Tenere traccia della conformità dell'infrastruttura DevOps su larga scala usando Microsoft Defender for Cloud (ad esempio dashboard di conformità, Criteri di Azure, Cloud Posture Management) o i propri strumenti di monitoraggio della conformità.
- Configurare le autorizzazioni di identità/ruolo e i criteri entitlement in Azure AD, servizi nativi e strumenti CI/CD nella pipeline per garantire che le modifiche alle pipeline siano autorizzate.
- Evitare di fornire un accesso con privilegi permanenti agli account umani, ad esempio sviluppatori o tester, usando funzionalità come le identificazioni gestite di Azure e l'accesso JIT.
- Rimuovere chiavi, credenziali e segreti dal codice e dagli script usati nei processi del flusso di lavoro CI/CD e conservarli in un archivio chiavi o in Azure Key Vault.
- Se si eseguono agenti di compilazione/distribuzione self-hosted, seguire i controlli di Microsoft Cloud Security Benchmark, tra cui la sicurezza di rete, la gestione della postura e delle vulnerabilità e la sicurezza degli endpoint per proteggere l'ambiente.
Nota: fare riferimento alle sezioni Registrazione e rilevamento delle minacce, DS-7 e Gestione della postura e delle vulnerabilità per usare servizi come Monitoraggio di Azure e Microsoft Sentinel per abilitare la governance, la conformità, il controllo operativo e il controllo dei rischi per l'infrastruttura DevOps.
Implementazione di Azure e contesto aggiuntivo:
- Panoramica dei controlli DevSecOps: pipeline sicure
- Proteggere l'organizzazione GitHub
- Pipeline di Azure DevOps: considerazioni sulla sicurezza dell'agente ospitato da Microsoft
Linee guida AWS: nell'ambito dell'applicazione di Microsoft Cloud Security Benchmark ai controlli di sicurezza dell'infrastruttura DevOps, ad esempio GitHub, CodeCommit, CodeArtifact, CodePipeline, CodeBuild e CodeDeploy, assegna la priorità ai seguenti controlli:
- Fai riferimento a questa guida e al pilastro di sicurezza di AWS Well-architected Framework per proteggere i tuoi ambienti DevOps in AWS.
- Proteggi gli artefatti e l'infrastruttura di supporto sottostante per garantire che le pipeline CI/CD non diventino vie per l'inserimento di codice dannoso.
- Assicurati che la tua infrastruttura DevOps sia distribuita e sostenuta in modo coerente in tutti i progetti di sviluppo. Monitora la conformità della tua infrastruttura DevOps su larga scala utilizzando AWS Config o la tua soluzione di controllo della conformità.
- Utilizza CodeArtifact per archiviare e condividere in modo sicuro i pacchetti software utilizzati per lo sviluppo di applicazioni. È possibile utilizzare CodeArtifact con gli strumenti di compilazione e i gestori di pacchetti più diffusi come Maven, Gradle, npm, yarn, pip e twine.
- Configura le autorizzazioni di identità/ruolo e le policy di autorizzazione in AWS IAM, nei servizi nativi e negli strumenti CI/CD nella pipeline per garantire che le modifiche alle pipeline siano autorizzate.
- Rimuovi chiavi, credenziali e segreti dal codice e dagli script utilizzati nei processi del flusso di lavoro CI/CD e conservali nell'archivio chiavi o in AWS KMS
- Se si eseguono agenti di compilazione/distribuzione self-hosted, seguire i controlli di Microsoft Cloud Security Benchmark, tra cui la sicurezza di rete, la gestione della postura e delle vulnerabilità e la sicurezza degli endpoint per proteggere l'ambiente. Utilizza AWS Inspector per la scansione delle vulnerabilità in EC2 o in un ambiente containerizzato come ambiente di creazione.
Nota: fare riferimento alle sezioni Registrazione e rilevamento delle minacce, DS-7 e Gestione della postura e delle vulnerabilità per utilizzare servizi come AWS CloudTrail, CloudWatch e Microsoft Sentinel per abilitare la governance, la conformità, l'audit operativo e l'audit dei rischi per l'infrastruttura DevOps.
Implementazione di AWS e contesto aggiuntivo:
Linee guida GCP: nell'ambito dell'applicazione di Microsoft Cloud Security Benchmark ai controlli di sicurezza dell'infrastruttura DevOps, dare priorità ai controlli seguenti:
- Proteggi gli artefatti e l'ambiente sottostante per garantire che le pipeline CI/CD non diventino vie per l'inserimento di codice dannoso. Ad esempio, esamina la pipeline CI/CD per identificare eventuali configurazioni errate in servizi come Google Cloud Build, Cloud Deploy, Artifact Registry, Connections e Build Agent per identificare eventuali configurazioni errate come l'accesso aperto, l'autenticazione debole, la configurazione di una connessione non sicura e così via. Per GitHub, usare controlli simili per proteggere i livelli di autorizzazione dell'organizzazione.
- Assicurati che la tua infrastruttura DevOps sia distribuita in modo coerente in tutti i progetti di sviluppo. Monitora la conformità della tua infrastruttura DevOps su larga scala utilizzando il Centro comandi di Google Cloud Security (come la dashboard di conformità, le norme organizzative, la registrazione delle singole minacce e l'identificazione delle configurazioni errate) o i tuoi strumenti di monitoraggio della conformità.
- Configura le autorizzazioni di identità/ruolo e le policy di adesione nei servizi nativi Cloud Identity/AD e negli strumenti CI/CD nella pipeline per garantire che le modifiche alle pipeline siano autorizzate.
- Evita di fornire un accesso privilegiato permanente agli account umani, come sviluppatori o tester, utilizzando funzionalità come le identificazioni gestite da Google.
- Rimuovi chiavi, credenziali e segreti dal codice e dagli script utilizzati nei processi del flusso di lavoro CI/CD e conservali in un archivio chiavi o in Google Secret Manager.
- Se si eseguono agenti di compilazione/distribuzione self-hosted, seguire i controlli di Microsoft Cloud Security Benchmark, tra cui la sicurezza di rete, la gestione della postura e delle vulnerabilità e la sicurezza degli endpoint per proteggere l'ambiente.
Nota: fare riferimento alle sezioni Registrazione e rilevamento delle minacce, DS-7 e Gestione della postura e delle vulnerabilità per utilizzare servizi come Monitoraggio di Azure e Microsoft Sentinel o la suite operativa di Google Cloud e Chronicle SIEM e SOAR per abilitare la governance, la conformità, il controllo operativo e il controllo dei rischi per l'infrastruttura DevOps.
Implementazione di GCP e contesto aggiuntivo:
Parti interessate per la sicurezza dei clienti (Ulteriori informazioni):
- Sicurezza delle applicazioni e DevSecOps
- Gestione del comportamento
- Sicurezza dell'infrastruttura e degli endpoint
- Architettura di sicurezza
DS-4: integrare i test di sicurezza delle applicazioni statiche nella pipeline di DevOps
ID dei controlli CIS v8 | NIST SP 800-53 r4 ID | ID PCI-DSS v3.2.1 |
---|---|---|
16.12 | SA-11 | 6.3, 6.5 |
Principio di sicurezza: assicurarsi che i test statici di sicurezza delle applicazioni (SAST), i test interattivi, i test delle applicazioni mobili facciano parte dei controlli di gating nel flusso di lavoro CI/CD. Il controllo può essere impostato in base ai risultati dei test per impedire il commit di pacchetti vulnerabili nel repository, la compilazione nei pacchetti o la distribuzione nell'ambiente di produzione.
Linee guida di Azure: integrare SAST nella pipeline (ad esempio, nell'infrastruttura come modello di codice) in modo che il codice sorgente possa essere analizzato automaticamente nel flusso di lavoro CI/CD. Azure DevOps Pipeline o GitHub possono integrare gli strumenti seguenti e gli strumenti SAST di terze parti nel flusso di lavoro.
- GitHub CodeQL per l'analisi del codice sorgente.
- Microsoft BinSkim Binary Analyzer per Windows e *analisi binaria nix.
- Azure DevOps Credential Scanner (estensione Microsoft Security DevOps) e l'analisi dei segreti nativi di GitHub per l'analisi delle credenziali nel codice sorgente.
Implementazione di Azure e contesto aggiuntivo:
- GitHub CodeQL
- Analizzatore binario BinSkim
- Analisi delle credenziali di Azure DevOps
- Analisi dei segreti di GitHub
Guida AWS: integra SAST nella tua pipeline in modo che il codice sorgente possa essere scansionato automaticamente nel tuo flusso di lavoro CI/CD.
Se utilizzi AWS CodeCommit, utilizza AWS CodeGuru Reviewer per l'analisi del codice sorgente Python e Java. AWS Codepipeline può anche supportare l'integrazione di strumenti SAST di terze parti nella pipeline di distribuzione del codice.
Se si utilizza GitHub, gli strumenti seguenti e gli strumenti SAST di terze parti possono essere integrati nel flusso di lavoro.
- GitHub CodeQL per l'analisi del codice sorgente.
- Microsoft BinSkim Binary Analyzer per Windows e *analisi binaria nix.
- Scansione dei segreti nativi di GitHub per la scansione delle credenziali nel codice sorgente.
- AWS CodeGuru Reviewer per l'analisi del codice sorgente Python e Java.
Implementazione di AWS e contesto aggiuntivo:
Guida GCP: integra SAST (come Software Delivery Shield, Artifact Analysis) nella pipeline (ad esempio, nell'infrastruttura come modello di codice) in modo che il codice sorgente possa essere scansionato automaticamente nel flusso di lavoro CI/CD.
Servizi come Cloud Build, Cloud Deploy, Artifact Registry supportano l'integrazione con Software Delivery Shield e Artifact Analysis che possono scansionare il codice sorgente e altri artefatti nel flusso di lavoro CI/CD.
Implementazione di GCP e contesto aggiuntivo:
- Utilizzo della scansione on-demand nella pipeline di Cloud Build
- Panoramica di Software Delivery Shield
Parti interessate per la sicurezza dei clienti (Ulteriori informazioni):
DS-5: integrare i test di sicurezza delle applicazioni dinamiche nella pipeline di DevOps
ID dei controlli CIS v8 | NIST SP 800-53 r4 ID | ID PCI-DSS v3.2.1 |
---|---|---|
16.12 | SA-11 | 6.3, 6.5 |
Principio di sicurezza: garantire che i test di sicurezza delle applicazioni dinamiche (DAST) facciano parte dei controlli di gating nel flusso di lavoro CI/CD. Il controllo può essere impostato in base ai risultati dei test per impedire la compilazione di vulnerabilità nei pacchetti o la distribuzione nell'ambiente di produzione.
Linee guida di Azure: integrare DAST nella pipeline in modo che l'applicazione di runtime possa essere testata automaticamente nel flusso di lavoro CI/CD impostato in Azure DevOps o GitHub. Anche i test di penetrazione automatizzati (con convalida assistita manuale) devono far parte del DAST.
Azure DevOps Pipeline o GitHub supporta l'integrazione di strumenti DAST di terze parti nel flusso di lavoro CI/CD.
Implementazione di Azure e contesto aggiuntivo:
Linee guida AWS: integra DAST nella pipeline in modo che l'applicazione di runtime possa essere testata automaticamente nel flusso di lavoro CI/CD impostato in AWS CodePipeline o GitHub. Anche i test di penetrazione automatizzati (con convalida assistita manuale) devono far parte del DAST.
AWS CodePipeline o GitHub supporta l'integrazione di strumenti DAST di terze parti nel flusso di lavoro CI/CD.
Implementazione di AWS e contesto aggiuntivo:
Guida GCP: integra DAST (come Cloud Web Security Scanner) nella tua pipeline in modo che l'applicazione di runtime possa essere testata automaticamente nel tuo flusso di lavoro CI/CD impostato in servizi come Google Cloud Build, Cloud Deploy o GitHub. Cloud Web Security Scanner può essere utilizzato per identificare le vulnerabilità di sicurezza nelle applicazioni Web dei carichi di lavoro ospitate su App Engine, Google Kubernetes Engine (GKE) e Compute Engine. Anche i test di penetrazione automatizzati (con convalida assistita manuale) devono far parte del DAST.
Google Cloud Build, Google Cloud Deploy, Artifact Registry e GitHub supportano anche l'integrazione di strumenti DAST di terze parti nel flusso di lavoro CI/CD.
Implementazione di GCP e contesto aggiuntivo:
Parti interessate per la sicurezza dei clienti (Ulteriori informazioni):
DS-6: applicare la sicurezza del carico di lavoro nel ciclo di vita di DevOps
ID dei controlli CIS v8 | NIST SP 800-53 r4 ID | ID PCI-DSS v3.2.1 |
---|---|---|
7.5, 7.6, 7.7, 16.1, 16.7 | CM-2, CM-6, AC-2, AC-3, AC-6 | 6.1, 6.2, 6.3 |
Principio di sicurezza: garantire che il carico di lavoro sia protetto durante l'intero ciclo di vita nelle fasi di sviluppo, test e distribuzione. Usare Microsoft Cloud Security Benchmark per valutare i controlli (ad esempio la sicurezza della rete, la gestione delle identità, l'accesso con privilegi e così via) che possono essere impostati come guardrail per impostazione predefinita o spostati a sinistra prima della fase di distribuzione. In particolare, assicurarsi che nel processo DevOps siano presenti i controlli seguenti:- Automatizzare la distribuzione usando strumenti di Azure o di terze parti nel flusso di lavoro CI/CD, la gestione dell'infrastruttura (infrastruttura come codice) e i test per ridurre l'errore umano e la superficie di attacco.
- Assicurarsi che le macchine virtuali, le immagini del contenitore e altri artefatti siano protetti da manipolazioni dannose.
- Analizzare gli artefatti del carico di lavoro (in altre parole, immagini del contenitore, dipendenze, analisi SAST e DAST) prima della distribuzione nel flusso di lavoro CI/CD
- Distribuire la valutazione delle vulnerabilità e la funzionalità di rilevamento delle minacce nell'ambiente di produzione e usare continuamente queste funzionalità in fase di esecuzione.
Linee guida di Azure: Linee guida per le macchine virtuali di Azure:
- Usare Azure Raccolta immagini condivise per condividere e controllare l'accesso alle immagini da utenti, entità servizio o gruppi di Active Directory diversi all'interno dell'organizzazione. Usare il controllo degli accessi in base al ruolo di Azure per assicurarsi che solo gli utenti autorizzati possano accedere alle immagini personalizzate.
- Definire le linee di base di configurazione sicure per le macchine virtuali per eliminare credenziali, autorizzazioni e pacchetti non necessari. Distribuire e applicare le baseline di configurazione tramite immagini personalizzate, modelli di Azure Resource Manager e/o la configurazione guest di Criteri di Azure.
Indicazioni per i servizi contenitore di Azure:
- Usare Registro Azure Container per creare il registro contenitori privato in cui l'accesso granulare può essere limitato tramite il controllo degli accessi in base al ruolo di Azure, in modo che solo i servizi e gli account autorizzati possano accedere ai contenitori nel registro privato.
- Usare Defender per contenitori per la valutazione della vulnerabilità delle immagini nel Registro Azure Container privato. Inoltre, è possibile usare Microsoft Defender for Cloud per integrare le analisi delle immagini del contenitore come parte dei flussi di lavoro CI/CD.
Per i servizi serverless di Azure, adottare controlli simili per garantire che i controlli di sicurezza passino alla fase precedente alla distribuzione.
Implementazione di Azure e contesto aggiuntivo:
- Panoramica della raccolta immagini condivise
- Come implementare le raccomandazioni per la valutazione delle vulnerabilità di Microsoft Defender for Cloud
- Considerazioni sulla sicurezza per Azure Container
- Azure Defender per registri contenitori
Guida AWS: utilizza Amazon Elastic Container Registry per condividere e controllare l'accesso alle immagini da parte di diversi utenti e ruoli all'interno dell'organizzazione. E utilizza AWS IAM per assicurarti che solo gli utenti autorizzati possano accedere alle tue immagini personalizzate.
Definisci le linee di base di configurazione sicure per le immagini AMI EC2 per eliminare credenziali, autorizzazioni e pacchetti non necessari. Distribuisci e applica le linee di base delle configurazioni tramite immagini AMI personalizzate, modelli CloudFormation e/o regole di AWS Config.
Utilizza AWS Inspector per la scansione delle vulnerabilità delle VM e degli ambienti containerizzati, proteggendoli da manipolazioni dannose.
Per i servizi serverless AWS, utilizza AWS CodePipeline insieme ad AWS AppConfig per adottare controlli simili e garantire che i controlli di sicurezza si spostino a sinistra nella fase precedente alla distribuzione.
Implementazione di AWS e contesto aggiuntivo:
- Scansione di immagini AWS ECR
- Ispettore AWS
- AWS AppConfig
Linee guida per GCP: Google Cloud include controlli per proteggere le risorse di calcolo e le risorse del contenitore Google Kubernetes Engine (GKE). Google include la macchina virtuale schermata, che rafforza le istanze della macchina virtuale. Fornisce la sicurezza di avvio, monitora l'integrità e utilizza il modulo vTPM (Virtual Trusted Platform Module).
Utilizza Google Cloud Artifact Analysis per scansionare le vulnerabilità nelle immagini dei container o del sistema operativo e altri tipi di artefatti su richiesta o automaticamente nelle pipeline. Utilizzare Container Threat Detection per monitorare continuamente le immagini dei nodi del sistema operativo Container-Optimized dichiarate. Il servizio valuta tutte le modifiche e i tentativi di accesso remoto per rilevare gli attacchi di runtime quasi in tempo reale.
Utilizza Artifact Registry per configurare l'archiviazione sicura degli artefatti per la creazione privata in modo da mantenere il controllo su chi può accedere, visualizzare o scaricare gli artefatti con ruoli e autorizzazioni IAM nativi del registro e per ottenere tempi di attività costanti sull'infrastruttura sicura e affidabile di Google.
Per i servizi serverless GCP, adotta controlli simili per garantire che i controlli di sicurezza passino "shift-left" alla fase precedente alla distribuzione.
Implementazione di GCP e contesto aggiuntivo:
- Registro artefatti
- Sicurezza delle applicazioni e DevSecOps
- Gestione del comportamento
- Architettura di sicurezza
Parti interessate per la sicurezza dei clienti (Ulteriori informazioni):
DS-7: abilitare la registrazione e il monitoraggio in DevOps
ID dei controlli CIS v8 | NIST SP 800-53 r4 ID | ID PCI-DSS v3.2.1 |
---|---|---|
8.2, 8.5, 8.9, 8.11 | AU-3, AU-6, AU-12, SI-4 | 10.1, 10.2, 10.3, 10.6 |
Principio di sicurezza: assicurarsi che l'ambito di registrazione e monitoraggio includa ambienti non di produzione ed elementi del flusso di lavoro CI/CD usati in DevOps (e in qualsiasi altro processo di sviluppo). Le vulnerabilità e le minacce destinate a questi ambienti possono comportare rischi significativi per l'ambiente di produzione se non vengono monitorate correttamente. Gli eventi del flusso di lavoro di compilazione, test e distribuzione CI/CD devono essere monitorati anche per identificare eventuali deviazioni nei processi del flusso di lavoro CI/CD.
Linee guida di Azure: abilitare e configurare le funzionalità di registrazione di controllo in ambienti di strumenti CI/CD non di produzione (ad esempio Azure DevOps e GitHub) usati durante il processo DevOps.
Anche gli eventi generati da Azure DevOps e dal flusso di lavoro CI/CD di GitHub, inclusi i processi di compilazione, test e distribuzione, devono essere monitorati per identificare eventuali risultati anomali.
Inserire i log e gli eventi precedenti in Microsoft Sentinel o in altri strumenti SIEM tramite un flusso di registrazione o un'API per garantire che gli eventi imprevisti di sicurezza vengano monitorati e valutati correttamente per la gestione.
Implementazione di Azure e contesto aggiuntivo:
Guida AWS: abilita e configura AWS CloudTrail per le funzionalità di registrazione di controllo in ambienti di strumenti CI/CD non di produzione (come AWS CodePipeline, AWS CodeBuild, AWS CodeDeploy, AWS CodeStar) utilizzati durante il processo DevOps.
Anche gli eventi generati dagli ambienti CI/CD AWS (come AWS CodePipeline, AWS CodeBuild, AWS CodeDeploy, AWS CodeStar) e dal flusso di lavoro CI/CD di GitHub, inclusi i processi di creazione, test e distribuzione, devono essere monitorati per identificare eventuali risultati anomali.
Acquisisci i log e gli eventi di cui sopra in AWS CloudWatch, Microsoft Sentinel o altri strumenti SIEM tramite un flusso di registrazione o un'API per garantire che gli incidenti di sicurezza siano monitorati e valutati correttamente per la gestione.
Implementazione di AWS e contesto aggiuntivo:
- Connettere Microsoft Sentinel ad Amazon Web Services per inserire i dati di log del servizio AWS
- Registrazione GitHub
Linee guida GCP: abilitare e configurare le funzionalità di registrazione di controllo in ambienti di strumenti non di produzione e CI/CD per prodotti come Cloud Build, Google Cloud Deploy, Artifact Registry e GitHub, che possono essere utilizzati durante il processo DevOps.
Anche gli eventi generati dagli ambienti CI/CD GCP (ad esempio Cloud Build, Google Cloud Deploy, Artifact Registry) e il flusso di lavoro CI/CD di GitHub, inclusi i processi di compilazione, test e distribuzione, devono essere monitorati per identificare eventuali risultati anomali.
Acquisisci i log e gli eventi di cui sopra in Microsoft Sentinel, Google Cloud Security Command Center, Chronicle o altri strumenti SIEM tramite un flusso di registrazione o un'API per garantire che gli incidenti di sicurezza siano monitorati e valutati correttamente per la gestione.
Implementazione di GCP e contesto aggiuntivo:
- Prodotti in primo piano per CI/CD
- Introduzione alla suite operativa di Google Cloud
- Best practice per Cloud Logging
- Acquisisci i dati di Google Cloud in Chronicle
Parti interessate per la sicurezza dei clienti (Ulteriori informazioni):