Sono l'autore di https://stormpath.com/blog/where-to-store-your-jwts-cookies-vs-html5-web-storage
Quando XSS esiste in una pagina, un attaccante ha il privilegio di:
- stoccaggio HTML5 web (locale e di sessione)
- cookie che non sono impostati con flag http ON
- Controllo della scheda fino alla sua chiusura e possibilità di effettuare richieste non autorizzate
È anche possibile iniziare a formulare attacchi per aggirare la protezione XSRF.
Quando esiste una vulnerabilità XSRF, un utente malintenzionato è privilegio di:
- Fare richieste non autorizzate da un dominio 3a parte, se si può attirare un utente lì (o inviarli lì in presenza di XSS).
È possibile notare che quando esiste una vulnerabilità XSS, è possibile effettuare richieste non autorizzate e un utente malintenzionato dovrebbe passare da qualche altro anello per sfruttare XSRF. Ciò significa che quando esiste XSS (indipendentemente dalla protezione XSRF o meno), il vettore di attacco di effettuare richieste non autorizzate esisterà.
Speriamo che questo chiarisca le cose per il mio prossimo punto.
Gli attacchi XSRF o le richieste non autorizzate hanno meno impatto e portata rispetto al furto di un token senza stato che rappresenta l'identità e la sessione dell'utente. Perdere il token significa che un attaccante avrà il pieno controllo per formulare un attacco a nome dell'utente, a suo tempo, sulle sue macchine.
In conclusione, in presenza di XSS quando:
negozio di un token di accesso a Web Storage, i token per qualsiasi utente che utilizza il sito durante il tempo dell'esistenza di XSS è compromessa. Ciò significa che un utente malintenzionato potrebbe ottenere migliaia di token di accesso validi e può fare molto danno (anche di più se si archiviano i token di aggiornamento nella memoria Web). Gli utenti sono anche vulnerabili a fare richieste non autorizzate dal proprio browser.
memorizzare un token di accesso in un cookie httpOnly, i token per qualsiasi utente non vengono compromessi. Ma gli utenti sono anche vulnerabili a fare richieste non autorizzate dal proprio browser anche in presenza della protezione XSRF.
Spero che questa informazione sia d'aiuto.
fonte
2016-06-14 16:30:37
Puoi fare quello che vuoi ma non puoi rubare il token. – zerkms