Sicurezza delle app: un elefante nella stanza del cloud

redazione

C’è una domanda nascosta che tutti si fanno, ma nessuno fino a oggi ha avuto il coraggio di rivolgere apertamente. Si tratta di un aspetto che può sembrare banale, quel qualcosa di cui non si parla mai, forse per non sembrare “retrogradi”. In realtà il motivo è che molti non sanno la risposta, o almeno non amano parlare di questo tema.

Prendete le giuste precauzioni quando utilizzate il cloud? Ovvero, proteggete le applicazioni nel cloud dalle minacce e dagli attacchi? Non intendo in termini di gestione delle identità e degli accessi, di sicurezza del network o di crittografia, ma degli aspetti legati alla sicurezza delle applicazioni nel cloud nella sua interezza.

 

È sorprendente come oggi nella vastità di Internet siano disponibili moltissimi documenti, ricerche, suggerimenti e discussioni generali sulla "sicurezza nel cloud" ma pochissimi di essi menzionino le parole "sicurezza delle app". Posso trovare sondaggi e statistiche sull’utilizzo della crittografia, su chi dovrebbe (e non lo fa) proteggere i dati nel cloud, e chi utilizza quale tipo di soluzione di gestione delle identità e degli accessi per controllare l’accesso alle app ovunque e in qualsiasi momento. Ma sul tema della sicurezza delle applicazioni? Non si trova nulla!

 

Il che è davvero inquietante dato che le applicazioni web sono, ad esempio, la seconda causa principale di incidenti di sicurezza per le aziende che offrono servizi finanziari, secondo l’ultimo Data Breach Investigation Report (DBI) di Verizon. È altrettanto sorprendente, analizzando le prime 25 tipologie di violazioni di questo secolo, scoprire che quasi metà di esse (44%) sono state eseguite attraverso un’applicazione web. Tutto questo è decisamente sconfortante perché sembra che ci sia una correlazione tra una minore attenzione alla sicurezza e la migrazione delle applicazioni nel cloud.

 

La realtà è che la crittografia non è la panacea. E non lo è nemmeno la sicurezza del network o l’identity and access management! Si tratta di approcci tutti validi ma che, individualmente, sono solo parte di un sistema di protezione molto più grande. Uno schema di protezione che dovrebbe – ma spesso non lo fa – includere nel proprio mix la protezione delle applicazioni.

 

La sicurezza di rete non riuscirà a fermare un attacco HTTP DDoS. La gestione delle identità e degli accessi non riuscirà a fare nulla contro lo sfruttamento di vulnerabilità della piattaforma web, come nel caso di Heartbleed o Apache Killer. La crittografia non potrà fermare un SQLI, cripterà semplicemente il codice maligno ivi nascosto rispetto alla miriade di servizi in rete progettati per scovarlo.

L’applicazione è, per sua stessa natura, una risorsa rivolta al pubblico. La esponiamo esternamente e stiamo ad aspettare, intanto incoraggiamo, invogliamo, e a volte preghiamo che i consumatori inizino a interagire con essa utilizzandola, installandola e visitandola spesso.

Viviamo nel mondo delle applicazioni, significa che le applicazioni sono fondamentali per ogni aspetto del business, sia quando è rivolto direttamente ai consumatori, sia nel caso di sistemi per i dipendenti o di esecuzione interna. Oggi affidiamo alle applicazioni quasi tutte le nostre attività, ma quando si tratta di sicurezza sembra che non ce ne ricordiamo.

 

È davvero giunta l’ora di iniziare a prestare maggiore attenzione alla sicurezza delle applicazioni e non solo alla sicurezza dei dati, delle reti o alla crittografia. Certo, i dati rappresentano l’aspetto più vulnerabile quando vengono processati dall’applicazione ed è evidente che – a quel punto – sono completamente sotto il controllo dell’applicazione. L’applicazione può visualizzarli, modificarli, e consegnarli a chiunque (e in prospettiva ci riferiamo a qualsiasi oggetto, dando così il via all’aumento di bot, spider e malware).

 

La conclusione è che dobbiamo prestare più attenzione alla protezione delle applicazioni contro gli exploit e gli attacchi. Dalla piattaforma (il server web o app) ai protocolli (TCP e HTTP) fino al codice vero e proprio. Abbiamo bisogno di analizzare in profondità il sistema per proteggerlo dalla miriade di metodi utilizzati dai cyber-criminali per sfruttare l’intero stack applicativo.

Secondo F-Secure Labs, gli attacchi alle applicazioni web sono raddoppiati in quanto a frequenza, da meno del 20% nel 2012 al 40% nel 2013; Neustar ha scoperto che nel 2014 il 55% degli obiettivi che hanno subito un attacco DDoS ha sperimentato uno smokescreening (un attacco DDoS volumetrico come copertura strategica e preventiva per attacchi reali a livello applicativo), dove quasi il 50% di target colpiti aveva installato il malware / virus e nel 26% dei casi l’attacco ha comportato la perdita di dati dei clienti.

 

Gli attacchi alle applicazioni sono quindi una minaccia vera e significativa, soprattutto quando si migra verso il cloud in cui è possibile che siano disponibili un numero minore di opzioni per la loro protezione. La sicurezza delle applicazioni può sembrare assolutamente fuori luogo; come un elefante nel cloud!

I servizi nativi nel cloud focalizzati sulla sicurezza si occupano tutti di accesso e crittografia. Nessuno di loro prende in carico la sicurezza del livello applicativo e nessuno fornisce una copertura sufficiente a dare fiducia quando si tratta di resistere a un attacco progettato per disabilitare, alterare o sottrarre dati sfruttando l’applicazione stessa.

È necessaria un’altra soluzione; un servizio progettato appositamente per proteggere le applicazioni e i dati di cui è responsabile perché la gestione nel cloud avvenga proprio come quella nel data center. Questa scelta può comportare l’adozione di un WAF (web application firewall) cloud-enabled o WAF as a Service o come minimo un’applicazione approfondita delle best practice maggiormente raccomandate da OWASP su ogni applicazione distribuita nel cloud.

La sicurezza nel cloud può essere vista come una responsabilità condivisa, dove il fornitore e il cliente si prendono cura dei diversi aspetti della protezione del cloud, ma la sicurezza delle applicazioni è al 110 per cento responsabilità di chi per la prima volta mette quella singola applicazione nel cloud!

“In AWS la sicurezza è una responsabilità condivisa tra noi e i clienti", ha dichiarato. “I clienti sono responsabili della protezione di tutto, dal sistema operativo guest che fanno eseguire su AWS attraverso le applicazioni che attivano. Noi invece siamo responsabili del sistema operativo host e della macchina virtuale e di tutto giù ciò che riporta concretamente al livello del data center.” “Spesso mi chiedono ‘Che cosa ti tiene sveglio la notte?’ In AWS è la preoccupazione che il cliente non abbia configurato correttamente le proprie applicazioni per mantenerle sicure”.

In sintesi, bisogna considerare attentamente quali servizi e soluzioni si stanno distribuendo per proteggere le applicazioni da quello che comporterà un attacco che – inevitabilmente – prima o poi colpirà i sistemi. La sicurezza delle applicazioni non è una guardia del corpo costosa, qualcosa che solo le applicazioni VIP possono permettersi. È più simile alla sicurezza personale, quel qualcosa che ogni applicazione che si presenta in pubblico dovrebbe avere con sé. E questo è vero indipendentemente dal fatto che le applicazioni siano nel data center o nel cloud.