Ecco come il cloud aiuta la PA a soddisfare i nuovi obblighi normativi: le iniziative
Molte norme nuove impongono da parte delle PA l’adozione di crescenti misure di sicurezza. Tra queste, hanno un importante ruolo le misure atte a verificare e sanare le vulnerabilità delle applicazioni web. Le PA, tramite i servizi di SPC Lotto 2, hanno la possibilità di avvalersi di verifiche di vulnerabilità delle applicazioni web in modalità as a service
6 Luglio 2016
Cristiana Giansanti, IBM Security Senior IT Architect
I referenti della sicurezza nella PA italiana sono chiamati ad innalzare le misure di sicurezza a tutela della corretta implementazione dei controlli di sicurezza rispetto anche ad un insieme di normative che si vanno consolidando nel corso del 2016:
- La direttiva PCM 1 agosto 2015, che indirizza l’innalzamento delle misure di sicurezza Cyber per tutte le Amministrazioni e gli Organi dello Stato. Si richiedono standard di prevenzione e di reazione ad eventi cibernetici secondo una tempistica definita e comunque nel più breve tempo possibile. Agid sta emanando a tal proposito una specifica circolare che elencherà le misure minime di sicurezza per la PA.
- Il nuovo regolamento europeo Privacy, che impone misure di sicurezza più stringenti per il trattamento dei dati personali. Il testo propone un elevato e uniforme livello di tutela dei dati finalizzato a dare un maggiore controllo ai cittadini sull’utilizzo dei propri dati.
- Il Laboratorio Nazionale CINI di Cyber Security (Consorzio Inter-Universitario Nazionale per l’Informatica) il 4 febbraio 2016 ha rilasciato ufficialmente il Framework italiano di Cyber Security. Il framework non rappresenta un vero e proprio standard tecnologico di sicurezza, ha bensì l’obiettivo di fornire indicazioni di carattere metodologico legate al processo di gestione del Rischio Cyber. L’obiettivo è dunque la mitigazione degli effetti di eventuali possibili incidenti di sicurezza.
Le vulnerabilità del software e le best practices di riferimento
I nuovi progetti tecnologici dell’Agenda Digitale, così come i servizi digitali già a disposizione dei cittadini, sono continuamente esposti a tentativi di attacco sempre più sofisticati. Gli ultimi dati dei report di IBM X-Force, il team mondiale di ricerca e analisi di divulgazione delle vulnerabilità, registra che i principali attacchi cyber dal 2013 al 2015 sono stati veicolati attraverso vulnerabilità del software. Un adeguato programma di monitoraggio della sicurezza deve pertanto coprire tutte le fasi di sviluppo e manutenzione del software applicativo, sin dalla fase di pianificazione di progetto.
Durante la fase di disegno si introducono i requisiti di sicurezza dell’applicazione al fine di indirizzare lo sviluppo del software con approccio “Security-by design”.
Nella fase di sviluppo è considerata “best practice” di sicurezza l’esecuzione di test di individuazione di codice vulnerabile, test del codice sorgente (test statico), finalizzata a verificare la presenza di vulnerabilità note legate allo specifico linguaggio.
Nel passaggio in produzione e periodicamente durante i cicli di manutenzione, è importante eseguire i test delle applicazioni in esecuzione (test dinamici) per verificare il comportamento delle applicazioni medesime in risposta a tentativi automatici e massivi di attacco.
Infine le scansioni di rilevazione delle vulnerabilità delle infrastrutture a supporto del contesto applicativo completano le fasi di “controllo continuo del rischio”.
Servizi di sicurezza applicativa per le PA in modalità “as a service”
Le verifiche di vulnerabilità degli ambiti applicativi richiedono esperienze e competenze specifiche da parte del personale preposto all’esecuzione dei test. Nell’ambito della PA tali esperienze e competenze sono poco diffuse, pertanto la messa a disposizione di servizi di verifica delle vulnerabilità applicative erogati in modalità “as a service” tramite competenze specializzate, costituisce una grande opportunità per le PA italiane.
Diverse metodologie sono disponibili, tra le quali molto diffuse OWASP e OSSTMM, per la rilevazione delle eventuali vulnerabilità delle applicazioni tramite analisi statica e dinamica, eliminazione di falsi positivi, classificazione e reporting. Le aree di possibile intervento sono fondamentalmente:
- “Static Application Security Testing”: rilevazione delle vulnerabilità del codice sorgente, classificazione delle rilevanze per livello di criticità, indicazione delle porzioni di codice interessate e segnalazione degli interventi volti alla loro risoluzione.
- “Dynamic Application Security Testing”: test dinamici effettuati in ambiente di esecuzione delle applicazioni, analisi dei risultati e verifica delle vulnerabilità in considerazione dell’esposizione al rischio
- “Mobile Application Security Testing”: esecuzione di test mirati alle applicazioni di tipo mobile per la rilevazione delle vulnerabilità di sicurezza che possono essere sfruttate da un attaccante per compromettere i dati delle mobile app, la logica di business o il framework del dispositivo mobile identificando qualsiasi minaccia che mette a rischio l’applicazione e/o l’infrastruttura
- “Vulnerability Assessment”: rilevazione delle vulnerabilità relative alle infrastrutture, all’architettura e alle configurazioni dei sistemi oggetto dell’analisi, con esecuzione di test in grado di coprire le esigenze di sistemi complessi.
L’output di questi servizi è, tipicamente, in base agli oggetti esaminati, (ad es: file sorgente, eseguibili, applicazioni web in esecuzione, mobile app o altro), un “piano di rientro” che include le attività di remediation proposte per sanare le vulnerabilità rilevate, ridurre una specifica situazione di rischio e, di conseguenza, limitare il rischio residuo. Il piano è frutto di un attenta analisi da parte di specialisti di sicurezza applicativi che rielaborano i report prodotti dagli strumenti automatici ed eliminano tutte le vulnerabilità non sfruttabili (falsi positivi) e riclassificano quelle reali, aumentando così il grado di precisione e efficacia del servizio.
Tutte queste aree di intervento corrispondono ad attività che possono essere erogate “as a service” e fanno parte del catalogo previsto da SPC Lotto 2, che offre quindi alla PA la possibilità di usufruire di quelle competenze specializzate che abbiamo evidenziato come qualificanti per una corretta esecuzione dei test.
I servizi di verifica applicativa potranno essere utilizzati dalle PA ai fini di:
- Audit di conformità alle normative (verifica a campione di artefatti ed applicazioni)
- Monitoraggio del continuo miglioramento del livello di sicurezza dei servizi offerti ai cittadini.
- Controllo degli sviluppi sia interni che di terze parti (integrazione nel ciclo di vita dello sviluppo software)
- Monitoraggio dello stato di avanzamento dei piani di mitigazione dei rischi.
Tutte queste iniziative intendono agevolare un nuovo approccio proattivo alla sicurezza che può così, finalmente, diventare un asset strategico della PA, partendo dalla progettazione di nuove procedure o servizi, e garantendo in fase di erogazione un continuo monitoraggio e miglioramento dei servizi, mitigando il rischio cyber a vantaggio della sicurezza delle amministrazioni e della fiducia dei cittadini nei servizi da queste erogati.