Sicurezza delle applicazioni
Il termine sicurezza delle applicazioni (AppSec) descrive il processo complessivo di progettazione, creazione e test delle proprietà di sicurezza dei carichi di lavoro sviluppati. Devi individuare persone sufficientemente qualificate nell'organizzazione, comprendere le proprietà di sicurezza dell'infrastruttura di sviluppo e rilascio e usare l'automazione per identificare i problemi correlati alla sicurezza.
L'adozione di test della sicurezza delle applicazioni come componente regolare del ciclo di vita di sviluppo del software e dei processi successivi al rilascio ti fornisce un meccanismo strutturato per identificare, correggere e prevenire problemi di sicurezza delle applicazioni nell'ambiente di produzione.
La metodologia di sviluppo delle applicazioni deve includere controlli di sicurezza durante la progettazione, l'implementazione e il funzionamento dei carichi di lavoro. Nel frattempo, allinea il processo per una continua riduzione degli errori e l'azzeramento del debito tecnico. Ad esempio, usando la modellazione delle minacce durante la fase di progettazione, puoi individuare i difetti di progettazione e correggerli più facilmente e in modo meno costoso anziché attendere e mitigarli in un secondo momento.
Costi e complessità associati alla correzione dei difetti sono in genere inferiori nelle fasi iniziali del ciclo di vita di sviluppo del software. Il modo più semplice per risolvere i problemi è non averne affatto ed è per questo che un modello di rischio iniziale ti permette di concentrarti sui risultati corretti sin dalla fase di progettazione. Con l'evolvere del programma per la sicurezza delle applicazioni, puoi aumentare la quantità di test eseguiti tramite l'automazione, migliorare l'attendibilità del feedback degli sviluppatori e ridurre il tempo necessario per le revisioni della sicurezza. Tutte queste iniziative migliorano la qualità del software sviluppato e accelerano la distribuzione di funzionalità nell'ambiente di produzione.
Le presenti linee guida per l'implementazione si concentrano su quattro aree: organizzazione e cultura, sicurezza della pipeline, sicurezza nella pipeline e gestione delle dipendenze. Ciascuna area fornisce un set di principi che puoi applicare e una visione completa di come progettare, sviluppare, compilare, implementare ed eseguire carichi di lavoro.
AWS offre diversi approcci da usare per gestire il programma per la sicurezza delle applicazioni. Alcuni sono basati sulla tecnologia, mentre altri sono incentrati sulle persone e gli aspetti organizzativi del programma.
Best practice
- SEC11-BP01 Formazione per la sicurezza delle applicazioni
- SEC11-BP02 Automazione dei test lungo il ciclo di vita di sviluppo e test
- SEC11-BP03 Esecuzione di test di penetrazione a intervalli regolari
- SEC11-BP04 Esecuzione di revisioni del codice
- SEC11-BP05 Centralizzazione dei servizi per pacchetti e dipendenze
- SEC11-BP06 Implementazione programmatica del software
- SEC11-BP07 Valutazione regolare delle proprietà di sicurezza delle pipeline
- SEC11-BP08 Creazione di un programma per l'integrazione della titolarità della sicurezza nei team responsabili del carico di lavoro