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 ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
CAPITOLO VI - Gli attacchi e il progetto OWASP<br />
Per concludere, è possibile vedere come l’entità del danno provocato da questa vulnerabilità<br />
può variare dalla più totale innocuità a un feroce attacco. L’hacker potrebbe firmare dei<br />
messaggi a nome dell’utente oppure leggere i suoi dati sensibili. O ancora lo script potrebbe<br />
consegnare nelle mani dell’hacker la password dell’utente per quel forum/blog. Quanto queste<br />
credenziali possano essere importanti <strong>di</strong>pende dall’accortezza dell’utente a non usarle, ad<br />
esempio, per l’accesso al proprio conto bancario. In sostanza anche i siti che si reputano a zero<br />
rischio per la bassa importanza del contenuto del proprio sito, possono creare <strong>una</strong> grave<br />
minaccia. Questo è un chiaro esempio <strong>di</strong> quanto la <strong>sicurezza</strong> sia <strong>una</strong> miscela costruita su più<br />
elementi e con tutti gli attori del sistema informatico.<br />
6.6 Buffer Overflow<br />
Il Buffer Overflow è un attacco che sfrutta <strong>una</strong> validazione errata dell’input, in cui non si<br />
controlla la lunghezza <strong>della</strong> sequenza <strong>di</strong> dati ricevuti dall’<strong>applicazione</strong>. Un utente, per errore o<br />
maliziosamente, può mo<strong>di</strong>ficare la parte <strong>di</strong> co<strong>di</strong>ce in esecuzione nello stack andando a<br />
cambiare il flusso <strong>di</strong> esecuzione del software prendendo il controllo <strong>della</strong> macchina.<br />
Tecnicamente esistono <strong>di</strong>verse strategie - stack overflow, heap overflow, format string - che<br />
possono però essere ricondotte ad un’unica grande famiglia <strong>di</strong> vulnerabilità in cui l’aggressore<br />
può riuscire ad eseguire coman<strong>di</strong> arbitrari. Nel caso delle applicazioni online è possibile<br />
riscontrare tale vulnerabilità sia nel web server stesso che all’interno <strong>di</strong> librerie custom<br />
utilizzate dalla web application.<br />
Questa vulnerabilità è al contempo <strong>una</strong> delle più <strong>di</strong>fficili da riscontrare e da sfruttare: un<br />
aggressore, senza il co<strong>di</strong>ce sorgente, <strong>di</strong>fficilmente riuscirà a creare un exploit per inviare<br />
141