Last update Marzo 1, 2024 11:52 AM

 

 


Personal Website


Articoli / Articles
   

Pagina Iniziale Home Page

Informazioni About Me

Curriculum Vitae Resume
Attività Activities
Didattica Teaching
Guide Tutorials
Articoli Articles
Libri Books

Contatti Contacts
     
     
 
     
 

Vulnerabilità di tipo Cross Site Scripting
di Roberto Saia

[Tratto dal Progetto wiki promosso da IBM per discutere sul tema della sicurezza delle informazioni nell'era del Web 2.0]

L’acronimo XSS (Cross Site Scripting) identifica una vulnerabilità di sicurezza che interessa in modo specifico i siti web di tipo dinamico afferenti al Web di seconda generazione (Web 2.0).

Come in molti altri casi, gli exploit XSS basano il loro funzionamento sulle possibilità offerte dal codice con il quale sono state realizzate le applicazioni pensate per il Web: cioè su quelle parti di codice sviluppate senza tenere conto di alcune raccomandazioni basilari al fine dell’ottenimento di un sufficiente livello di sicurezza: nella fattispecie si tratta di una insufficiente attenzione nelle procedure deputate al controllo delle operazioni di tipo POST e GET, durante l’impiego del protocollo HTTP (Hypertext Transfer Protocol).

Gli exploit basati sul “Cross Site Scripting” permettono agli aggressori di alterare (in modo permanente o momentaneo) i contenuti della pagina Web da loro visualizzata, operazione che si presta a numerose e pericolose applicazioni come, ad esempio, la realizzazione di una pagina pensata “ad hoc” per carpire informazioni sensibili agli utenti che, successivamente, accederanno a quell’area del sito, realizzando “de facto” un vero e proprio Phishing (tecniche di inganno degli utenti che inducono a comunicare dati riservati) basato sulle risorse e la credibilità dell’inconsapevole (e legittimo) fornitore del servizio preso di mira.

Come prima anticipato, gli exploit basati su XSS possono essere fondamentalmente di due tipi, permanenti e non permanenti: nel primo caso le pagine prese di mira vengono permanentemente modificate dall’aggressore, mentre nel secondo le alterazioni sono soltanto momentanee e interessano, più che l’intero contenuto della pagina, soltanto il traffico relativo alle richieste POST/GET del protocollo HTTP (operando un opportuno reindirizzamento di queste richieste).

Gli effetti di un attacco dl genere, ovviamente, sono direttamente proporzionali al numero di utenti che abitualmente visita il sito preso di mira e alla credibilità che questo riscuote tra questi ultimi: nel caso di siti a elevato volume di traffico come, ad esempio, un sito di “Social Network” o di “Home Banking”, i rischi (e i danni concreti) verso cui si va incontro saranno certamente di notevole entità.

Le contromisure in questi casi, come già anticipato in precedenza, consistono nel verificare efficientemente quanto inserito dagli utenti nei campi editabili (campi di ricerca, di login  e similari), facendo in modo che nessun contenuto attivo (come ad esempio uno script) possa essere mandato arbitrariamente in esecuzione.

Dato che non si tratta di problematiche di sicurezza nuove - basti infatti pensare ai vetusti attacchi di tipo “SQL Injection”  che sfruttano un meccanismo simile (il mancato controllo di quanto inserito dagli utenti) -  si può dedurre come, nonostante il tempo trascorso, la mole di informazioni disponibile e i gravi problemi verso i quali si va incontro, la cultura della sicurezza non prevalga ancora su quella dell’improvvisazione, con effetti deleteri e imprevedibili per l’intera comunità.

Ritorna all'indice degli articoli Index


 
Roberto Saia  -  All Rights Reserved