Nota: Se stai leggendo questo messaggio è perchè non vedi i nostri file css, oppure perchè non hai un browser "standards-compliant browser". Leggi l'aiuto.

TechTarget Italy & 01net Network SearchCIO.it SearchNetworking.it SearchSecurity.it 01net 01netCIO 01netPMI 01netTRADE 01netNETS iTechStudio Digifocus Applicando CIO Club ProntoImprese IlSoftware
Cerca
in
Come trovare le vulnerabilità nelle applicazioni Web
Trucchi e suggerimenti
Come trovare le vulnerabilità nelle applicazioni Web
Tre buone ragioni per valutare l'utilizzo dei Web Application Scanner, che in automatico vanno alla ricerca di bug di sicurezza nel codice.
10 Dicembre 2007

Le organizzazioni di ogni dimensione utilizzano le applicazioni Web per fornire servizi ed espandere i processi aziendali. Proprio per questo motivo, i cracker sono sempre alla ricerca dei punti deboli all'interno di tali applicazioni online, dato che rappresentano un modo per arrivare ai preziosi database di back-end. Con l'avvento delle funzioni Web 2.0, tra cui blog, wiki, RSS e altre avanzate tecnologie Internet, le applicazioni Web sono diventate potenti e complesse e sono in costante evoluzione. E ciò non fa che aumentare il rischio di nuove vulnerabilità all'interno di un'applicazione.

Per aiutare gli sviluppatori a rintracciare e individuare potenziali falle nella sicurezza, esiste una miriade di strumenti chiamati scanner delle vulnerabilità delle applicazioni Web. Il loro obiettivo è di automatizzare e accelerare un processo che, quando eseguito manualmente, richiede parecchio tempo e deve essere molto accurato. Dopo essere penetrato all'interno di un sito Web e aver simulato vari scenari di attacco, lo scanner confronta le risposte delle applicazioni con le informazioni nel database delle signature delle vulnerabilità di security.

Nonostante la loro utilità, gli scanner delle vulnerabilità delle applicazioni Web non sono diventati un must per ogni team di sviluppo, soprattutto a causa dei costi elevati. Ma ci sono alcuni buoni scanner open source disponibili gratuitamente. In questo articolo, vedremo tre altre buone ragioni per adottare uno scanner delle vulnerabilità delle applicazioni Web.

1) Molte possibilità di scelta
Un problema che hanno molti potenziali acquirenti è la difficoltà di confrontare i diversi scanner e quindi fare una scelta. Nessuno scanner sembra in grado di fare tutto, o soddisfare sia le esigenze di budget sia le caratteristiche richieste da una particolare piattaforma di applicazione. Tuttavia, in questo settore l'aiuto è sempre a portata di mano. Sono infatti disponibili alcuni criteri di valutazione che forniscono precise linee guida per verificare l'efficacia di uno scanner delle vulnerabilità delle applicazioni Web.

2) Un Web Application Scanner ha un suo campo d'azione
Gli scanner non sono ancora entrati in azienda. E questo in parte dipende dal fatto che individuano solo problemi di sicurezza della rete “conosciuti”, quelli a cui è stata già assegnata una signature. L'eccessiva enfasi creata circa quello che può fare lo scanner ha portato a irrealistiche aspettative da parte degli utenti. Nonostante siano validi strumenti per identificare comuni vulnerabilità tecniche, come l'injection SQL, lo scripting cross site, la manipolazione dei campi nascosti, i backdoor, le opzioni di debug e i buffer overflow, i tool da soli non possono eseguire un'intera valutazione delle vulnerabilità.

I codici Web personalizzati sono infatti un argomento a parte. Il codice di un'applicazione personalizzata di un sito Web è un pericoloso punto di insicurezza, soprattutto se si utilizza Ajax, in quanto ciascuna delle sue funzioni lato server rappresenta un ulteriore potenziale punto di attacco per gli hacker. Con così tante opportunità di interazione con l'utente e il servizio, questi particolari tipi di applicazioni rendono difficile automatizzare la fase di test, dal momento che alcune vulnerabilità possono passare indenni un controllo dello scanner.

3) Gli scanner non possono lavorare da soli
Fino a che gli scanner non disporranno di una vera intelligenza artificiale, faranno sempre fatica a individuare alcuni tipi di vulnerabilità. Gli scanner sono in grado di elaborare solo informazioni sintattiche e non possono affrontare  - secondo un processo metodico - le anomalie o formulare qualsiasi giudizio di merito. Fino a quando la tecnologia non potrà "improvvisare" o trarre conclusioni intuitive, il computer non sarà assolutamente in grado di effettuare considerazioni analitiche per determinare, per esempio, i dati che sono trapelati.

Solo gli esperti di sicurezza sanno come identificare difetti inerenti logica di business, perché sanno come contestualizzare questi tipi di vulnerabilità.

Il ruolo degli scanner all'interno del ciclo di sviluppo del software
Gli scanner per la sicurezza delle applicazioni hanno un preciso ruolo da svolgere nel ciclo di sviluppo del software. Questi tool possono trovare rapidamente comuni errori di programmazione, lasciando più tempo agli sviluppatori per effettuare l'analisi e il test del codice. Uno scanner ideale dovrebbe avere aggiornamenti regolari, che facilitino l'individuazione degli ultimi problemi noti, e dovrebbe essere utilizzabile in tutto il ciclo di vita dello sviluppo applicativo e non solo sul prodotto finito.

Per essere efficace, una scansione dovrebbe poter utilizzare tutte le informazioni disponibili per costruire la base dei controlli successivi. Dovrebbe inoltre consentire una combinazione di analisi manuale e automatica. Per esempio, utilizzando uno scanner che consente la visualizzazione, la modifica e la registrazione delle richieste e delle risposte HTTP/HTTPS, gli sviluppatori possono controllare il comportamento dell'applicazione mentre questa viene eseguita o nel corso di una successiva revisione. Infine, i report delle scansioni dovrebbero essere facilmente comprensibili; lo scanner stesso dovrebbe essere semplice da usare e dovrebbero esistere anche chiare linee guida su ciò che il tool può e non può controllare. Queste caratteristiche sono tutte disponibili ma su scanner diversi, oggi nessuno scanner le possiede tutte.

Risulta evidente che bisogna investire del tempo per ottenere da uno scanner il meglio di quello che può dare. Tuttavia, il costo che si dovrebbe sostenere per individuare eventuali vulnerabilità in un ambiente di produzione suggerisce di prendere in seria considerazione le applicazione di test.

Il Sole 24 ORE S.p.A.

Sede Legale in Milano, Via Monte Rosa, 91 - Sede Operativa: Via Carlo Pisacane, 1 - Pero (MI)

Partita Iva - Codice Fiscale 00777910159 - Dati societari