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 />

malfunzionamento <strong>della</strong> query inoltrata al database, come ad esempio l’apice “ ‘ ” ed i caratteri<br />

<strong>di</strong> commento “ -- ” o “ /**/”. Anche in questo caso il browser si limita ad aggiornare la pagina<br />

iniziale senza mo<strong>di</strong>ficarne minimamente il contenuto; lo stesso avviene con le TextBox<br />

all’interno come quella presente all’interno <strong>della</strong> pagina dei Concessionari che serve per la<br />

creazione <strong>di</strong> un nuovo consulente. In essa, grazie ad un validatore e al co<strong>di</strong>ce scritto<br />

correttamente, qualsiasi stringa con caratteri <strong>di</strong>versi da quelli che in<strong>di</strong>cherebbero il nome <strong>di</strong> un<br />

nuovo consulente, viene rigettata.<br />

Questo evidenzia che il sito è stato pre<strong>di</strong>sposto in modo tale da nascondere un qualunque tipo<br />

<strong>di</strong> informazione che potrebbe essere utile ad un eventuale hacker (nel caso specifico il<br />

sottoscritto).<br />

Dopo numerosi tentativi e varianti la pagina web sembra rigettare ogni inserimento<br />

sintatticamente non corretto, <strong>di</strong>mostrando <strong>di</strong> essere effettivamente ben progettata contro i<br />

pericoli <strong>di</strong> SQL injection.<br />

E’ stata ricercata anche un’anomalia che pur non avendo a che fare con le tecniche <strong>di</strong> SQL<br />

injection riguarda comunque la <strong>sicurezza</strong> dell’accesso alla piattaforma; in caso <strong>di</strong> login corretto<br />

il browser web viene in<strong>di</strong>rizzato ad <strong>una</strong> pagina che ad esempio chiamiamo Prova.asp, dove in<br />

base ad un “id” specificato dalla richiesta http ci verrà fornito l’accesso al materiale desiderato.<br />

Conoscendo già il percorso completo <strong>di</strong> tale pagina Prova.asp all’interno del sito è possibile<br />

accedere <strong>di</strong>rettamente ai contenuti <strong>di</strong> tale pagina semplicemente specificando nell’argomento<br />

<strong>della</strong> GET un Id valido, saltando così completamente la fase <strong>di</strong> riconoscimento tramite<br />

username e password. In Talete anche questa prova ha dato esito negativo, in quanto, senza il<br />

login, l’accesso al sito non viene permesso.<br />

Quin<strong>di</strong> per concludere è possibile affermare che tutti i dati forniti dall’utente sono sottoposti a<br />

meccanismi <strong>di</strong> validazione per il raddoppio degli apici o ad altre tecnice, che nel caso <strong>di</strong> input<br />

<strong>di</strong> tipo stringa come quelli utilizzati nel sito rendono quasi impossibile un qualunque tipo <strong>di</strong><br />

injection. A seguito <strong>di</strong> questo riscontro è possibile riba<strong>di</strong>re l’effettiva <strong>sicurezza</strong> del sito da parte<br />

degli attacchi <strong>di</strong> SQL Injection; da notare la presenza fondamentale dell’opzione<br />

r<strong>una</strong>t=”server”, che specifica il fatto che le operazioni previste dal form dovranno essere<br />

eseguite dal server e non dal client.<br />

127

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

Saved successfully!

Ooh no, something went wrong!