02.06.2013 Views

analisi e gestione della sicurezza di una complessa applicazione ...

analisi e gestione della sicurezza di una complessa applicazione ...

analisi e gestione della sicurezza di una complessa applicazione ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

CAPITOLO VI - Gli attacchi e il progetto OWASP<br />

con<strong>di</strong>visione del medesimo token <strong>di</strong> sessione tra utente ed aggressore che può quin<strong>di</strong><br />

controllare la navigazione.<br />

• User Tracking: un altro uso <strong>di</strong> XSS è quello relativo all’ottenimento <strong>di</strong> informazioni<br />

riguardo la tipologia <strong>di</strong> visite e <strong>di</strong> visitatori in un sito web, per poi poter iniziare attività<br />

<strong>di</strong> spamming.<br />

• Browser/User exploitation: l’invio <strong>di</strong> co<strong>di</strong>ce dannoso può rendere <strong>di</strong>fficile la<br />

navigazione, intervenendo sulle modalità <strong>di</strong> interazione tra sito ed utente. L’aggressore<br />

potrebbe forzare l’apertura <strong>di</strong> alert box o il reload delle pagine, obbligando l’utente ad<br />

interrompere la visita al sito oppure forzando eventuali percorsi <strong>di</strong> navigazione.<br />

• Credentialed Misinformation/Information Dissemination: dal momento che Internet<br />

sta assumendo un ruolo importante come mezzo propagan<strong>di</strong>stico, questo ultimo attacco<br />

XSS non deve essere trascurato. Attraverso l’invio <strong>di</strong> script, in esecuzione sul browser, è<br />

possibile mo<strong>di</strong>ficare attivamente il contenuto <strong>di</strong> un sito e la modalità <strong>di</strong> presentazione.<br />

Le notizie ed i contenuti riportati nelle varie pagine web vulnerabili possono essere<br />

cambiati a proprio piacimento, creando <strong>di</strong>sinformazione. Scenari possibili vanno dalle<br />

mo<strong>di</strong>fiche <strong>di</strong> alcune notizie all’interno dei giornali online, al cambio <strong>di</strong> valori nel sito<br />

<strong>della</strong> borsa sino all’inserimento <strong>di</strong> pubblicità in siti molto frequentati.<br />

L’eventualità che un sito contenga <strong>una</strong> vulnerabilità <strong>di</strong> questo tipo è estremamente elevata<br />

poiché spesso non è semplice filtrare l’input dell’utente: esistono innumerevoli mo<strong>di</strong> per<br />

inserire del co<strong>di</strong>ce JavaScript all’interno <strong>di</strong> pagine HTML, molti standard e <strong>di</strong>fferenti<br />

meccanismi <strong>di</strong> invio dei dati. Non dobbiamo inoltre <strong>di</strong>menticare che parlando <strong>di</strong> scripting lato<br />

client non esiste solo JavaScript ma anche ActiveX(OLE), VBScript, Flash, etc.<br />

L’uso <strong>di</strong> linguaggi interpretati (PHP, Python, Java, Pike, Perl, Ruby, ...) riduce <strong>di</strong> molto il<br />

problema in quanto un errore per compromettere la <strong>sicurezza</strong> dovrebbe andare a provocare un<br />

buffer overflow nella VM.<br />

I rime<strong>di</strong> sono vari, dal tenere costantemente aggiornato il sistema ed i vari prodotti usati, al<br />

controllare ogni input per lunghezza e formato.<br />

Tuttavia è molto <strong>di</strong>fficile identificare e rimuovere, da <strong>una</strong> <strong>applicazione</strong> web, delle vulnerabilità<br />

<strong>di</strong> XSS. Il modo migliore per riscontrarle è quello <strong>di</strong> eseguire <strong>una</strong> revisione del co<strong>di</strong>ce ed<br />

139

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!