Skip to main content

Il rilascio di nuove tecnologie e software è in continua crescita e di conseguenza con esso anche gli attacchi cyber; nel mentre, la situazione italiana rivela un quadro in netto peggioramento sul fronte sicurezza: quali possono essere le contromisure e come creare un software davvero sicuro?
Bisogna abbandonare una visione concentrata solo sui difetti funzionali e sulle performance del software e abbracciare invece una visione integrata, che pone le basi per un ciclo di vita del software in grado di garantire una adeguata sicurezza all’ecosistema digitale: questo non solo è in linea con il buon senso, ma anche con gli obblighi di legge.
In Intesys abbiamo definito una metodologia per implementare un ciclo di vita di sviluppo di software sicuro (SSDLC): ve ne parliamo in questo nuovo articolo.

Attacchi cyber e incidenti di sicurezza: come difendersi adeguatamente?

“L’Italia nel mirino degli hacker: +169% gli attacchi nel 2022 rispetto al 2021. A livello mondiale la crescita è del 21%.”

Così cita il titolo del rapporto Clusit 2023 : non si tratta di un titolo clickbait, bensì di un chiaro segnale di una problematica non più trascurabile.

Il rapporto continua sottolineando che, dal 2018 al 2022, a livello globale la crescita degli attacchi cyber è aumentata del 60%: di fronte a una forte digitalizzazione e al rilascio continuo di nuove tecnologie e applicativi, gli attacchi cyber e gli incidenti di sicurezza sono aumentati di conseguenza. Ciò che però non è cresciuto in modo adeguato sono le contromisure adottate dalle aziende per mettere in sicurezza il proprio ecosistema tecnologico.

Una delle motivazioni è che le aziende spesso si concentrano sulle performance applicative del software o sulle correzioni di difetti funzionali, trascurando una visione a 360° della sicurezza del software in tutte le fasi di creazione, gestione ed esecuzione, a partire dal codice.

La sicurezza informatica, infatti, deve riguardare un insieme di regole atte a proteggere tutto l’ambiente IT, includendo non solo gli applicativi, le reti e gli utenti, ma anche tutti i processi e i team che vi sono dietro tramite una visione integrata.

In questa direzione troviamo anche l’appello della comunità OWASP6 che invita le organizzazioni ad accrescere la consapevolezza a tutto tondo su queste tematiche, oltre ad agire e a porre in essere tutte le misure e le strategie atte sia a ridurre che a prevenire rischi e attacchi informatici.

Inoltre, è bene ricordare che non sono solo consigli o inviti ad agire con buone pratiche, ma agire in modo sistematico per la sicurezza informatica è anche un obbligo di legge: il Regolamento UE 679/2016 (il GDPR) dispone che i titolari dei dati personali debbano adottare tutte le misure tecniche e organizzative idonee a garantire un livello di sicurezza adeguato.

Sviluppo di Software Sicuro e GDPR Compliant:

SCOPRI LE NOSTRE METODOLOGIE E PROCEDURE

L’approccio AGID per un software sicuro

L’AGID suggerisce come approccio migliore, per affrontare questo percorso di messa in sicurezza, il sistema Defence in Depth: tradotto significa letteralmente “difesa in profondità” e infatti è proprio un approccio da abbracciare per mettere in sicurezza ogni singola componente di un sistema informatico. Per fare questo occorre studiare un piano di azione che disponga di diverse misure e che si basi sulla integrazione di diversi soggetti e oggetti, inclusi in persone, tecnologie e modalità operative.

L’approccio in questione è quello che adottiamo anche in Intesys.

Abbiamo definito il nostro processo di sviluppo di software codificando una metodologia che tiene conto di diversi requisiti, misure e controlli e che viene condivisa a tutta l’organizzazione in modo tale che tutti siano a conoscenza delle metodologie e delle attività da porre in essere quando si lavora ad un software per renderlo conforme alle regole ISO 270001 e del GDPR, oltre che a garantire ai nostri clienti un software dagli alti standard di sicurezza.

Il ciclo di vita di un software sicuro: le nostre fasi

Ogni progetto che prevede il rilascio di un software è un lavoro trasversale che include diverse fasi e il contributo di diversi team e business unit: per questo motivo abbiamo preparato un progetto standardizzato aperto e condivisibile che copre tutte le fasi dallo sviluppo, alla documentazione, fino ad arrivare al deployement e alla gestione e proposta commerciale del software.

Le fasi che abbiamo predisposto sono:

1

Redazione di una documentazione di progetto standardizzata

2

Analisi del rischio di progetto

3

Automazione e standardizzazione del processo di sviluppo

4

Analisi statica del codice

5

Analisi delle vulnerabilità di sicurezza del codice di terze parti

6

Gestione del ciclo di vita del software in sicurezza dallo sviluppo alla proposta commerciale

Non ci soffermeremo qui su ogni singola fase: ne parliamo nel dettaglio nella nostra pagina dedicata e nel nostro documento Sviluppo di Software Sicuro e GDPR Compliant, rilasciato sotto licenza Creative Commons, che potete scaricare, utilizzare e condividere con Obbligo di Attribuzione, senza modifiche e senza fini commerciali.

APPROFONDISCI IL NOSTRO SECURE SOFTWARE LIFECYCLE

Ciò che è importante sottolineare è l’approccio dietro le fasi. Rispondendo al titolo di questo articolo: un software sicuro può esistere, ma solo se vengono identificate le minacce per ogni singola funzione del progetto, se viene calcolato il rischio per ogni minaccia e di conseguenza studiate preventivamente tutte le contromisure necessarie.

Vediamo per esempio la nostra gestione della fase di analisi del rischio:

Tabella di analisi del rischio

Abbiamo utilizzato il modello STRIDE per individuare le minacce.

STRIDE è l’acronimo delle minacce:

Spoofing (esteso più in generale ad "accesso non consentito")

Tampering (esteso anche a "dati resi indisponibili")

Repudiation

Information disclosure (privacy breach/data leak)

Denial of service

Elevation of privilege (esteso più in generale a "autorizzazione non coerente")

Dopodiché, per ciascuna di queste sei minacce, calcoliamo il suo livello di rischio che – tenendo conto dell’impatto e della probabilità – può essere basso, medio o alto.

Le nostre misure di sicurezza, quindi, saranno proporzionate a ciascun livello di rischio.

Tabella calcolo livello di rischio

Ad esempio, in un settore come quello bancario, la minaccia di spoofing può avere un impatto elevato, data la tipologia di dati personali trattati, e di conseguenza anche il livello di rischio risulterà tale. Per questo affianchiamo a questo tipo di rischi delle misure di sicurezza che siano all’altezza, come in questo caso l’adozione della Multifactor Authentication.

Concludendo, per rendere alti i livelli di sicurezza di un software è importante intanto essere consapevoli dei rischi correnti, essere a conoscenza degli obblighi di legge, studiare un piano strategico che si compone di diverse fasi per ogni passaggio, e investire tanto in know how, formazione e condivisione e comunicazione dei processi e delle regole.

Scopri il nostro approccio aperto e sostenibile a sostegno dello sviluppo del Codice Sicuro:

SCOPRI DI PIÙ
3.7/5.0 Article rating
3 Reviews
Cosa ne pensi dell'articolo?
  1. Amazing
  2. Good
  3. Bad
  4. Meh
  5. Pff
Ilario Gavioli
IT expert e General Manager Intesys

Dal 1995, Ilario predispone la strategia e identifica le tecnologie su cui focalizzare le attività in funzione dei piani di business delle aziende.

NEWSLETTER