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

importanti, quali ad esempio particolari permessi (ad es. amministratore) o informazioni<br />

private.<br />

• Path trasversale: questo attacco coinvolge l’uso <strong>di</strong> in<strong>di</strong>rizzi relativi (es.<br />

"../../some<strong>di</strong>r/somefile.txt") per accedere a risorse che normalmente non dovrebbero<br />

essere <strong>di</strong>sponibili.<br />

6.4 Broken Authentication e Session Management<br />

Nelle moderne applicazioni web, la <strong>gestione</strong> dell’autenticazione è uno dei primi meccanismi<br />

messo in atto per <strong>di</strong>scriminare un utente riconosciuto da uno estraneo. Solitamente l’utente si<br />

presenta (fase <strong>di</strong> identificazione) inviando username e password che attesta la sua conoscenza<br />

del "segreto con<strong>di</strong>viso" (fase <strong>di</strong> autenticazione).<br />

A seguito <strong>di</strong> questa procedura, per la natura stateless del protocollo HTTP, è necessario tener<br />

traccia delle operazioni compiute durante la navigazione dal singolo navigatore; pensiamo ad<br />

<strong>una</strong> tipica <strong>applicazione</strong> commerciale, in cui è necessario mantenere un carrello virtuale con i<br />

prodotti acquistati dall’utente. Per dotare le applicazioni web <strong>di</strong> questa funzionalità, negli anni<br />

sono state sviluppate numerose tecniche ma, ad oggi, la più comune è quella basata su token <strong>di</strong><br />

sessione. In pratica, nella fase che segue l’autenticazione, il server associa al client un ID <strong>di</strong><br />

sessione che <strong>di</strong>stinguerà univocamente un utente da un altro; ogni qualvolta il browser<br />

dell’utente effettua <strong>una</strong> richiesta verso l’<strong>applicazione</strong> invia anche tale identificativo,<br />

permettendo <strong>di</strong> tracciare le varie operazioni compiute nel tempo. Sul lato client tale<br />

informazione è spesso memorizzata all’interno dei cookie. Nella figura successiva è<br />

schematizzato il classico meccanismo dei session token.<br />

130

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

Saved successfully!

Ooh no, something went wrong!