Utilizzo di "Dynamic Hash Technique" per proteggere i cookie da XSS?

1

Questo documento sembra descrivere una soluzione in cui gli attacchi XSS che rubano i cookie sono resi inutili da avendo il server invia ai client un cookie con un nome hash. Ogni volta che l'utente invia il cookie al server, il server prenderà l'hash e rigenererà il nome originale del cookie. Quindi, presumibilmente, anche se gli aggressori hanno rubato il cookie dell'utente "non sarebbero in grado di usarlo".

Non capisco come questo renderebbe il cookie inutile all'attaccante. Finché l'utente reale non ha effettuato l'accesso / uscita dal sito Web e ha causato la generazione di un nuovo hash per il nome del cookie, l'autore dell'attacco non può semplicemente inviare questo nome di cookie con hash al server e recuperare comunque le stesse informazioni ? Il server prende semplicemente l'hash, rigenera il nome del cookie originale come al solito e restituisce un altro cookie / informazioni appropriate.

Sono nuovo nell'area della sicurezza delle informazioni, quindi potrebbe essere a causa della mia conoscenza da principiante nel campo che questo non ha senso per me. Ma anche il documento non sembra trasmettere l'idea molto chiaramente.

Se qualcuno potesse far luce sul fatto che questo sarebbe effettivamente un metodo fattibile per prevenire l'XSS, sarebbe molto apprezzato!

    
posta LazerSharks 13.03.2014 - 00:30
fonte

2 risposte

3

Sono d'accordo con te sul fatto che l'approccio suggerito in questo documento non ha alcun senso. Un utente malintenzionato potrebbe rubare l'hash e usarlo per accedere all'account della vittima.

    
risposta data 13.03.2014 - 08:43
fonte
3

Se leggo correttamente il documento, gli autori sembrano proporre di sostituire il cookie con un valore separato passato come POSTdata o concatenato con l'URL di una richiesta POST o GET. Mentre è tecnicamente vero che rimuovere il cookie e fare qualcos'altro per la gestione delle sessioni rende inutile l'attacco al cookie, l'utente malintenzionato attaccherà semplicemente l'identificatore di sessione di sostituzione, proprio come ci si aspetta.

Il tentativo di approccio si riduce all'offuscamento. Nella migliore delle ipotesi, questo approccio sarà utile se implementato su un piccolo numero di siti a traffico estremamente basso. Se diventa banale, gli attaccanti automatizzano il loro attacco per andare oltre questo valore.

Vale la pena notare che gli identificatori di sessione sono sempre stati trasmessi in aggiunta all'URL o nei dati post. Questo è stato originariamente implementato come un modo per supportare i browser Web che non supportavano i cookie. È probabile che gli strumenti automatici siano già alla ricerca di valori come questo e non ingannano un tester manuale.

    
risposta data 13.03.2014 - 01:06
fonte

Leggi altre domande sui tag