La software security è l’esito finale di un processo articolato nel quale intervengono molti fattori, da una cultura aziendale incentrata sulla sicurezza all’adozione di misure tecniche proporzionate ai rischi effettivi. Un passaggio chiave è la definizione dei requisiti di sicurezza informatica del sistema IT che si andrà a realizzare; in questo approfondimento, vediamo cosa sono e che ruolo hanno in un progetto software, come si definiscono e qual è il valore di Intesys in questo scenario.
Requisiti di sicurezza informatica, il fondamento di ogni software sicuro
Per definizione, i requisiti di sicurezza informatica sono le condizioni specifiche che un sistema IT deve soddisfare per gestire al meglio i rischi di sicurezza cui è soggetto. Parliamo dunque di prevenzione delle minacce cyber, di eventi imprevisti, di vulnerabilità, errori umani e molto altro, un vero e proprio ecosistema di fattori interni ed esterni che ogni giorno minacciano i software su cui le organizzazioni basano il loro business e la loro operatività.
Definire i requisiti di sicurezza è dunque fondamentale in ogni progetto software, perché la resilienza, la disponibilità delle applicazioni e la loro capacità di proteggere le informazioni degli utenti sono essenziali per il successo e la reputazione di qualsiasi azienda, oltre a fornire garanzie di compliance con una normativa sempre più complessa e articolata.
La definizione dei requisiti di sicurezza informatica deve essere quindi una delle prime fasi del ciclo di vita del software, visto che orienterà l’intero percorso successivo, dalle scelte architetturali a quelle tecnologiche, fino alle misure di sicurezza specifiche da integrare e monitorare sia a livello infrastrutturale che applicativo.
Caratteristiche e peculiarità dei requisiti di sicurezza informatica
Ogni azienda che intraprende un percorso di sviluppo sicuro del software deve dunque definire con priorità i requisiti di sicurezza. Ciò è tutt’altro che banale, perché essi dipendono da un’infinità di fattori: il contesto legale e normativo in cui opera l’azienda e in cui il software andrà ad agire, le sue funzionalità, le tipologie di dati che il sistema acquisirà, il contesto delle minacce informatiche (cyber) esistenti, le specifiche esigenze degli utenti e molto altro.
L’azienda, in particolare, deve farsi carico della definizione di due tipologie di requisiti di sicurezza informatica:
Da quanto detto, risulta palese come la stesura dei requisiti di sicurezza sia un lavoro corale che coinvolge diverse divisioni aziendali, con l’IT e l’area legal & compliance in prima linea ma senza trascurare chi conosce al meglio i bisogni degli utenti, come potrebbero essere l’HR per un applicativo interno o il marketing per un software customer-facing.
Infine, i requisiti devono essere misurabili. Ovvero, devono essere definiti (anche) dei meccanismi di verifica della loro concreta implementazione ed efficacia all’interno del sistema. Solo in questo modo, infatti, è possibile garantire che le misure di sicurezza siano effettivamente operative e che rispondano agli standard previsti.
Come definire i requisiti di sicurezza informatica: la centralità del threat model
Finora abbiamo visto cosa va fatto, ovvero abbiamo definito la responsabilità dell’azienda nell’ambito dei requisiti di sicurezza informatica. Ora facciamo un passo avanti e vediamo come definirli e qual è il contributo di Intesys in quest’ambito.
Si è già fatto cenno a tutta la complessità che circonda l’argomento, ai molteplici fattori di rischio e alla necessità di uno sforzo corale che tenga conto di diverse dimensioni di analisi. In casi come questo, è però fondamentale avere (anche) un punto di riferimento metodologico che guidi l’azienda verso la definizione dei requisiti: nella fattispecie, questo è il threat model.
Un threat model è un modello di analisi il cui fine è identificare e valutare le minacce alla sicurezza di un sistema software. Ha un ruolo chiave nella definizione dei requisiti di sicurezza informatica perché fornisce una base metodologica concreta sulla quale sviluppare dei requisiti di sicurezza specifici e pertinenti alle reali necessità del sistema che si sta progettando. In sua assenza, i requisiti rischiano di essere generici, incompleti, non allineati al contesto normativo e/o ai veri rischi a cui il sistema sarà esposto.
Sebbene qualsiasi azienda possa crearsi il proprio threat model, esistono dei framework di comprovata efficacia in grado di guidare questo processo. Ad esempio, in Intesys ci affidiamo al framework STRIDE, che identifica sei categorie di minacce (Spoofing, Tampering, Repudiation, Information Disclosure, Denial of Service e Elevation of Privilege) per garantire una copertura completa dei potenziali rischi.
Intesys, un supporto completo per lo sviluppo di software sicuro
Qual è, dunque, il ruolo di Intesys in questo ambito? In condizioni ideali, il nostro cliente definisce autonomamente i requisiti di sicurezza informatica e li può condividere con noi all’inizio del progetto di sviluppo. In tal caso, utilizziamo i requisiti come base per valutare la fattibilità del progetto, per esaminare gli aspetti commerciali e di costo, nonché per condurre analisi architetturali e tecnologiche finalizzate a soddisfarli.
Il risultato, ovvero il software sicuro, non è soltanto il frutto delle nostre competenze e dell’esperienza accumulata negli anni, ma anche del nostro approccio, che integra la sicurezza in ogni fase del ciclo di vita del software (Security by Design).
Uno degli elementi distintivi del Gruppo Intesys è poi la capacità di gestire in modo integrato tutti i fattori che influenzano la sicurezza del software. Grazie alla sinergia tra Intesys e Intesys Networking, siamo infatti in grado di intervenire a livello applicativo, con un’accurata analisi del rischio e processi specifici per il ciclo di vita del software sicuro, ma anche sulle componenti architetturali e infrastrutturali. Lo sviluppo di codice sicuro, infatti, è un concetto olistico: può essere garantito solo se ogni componente che lo influenza è gestito correttamente e rientra in un unico modello integrato. Il nostro approccio assicura non soltanto più sicurezza, ma anche tutti i benefici di avere di un solo interlocutore, che si traducono in più efficienza, reattività, capacità collaborativa e razionalizzazione dei costi.
Non da ultimo, esiste comunque la possibilità – a dire il vero, piuttosto frequente – che il cliente non abbia (ancora) definito i requisiti di sicurezza informatica all’inizio delle attività progettuali. Integrarli in un secondo momento può compromettere l’efficienza dell’intero progetto, portando a un allungamento dei tempi e a un incremento dei costi. Per questo motivo, in Intesys possiamo supportare i clienti nella definizione dei requisiti attraverso un’attività consulenziale mirata, che si basa su procedure collaudate, sull’immancabile esperienza e su framework di riferimento come STRIDE; questo ci permette non soltanto di garantire migliori risultati a tutti i nostri clienti, ma anche di migliorare il loro approccio e la loro consapevolezza circa la sicurezza IT.