Migliorare la sicurezza IT con DevSecOps: cos’è e come applicarlo

4 minutes Leggi
21 Settembre 2021

Soltanto nei primi sei mesi del 2021 è stato registrato un aumento del 125% degli attacchi informatici, rispetto all’anno precedente (Fonte: Accenture).

Spesso le violazioni si verificano a seguito di attacchi molto ben strutturati, come è successo ai server di Microsoft Exchange. In molti altri casi, invece, gli attacchi sono leggeri, ma hanno successo per la scarsa attenzione prestata alla sicurezza dalla maggior parte delle aziende. Così è stato, ad esempio, per il data breach che ha coinvolto i dati vaccinali della Regione Lazio il 30 luglio 2021
DevSecOps offre una risposta alle crescenti esigenze di sicurezza. Vediamo come.

 

Il contesto di sviluppo

Solo in alcuni periodi, o in occasione di eventi particolarmente rilevanti, l’esposizione mediatica è rappresentativa della pressione a cui sono costantemente sottoposti i sistemi informativi. Gli attacchi passano spesso inosservati al grande pubblico, ma sono sempre presenti e in costante crescita: il corretto sviluppo del software deve mettere questo tema in primo piano. Dalla creazione di un servizio fino al disegno di una complessa architettura software, la sicurezza dev’essere uno degli elementi di principale attenzione.

La metodologia di sviluppo DevOps – oggi particolarmente diffusa per i numerosi benefici che offre – può e deve essere integrata con le pratiche e gli elementi di sicurezza. DevOps ha l’obiettivo di consentire rilasci di piccole dimensioni e ravvicinati nel tempo. Un ciclo di sviluppo che prevede un team che sviluppa il codice e un altro team che lo rielabora in modalità sicura non è ottimizzato e non permette di perseguire gli obiettivi di DevOps. Per questo le competenze di sicurezza devono essere comuni a tutti i membri del team e lo sviluppo deve rispettare standard di sicurezza idonei.

 

DevSecOps: che cos’è

Come abbiamo detto, il tema centrale per uno sviluppo sicuro è che la sicurezza diventi un tema condiviso, in capo a ciascun team di sviluppo cross-funzionale (Feature Team). L’approccio più efficace è quindi composto di tre elementi perfettamente integrati tra loro, che possono essere racchiusi in un unico termine: DevSecOps (Development, Security e Operation).

Per attuare DevSecOps è necessario che i principi di sicurezza vengano considerati fin dalle prime fasi di progettazione, inserendoli nel normale flusso DevOps. Per evitare rallentamenti nella pipeline, test e controlli di sicurezza devono essere automatizzati e integrati nelle pratiche di continuous integration.

È inoltre necessario implementare un solido sistema di monitoring: tracciabilità e visibilità sono molto importanti. Il corretto inserimento di allarmi nel codice permette infatti di ricevere segnalazioni prima che si verifichi un problema, consentendo un’azione proattiva. Il disegno dei processi deve includere regole e standard in un quadro coerente. In questo modo, se lo sviluppi rispetta sempre le regole stabilite, i rischi si riducono.

 

Come garantire la sicurezza con microservizi, API e container

Microservizi, API e container sono approcci oggi centrali nello sviluppo software, e offrono garanzie minime di sicurezza da non sottovalutare. Sviluppare a microservizi richiede una dettagliata separazione delle responsabilità di ciascun servizio: i rischi di sicurezza vengono così ridotti al minimo, ad esempio seguendo il PoLP (Principle of least privilege) che prevede di assegnare i privilegi minimi necessari all’esecuzione del singolo servizio. L’accesso ai dati viene oggi semplificato e messo in sicurezza dall’adozione di un sistema di API aziendale. Seguire i principi di API security rende più difficile l’attacco ai dati, senza imporre limiti alla gestione delle API, chiuse o aperte al pubblico. 

Anche la containerizzazione aumenta la sicurezza delle applicazioni: le esecuzioni sono isolate, sia tra loro, sia rispetto ai sistemi sui quali girano. Un attacco a sistemi moderni è molto più complesso da portare a termine rispetto ai sistemi tradizionali.

 

DevOps come sintesi di DevSecOps

Possiamo quindi riassumere i principali e maggiori vantaggi dell’approccio unificato DevSecOps in sicurezza, velocità e costi. I feature team sviluppano direttamente in modalità sicura microservizi ed API, eseguiti su container. Integrando nelle fasi di test e monitoring anche elementi di security, si mantiene l’elevata velocità dell’approccio DevOps. Il rispetto dei tempi di volta in volta necessari minimizza le riscritture e riduce i costi finali.

In conclusione, è oggi chiaro che il mindset DevOps non parla solo di processi, metodi, strumenti e automazione. La sicurezza è parte essenziale e fondante di questa unificazione dell’approccio al developing e al delivering delle applicazioni: per questo il termine DevOps può essere considerato la sintesi del più completo DevSecOps.

Scarica il white paper
Torna all'inizio ↑
INDICE
Il contesto di sviluppo
DevSecOps: che cos’è
Come garantire la sicurezza con microservizi, API e container
DevOps come sintesi di DevSecOps