Immaginiamo di avere una linea temporale che da sinistra a destra indichi le varie fasi dallo sviluppo del codice fino alla messa in produzione, “from code to run”: il termine “Shift-Left” in cyber security si riferisce al portare l’attenzione alla sicurezza sin dalle prime fasi di vita del ciclo dello sviluppo del software (SDLC) e di un’applicazione in generale con enormi benefici.
I nostri nonni dicevano che chi ben comincia è a metà dell’opera e sebbene i contesti fossero enormemente complessi, è pur vero che da un punto di vista logico intervenire nelle fasi iniziali di un qualunque progetto potendo evitare a priori i problemi potenziali è senz’altro ottimale.
Se poi si può farlo in modo automatizzato e con nessun overhead, rappresenta un’opportunità imprescindibile
SecDevOps: perché è da preferire a DevSecOps e come introdurlo in azienda
Perché la sicurezza Shift-Left è importante in cyber security
Se da un lato le nuove architetture applicative offrono a programmatori e team di prodotto incredibile velocità di sviluppo, dall’altro hanno aumentato le sfide in termini di normativa e controllo.
La Top 5 delle minacce informatiche e come contrastarle
La sicurezza deve tenere il passo con la rapida crescita e l’agilità dei cicli di sviluppo ed essere sufficientemente flessibile da supportare un’ampia gamma di soluzioni cloud.
Unico denominatore comune di questi nuovi flussi è il codice che sta alla base di tutto, dall’applicazione all’infrastruttura: sempre più spesso vengono utilizzati elementi open source riutilizzati più e più volte dagli sviluppatori come elementi standard.
Per questo motivo, portare la sicurezza “a sinistra”, nella fase di codifica, significa poter risolvere problemi di sicurezza o vulnerabilità sin dall’inizio, prima che vadano in produzione su centinaia o migliaia di applicazioni, riducendo così il rischio di exploit da parte dei cyber criminali.
È fondamentale comprendere e adottare questo approccio per evitare ulteriori violazioni di dati nel settore tecnologico, che possono provocare perdite di informazioni dei clienti e danni alla reputazione, con impatto sul successo stesso del business.
Approccio Shift-Left vs Zero Trust
È importante ricordare che l’insicurezza ha un costo elevato. Tuttavia, non è corretto considerare la sicurezza shift-left come “l’unico elemento necessario per essere protetti”, come se fosse una panacea per tutti i problemi.
Infatti, questa teoria ostacola l’approccio Zero Trust, poiché presume fiducia implicita nei confronti dello sviluppatore e delle sue capacità di codifica. Zero Trust è emerso come la strategia di sicurezza più diffusa, basata appunto sul concetto di eliminazione del trust implicito, verificando ogni transazione digitale, consentendo alle aziende di adottare un approccio olistico alla sicurezza che verifica credibilità e autenticità di tutti gli utenti, dispositivi e sistemi che interagiscono con le loro reti e dati.
Con l’intensificarsi di attacchi cyber, le aziende si stanno rendendo conto che Zero Trust sta diventando essenziale per la sopravvivenza del business.
L’efficacia del processo Shift-Left potrebbe risentire anche dell’impatto causato dalla carenza di competenze e pratiche standard per lo sviluppo delle applicazioni in un moderno reparto DevOps, in particolare per quanto riguarda la catena di fornitura del codice (pacchetti open source e drift) o gli strumenti di integrazione (Git, CI/CD ecc.), creando ulteriori rischi.
Ad esempio, se l’archivio dati di un’azienda è liberamente accessibile su Internet, e ritiene non sia un problema perché le informazioni sono crittografate, dovrà essere consapevole del fatto che i criminali informatici potranno farne una copia e, successivamente, lavorare per decifrarle.
Elementi da considerare nell’adozione della sicurezza Shift-Left
Introdurre la sicurezza Shift-Left all’interno di un programma SDLC è quindi una priorità a cui i dirigenti dovrebbero prestare attenzione.
La presenza persistente dei team di sviluppo, che non solo creano applicazioni business-critical, ma ne gestiscono ogni fase, dalla codifica alla compilazione, ai test fino alle esigenze infrastrutturali con codice aggiuntivo, rappresenta un livello di controllo e influenza straordinari.
Estendere la sicurezza a tutti i flussi di lavoro dei team di sviluppo è il concetto della sicurezza Shift-Left, ma sarebbe estremamente rischioso abbandonare o screditare le misure di protezione delle fasi successive, quelle del cosiddetto “lato destro”.
La sicurezza deve essere presente lungo l’intero ciclo di vita, dalla creazione del codice allo staging della distribuzione circostante, fino all’applicazione e all’ambiente che la gestisce.
Il giusto approccio alla sicurezza Shift-Left
Come affrontare questo processo con il giusto approccio? Le aziende dovrebbero porsi le seguenti domande, al fine di definire al meglio tutte le strategie e le misure da mettere in atto:
- Come inserire tutte le fasi SDLC nel programma di sicurezza, senza creare un enorme sovraccarico di nuovi strumenti da imparare per ogni livello? Come consentire al team di sviluppo di correggere semplici errori di sicurezza senza ritardare o bloccare la loro capacità di rilasciare applicazioni e aggiornamenti critici?
- È necessaria un’integrazione negli strumenti e nei workflow utilizzati dal team di sviluppo per codificare, aggregare, testare e distribuire. Come raggiungere questo risultato rispondendo alle esigenze sopra elencate?
- Supponendo che qualcosa venga distribuito in modo non sicuro, come inviare la richiesta di correzione nel flusso di lavoro, includendo automaticamente le modifiche alla codifica?
- Esistono piattaforme in grado di gestire la sicurezza Shift-Left, di proteggere l’ambiente di runtime e di alimentare operazioni di security, governance e conformità? I flussi di lavoro degli infrastructure architect sono in grado di fornire visibilità, protezione e livelli di auditing per l’intero panorama applicativo?
Le aziende dovrebbero quindi spostare la sicurezza a sinistra in modo corretto, confrontandosi con gli sviluppatori, incorporando processi e strumenti di sicurezza nell’intero ciclo di vita dello sviluppo del software da utilizzare e riducendo i cicli di feedback per la remediation.
In questo modo, i team di security possono trasferire le attività di sicurezza agli sviluppatori, ottenendo visibilità e controllo per concentrarsi sulla mitigazione del rischio, garantendo risposte efficienti ad attacchi o minacce.
Conclusioni
Qualsiasi iniziativa di sicurezza si desideri realizzare ha la necessità di essere supportata da una “cultura” della cyber security, che le aziende devono costruire con e tra i dipendenti, condividendo conoscenze, processi, policy e valori che li supportino a considerarla come parte integrante delle loro responsabilità quotidiane.
Con la sempre più rapida adozione della trasformazione digitale, le aziende devono continuamente riadattare la propria cultura della sicurezza in risposta all’evoluzione delle superfici di attacco e delle nuove minacce, ma la semplice implementazione di controlli tecnologici non è più sufficiente a proteggere un’azienda.
Per questo sarà necessario promuovere un cambiamento di mentalità in materia di sicurezza, incoraggiandone la consapevolezza, continuando a sviluppare una cultura allineata all’ambiente operativo, al fine che tutti i dipendenti si sentano realmente una linea di difesa strategica per la propria azienda.
Cyber minacce e incidenti informatici: attiva la tua resilienza in 10 step
@RIPRODUZIONE RISERVATA