Ricerca di vulnerabilità nelle componenti lato client di applicazioni Web 2.0

di: Redazione HTML.it     02 Maggio 2007

Questa è la traduzione dell'articolo Vulnerability Scanning Web 2.0 Client-Side Components di Shreeraj Shah pubblicato originariamente su SecurityFocus il 27 novembre 2006. La traduzione viene qui presentata con il consenso dell'editore.

Introduzione

Le cosiddette applicazioni Web 2.0 sono una combinazione di diverse tecnologie: Asynchronous JavaScript and XML (Ajax), Flash, JavaScript Object Notation (Json), Simple Object Access Protocol (Soap), Representational State Transfer (Rest). Tutte queste tecnologie, assieme all'accesso ai dati cross-domain, accrescono la complessità dell'applicazione. Stiamo assistendo, dunque, ad un potenziamento del browser che avviene attraverso il caricamento di nuovi programmi e librerie.

Tutti questi cambiamenti introducono nuovi problemi nelle attività di scansione di sicurezza, sia per gli utenti sia per i software. Il fine di questo articolo è quello di far comprendere i seguenti concetti e le seguenti tecniche:

  • La complessità di scansione e i problemi che ci sono nelle applicazioni web di nuova generazione
  • Gli obiettivi e le metodologie nella scansione di applicazioni Web 2.0
  • La scoperta di vulnerabilità in ambito Web 2.0 (in particolare gli XSS nei feed RSS)
  • L'injection cross-domain con Json
  • Le contromisure e le difese attraverso un sistema di filtraggio ottenibile per mezzo del browser

Complessità della scansione di sicurezza nel Web 2.0 

Le applicazioni Web 2.0 di nuova generazione sono molto complesse e impongono nuovi problemi nella scansione ai fini della sicurezza. La complessità può essere attribuita ai seguenti fattori:

  • Interfaccia lato client complessa. Ajax e Flash dotano le applicazioni web di ricche interfacce facendo uso di JavaScript e ActionScript, rendendo difficile identificare la logica dell'applicazione e le risorse critiche nascoste all'interno di questi script.
  • Origine dei dati. Le applicazioni di questo tipo recuperano informazioni da diverse sorgenti e creano mashup all'interno dei siti. Le applicazioni aggregano feed RSS o blog da differenti origini e costruiscono un grande deposito di informazioni in un unico luogo.
  • Struttura dei dati. Lo scambio dei dati tra diverse applicazioni è eseguito mediante l'uso di Xml, Json, elenchi di script Java e strutture proprietarie.
  • Protocolli. Oltre ai semplici GET e POST via HTTP, le applicazioni possono scegliere diversi protocolli, come Soap, Rest e Xml-Rpc.

L'applicazione oggetto della nostra scansione potrebbe recuperare feed RSS da diversi siti, scambiare informazioni con diversi blog utilizzando Json e comunicare con un portale di informazioni finanziarie usando Soap. Tutti questi servizi sono incorporati sotto forma di Rich Internet Application (RIA) che usano Ajax o Flash.

I problemi nella scansione di sicurezza nelle applicazioni Web 2.0

I problemi nella scansione di applicazioni possono essere suddivisi in due parti:

  1. Scansione delle componenti lato server. Uno dei principali problemi nella scansione di applicazioni Web 2.0 è identificare risorse nascoste sul server. Quando si scansionano applicazioni tradizionali, un software crawler può essere lanciato alla ricerca della stringa href per identificare e tracciare il profilo delle risorse dell'applicazione. Nel caso di applicazioni Web 2.0, tuttavia, c'è bisogno di identificare i Web service usati, i mashup esterni, i proxy e così via. Questi temi sono stati già trattati in un articolo precedente (anch'esso tradotto da HTML.it, ndr).
  2. Scansione delle componenti lato client. Un'applicazione Web 2.0 può caricare nel browser diversi elementi, codici JavaScript, componenti Flash. Questi script e componenti utilizzano l'ogetto XMLHTTPRequest per comunicare con il Web server. È anche possibile accedere ad informazioni cross-domain dall'interno del browser stesso. Gli attacchi di Cross-Site Scripting (XSS) sono potenziali minacce che gravano sull'utente dell'applicazione. La piattaforma Web 2.0 usa diversi script eseguiti sul client e recupera informazioni da origini esterne non verificate. Le tecnologie Ajax e Json, l'accesso cross-domain e la gestione dinamica del DOM stanno aggiungendo una nuova dimensione ai vecchi attacchi XSS. La scoperta di vulnerabilità e la scansione lato client delle applicazioni Web 2.0 sono dunque le nuove sfide che si stanno affacciando all'orizzonte.

Guide Sicurezza

Guida SQL Injection con Sqlmap

Scopriamo se le nostre applicazioni web sono vulnerabili alle SQL...

Guida sicurezza applicazioni Web

Le tecniche di attacco più comuni, i metodi per verificare la...

Guida Sicurezza wireless

Quali sono i pericoli di sicurezza di una rete senza filo e quali...

Altre guide

Newsletter @Sicurezza

Ogni lunedì, direttamente nella tua e-mail: approfondimenti e bollettini su virus, vulnerabilità e sicurezza informatica.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Amministratore di Reti Windows Server 2008

11 Giugno 2012 a Milano
Disponibilità: 5 Posti

Nessun corso previsto