Lo spostamento a sinistra si riferisce all'anticipazione della sicurezza nel processo di sviluppo. Graficando il processo di sviluppo di un'applicazione, con il tempo come asse X, il processo inizia con il riconoscimento di un'esigenza che una tecnologia o un servizio soddisferà, sia che si tratti di un'applicazione in fase di sviluppo per la vendita a clienti paganti o per uso interno. Man mano che la soluzione si muoveva attraverso le fasi di ideazione, progettazione, sviluppo, costruzione e test, la sicurezza era spesso una fase finale, prima di deployment. La sicurezza è stata semplicemente avvolta all'esterno dell'applicazione prima del rilascio agli utenti finali. E questo passo, necessariamente, ha aggiunto tempo.
Inoltre, un'integrazione più stretta della sicurezza nell'intero processo porta a risultati migliori in termini di sicurezza, rispetto a un'integrazione finale.
Lo spostamento a sinistra è il modo per rimediare a questi problemi.
La pubblicazione immediata del software comporta la pubblicazione immediata di qualsiasi rischio.
Il Sei pilastri di DevSecOps: Automazione, pubblicato dalla Cloud Security Alliance (CSA), afferma: "La sicurezza può essere raggiunta solo quando è stata progettata. Applicare le misure di sicurezza come un ripensamento è una ricetta per il disastro.
Le protezioni di sicurezza devono seguire gli stessi percorsi automatizzati. Una stretta integrazione della sicurezza durante l'intero ciclo di vita dello sviluppo può non solo accelerare i tempi di rilascio, ma anche migliorare la sicurezza.
Il processo tradizionale di implementazione della sicurezza dopo il completamento dello sviluppo, ma prima del rilascio, ha portato a frequenti scontri tra i team di sicurezza e di sviluppo. Man mano che i team di sviluppo completavano la loro parte del compito, cercavano di mettere l'applicazione nelle mani degli utenti finali, per consegnare il risultato dei loro sforzi, iniziare a raccogliere feedback e rispettare le scadenze. Il fatto che la sicurezza abbia frenato i rilasci ha portato a relazioni conflittuali tra i due.
Un sondaggio condotto da ShiftLeft su oltre 165 sviluppatori, professionisti della sicurezza delle applicazioni e DevOps ha rilevato che l'89% degli intervistati ha dichiarato che l'attuale disconnessione tra gli sviluppatori e i team di cybersecurity è il principale ostacolo alla produttività.
Spostando la sicurezza a sinistra, i team possono invece collaborare e integrare i processi necessari per preparare le app per il rilascio in tempo, in modo sicuro.
Lo spostamento a sinistra comporta dei cambiamenti su quando, dove e come applicare le best practice di sicurezza. La sicurezza deve creare fiducia con gli sviluppatori e DevOps. Èutile capire la cultura dell'automazione DevOps e la velocità con cui distribuiscono il codice.
Come parte dello spostamento a sinistra, dovrebbe fornire agli sviluppatori gli strumenti per svolgere il loro lavoro in modo sicuro, senza aggiungere lavoro. Questo include l'automazione della sicurezza, come la scansione delle vulnerabilità al punto deployment e la generazione di autorizzazioni per le funzioni Lambda.
Sebbene la sicurezza debba essere proattiva, è difficile da raggiungere mantenendo la velocità. È necessario ottenere controllo, governance e osservabilità. I professionisti della sicurezza devono consentire, anziché limitare, l'attività aziendale.
È importante che gli sviluppatori comprendano i metodi di codifica sicuri. Questo può consentire agli sviluppatori, piuttosto che agli analisti della sicurezza, di verificare ed eliminare le vulnerabilità in anticipo.
Come dice Marco Rottigni, chief technical security officer, a Computer Business Review, "Gli sviluppatori dovrebbero essere dotati di plug-in che attivano i controlli di sicurezza e di conformità in ogni fase del processo DevOps, esponendo i risultati proprio all'interno degli strumenti che utilizzano comunemente per consentire una rapida correzione del codice vulnerabile".
Anche se ci sono stati dei progressi nello spostamento a sinistra, spesso non sono sufficienti. Oltre il 42% dei partecipanti al sondaggio Mapping the DevSecOps Landscape 2020 di GitLab ha dichiarato che i test avvengono troppo tardi nel ciclo di vita.
Senza l'automazione della sicurezza, i team DevOps sono spesso ostacolati dalla necessità di attendere l'approvazione umana.
Come ha scritto Paul Holland su Computer Weekly, "i CISO devono rendersi conto che gli sviluppatori devono avere il tempo di sviluppare in modo sicuro e non giudicare le loro prestazioni solo in base al tempo di costruzione".
È irragionevole assegnare agli sviluppatori compiti aggiuntivi per la sicurezza delle applicazioni, aspettandosi che mantengano un ritmo incalzante. Sebbene lo spostamento della sicurezza a sinistra si traduca in un processo più efficiente e possa accelerare il time to market, occorre comunque allocare del tempo per le attività di sicurezza, come le revisioni del codice.
"Icontrolli di sicurezza non possono essere integrati con successo senza funzionalità di sicurezza automatizzate che consentano un feedback tempestivo e significativo. Adottando capacità di sicurezza automatizzate anche modeste, si possono potenzialmente eliminare intere classi di rischio", ha dichiarato Sean Heide, Research Analyst Cloud Security Alliance.
Automatizzare la riparazione. Non crei ticket per risolvere cose che potrebbero essere risolte in modo automatico. Offrire agli sviluppatori un self-service per valutare la sicurezza di uno stack che stanno per distribuire.
Nigel Kersten, field chief technology officer di Puppet, ha sottolineato l'importanza di implementare l'automazione su scala nelle pratiche DevSecOps. "Senza [automazione scalare], le organizzazioni si ritroveranno con gli stessi processi manuali e gli stessi incentivi contrastanti. Quindi, invece di DevSecOps, queste aziende si ritrovano con solo Dev, Sec e Ops".
Le soluzioni separate non sono all'altezza. In particolare, la sicurezza delle app non è stata progettata per adattarsi automaticamente ai cambiamenti delle app. Le grandi dimensioni della maggior parte delle infrastrutture cloud, insieme agli ambienti dinamici, rendono la sicurezza particolarmente impegnativa.
I professionisti della sicurezza di oggi devono implementare la sicurezza multilivello in tutti gli ambienti cloud, con un approccio alla sicurezza e un linguaggio di policy coerenti in tutto ciò che si fa. Check Point offre un approccio di sicurezza automatizzato che protegge su scala e velocità cloud. Tenga traccia delle sue configurazioni con la gestione della postura, la visibilità ad alta fedeltà degli asset. Mantenga la protezione in base alle best practice e alle sue politiche. Monitorare continuamente e intraprendere azioni sull'intera infrastruttura cloud.