Vary: intestazione risposta origine e sfruttamento CORS

8

Recentemente PortSwigger (ragazzi dietro Burp Suite) ha pubblicato un post sul blog che parlava dei rischi per la sicurezza associati alle errate configurazioni CORS.

link

In sintesi, il blog parla di modi non sicuri di abilitare CORS che può consentire ai siti Web dannosi di leggere i dati da un sito di destinazione. Verso la fine, il blog parla di un meccanismo di prevenzione che coinvolge l'intestazione Vary: Origin :

If you take a look at the 'Implementation Considerations' section in the CORS specification, you'll notice that it instructs developers specify the 'Vary: Origin' HTTP header whenever Access-Control-Allow-Origin headers are dynamically generated.

Sto avendo difficoltà a capire come esattamente l'intestazione Vary aiuta a prevenire l'utilizzo di CORS (XSS usando l'avvelenamento della cache) in uno scenario in cui l'intestazione Access-Control-Allow-Origin viene generata dinamicamente (controllata dal client).

    
posta Shurmajee 17.02.2017 - 21:20
fonte

1 risposta

8

È importante includere l'intestazione Vary: Origin per impedire la memorizzazione nella cache. L'intestazione indica che la risposta dipende in qualche modo dall'origine e pertanto non dovrebbe essere fornita dalla cache per nessun'altra origine. Se manca l'intestazione, potrebbero essere possibili attacchi di avvelenamento della cache, come spiegato nell'articolo dall'esempio di XSS tramite un'intestazione personalizzata riflessa. Un'intestazione Vary mancante non crea una vulnerabilità autonoma.

    
risposta data 17.02.2017 - 22:46
fonte

Leggi altre domande sui tag