Content Security Policy Intestazione che non interrompe l'attacco

2

Ho creato una semplice applicazione web di test per testare l'utilizzo dell'intestazione del criterio di sicurezza del contenuto. Ho incluso una vulnerabilità nella mia app di test, in modo tale che l'invio di un payload XSS di base con tag di script si rispecchierebbe completamente ed eseguiva un avviso javascript ... cose semplici. Ho incluso un header CSP di base:

Content-Security-Policy: default-src 'self'

Ho pensato che questo avrebbe fermato l'XSS, a causa di "CSP risolve questo problema vietando completamente lo script inline" link

Ma l'avviso js sta ancora scoppiando. Sono stato in grado di verificare che l'intestazione venga restituita nella risposta del server come previsto. Ho provato con diversi browser aggiornati (chrome, firefox, ie11). Ho applicato l'intestazione in iis come segue:

# IIS Web.config
<system.webServer>
    <httpProtocol>
        <customHeaders>
            <add name="Content-Security-Policy" value="default-src 'self';" />
        </customHeaders>
    </httpProtocol>
</system.webServer>

La mia implementazione è errata o le mie aspettative sono sbagliate qui?

    
posta Frostbyte 19.11.2018 - 15:54
fonte

2 risposte

4

[from comment] ... IE was not working, but, does ie11 even support this header?

Secondo posso usare la politica di sicurezza del contenuto c'è un supporto solo parziale in IE11: solo la direttiva sandbox è supportata e l'intestazione deve essere specificata come X-Content-Security-Policy . Quindi, nessun supporto in IE11 per ciò che stai cercando di fare.

    
risposta data 19.11.2018 - 20:10
fonte
0

Come ha detto Steffen, CSP non è completamente supportato su IE 11. Il mio codice non era assolutamente sbagliato dal mio punto di vista (soprattutto dato che andava bene in Chrome).

Questo strumento per verificare la compatibilità con CSP potrebbe rivelarsi utile in futuro: link

    
risposta data 26.11.2018 - 04:31
fonte

Leggi altre domande sui tag