Il gap che separa gli sviluppatori e gli esperti della sicurezza applicativa, finora ostacolo principale alla diffusione di buone pratiche di Application Security, tende via via a ridursi ma permangono elementi a cui fare attenzione.
E’ quanto emerge dall’indagine annuale di SANS sulla sicurezza applicative (2015 State of Application Security Survey, Closing the Gap), che quest’anno ha un campione di 435 rispondenti, sia sviluppatori (35% delle risposte) sia security team (65% delle risposte) – 2 gruppi che secondo SANS dovrebbero lavorare a più stretto contatto per la realizzazione di applicazioni affidabili e sicure.
Al giorno d’oggi, a causa dei numerosi attacchi di elevato profilo che colpiscono le applicazioni enterprise, soprattutto se esposte sul web, la comunità degli sviluppatori è molto più attenta al tema dello sviluppo sicuro del software ed è consapevole di alcune categorie di rischio – in particolare quelle che riguardano i linguaggi di sviluppo più popolari (Java e .NET).
Ciò nonostante permangono ancora oggi approcci poco allineati tra chi sviluppa il software e chi si preoccupa della sua sicurezza. Ad esempio gli sviluppatori tendono a non riconosce come proprio il problema e ad assegnare “a qualcun altro” gli aspetti di sicurezza. Invece, i team della security tendono a “imporre” il proprio punto di vista con “attività di compliance” e Penetration Test realizzati ex post, piuttosto che (sarebbe molto meglio) costruire insieme agli sviluppatori un programma di “security by design” che punti a incorporare la sicurezza nelle attività di sviluppo fin dal loro inizio.
Dall’indagine SANS di quest’anno risulta che sviluppatori ed esperti di sicurezza continuano a essere separati da obiettivi diversi. Gli aspetti di security testing sulle applicazioni sono ancora svolti da esperti e in una minoranza di casi coinvolgono i responsabili della Quality Assurance o dello sviluppo (rispettivamente al 22,4% o al 21,6% delle risposte, vedi la tabella successiva).
Fonte: SANS 2015 State of Application Security Survey, Closing the Gap
Gli sviluppatori affermano di avere difficoltà nel rilascio di software sicuro perché:
- Devono focalizzarsi principalmente sulla velocità di delivery e sul time-to-market
- Non hanno competenze e strumenti per l’AppSec
- Non sono supportati in questa direzione dal management.
Invece i team di security incontrano i seguenti ostacoli:
- Hanno paura di danneggiare irrimediabilmente le applicazioni nel momento in cui risolvono vulnerabilità del software
- Hanno difficoltà a identificare tutte le applicazione nel portfolio completo
- Sono ostacolati nelle loro attività da barriere/silos tra aree deputate allo sviluppo, sicurezza e il resto dell’organizzazione.
Fonte: SANS 2015 State of Application Security Survey, Closing the Gap
Come emerso anche in precedenti indagini realizzate da SANS, le principali preoccupazioni delle aziende per quanto riguarda la sicurezza applicativa sono oggi rivolte agli ambienti web, seguiti, ma ancora a grande distanza, dalle App mobile (che cominciano a essere sviluppate da oltre la metà delle aziende analizzate), applicazione in private cloud, in public cloud, API abilitanti aspetti mobile e cloud.
Fonte: SANS 2015 State of Application Security Survey, Closing the Gap
Per quanto riguarda invece i linguaggi di sviluppo, le risposte mostrano una netta tendenza a considerare maggiormente rischioso Java, mentre .Net, pur essendo molto utilizzato, ha un livello di rischiosità pari agli altri linguaggi.
Fonte: SANS 2015 State of Application Security Survey, Closing the Gap
In conclusione, gli elementi che ancora frenano una buona collaborazione tra sviluppatori e team di sicurezza, e che quindi limitano la diffusione di best practices in questo ambito e il rilascio di software maggiormente affidabile e resiliente, sono:
- I due gruppi si muovono tuttora con priorità diverse
- Chi deve occuparsi della sicurezza applicativa ha difficoltà ad accedere a tutte le informazioni che gli servono – ad esempio non è neanche in grado di dire quali sono tutte le applicazioni in uso in azienda (un’informazione che gli sviluppatori potrebbero facilmente fornire)
- Nessuno all’interno dei 2 gruppi conosce molto bene quali sono i compiti dell’altro gruppo – quindi difficilmente hanno punti di contatto.
A cura di: Elena Vaciago, The Innovation Group
Per maggiori indicazioni sulle strategie di Sicurezza Applicativa (principali standard utilizzati, driver per l’avvio di un programma di AppSec, come introdurre AppSec nel software LifeCycle, budget e attività di AppSec)
Leggi tutto