SRI per CSP: come ottengo l'hash per il codice inline?

1

Da anni mi preoccupo del design del sito web, ma non sono un esperto, più un drogato dell'hardware.

CSP è affascinante per me ora che sto iniziando a espandermi nello sviluppo del web. Stavo davvero combattendo con gli hash per i miei script perché utilizzavo un generatore e un amplificatore SHA-384 online; Chrome non li riconoscerebbe. Alla fine ho twittato che Chrome fornisse effettivamente hash a 256 bit, e potrei includere quelli nel mio file .htaccess - era solo una questione di scorrere le pagine del mio sito, afferrare gli hash e includerli nella mia lista di script approvati e amp; stili.

Come ho detto, non sono un master di codifica, quindi ho riscontrato un problema in cui Chrome non mi fornisce l'hash effettivo per uno script, trunctandolo a sha256 ... e non ho idea di quale script sia in esecuzione (Wordpress). Prima che tutti mi gridino, ho costruito siti senza usare un CMS, ma questa è la piattaforma su cui sto lavorando al momento.

Come trovo il codice per lo script iniettato in modo da poterlo hash e amp; includerlo? Dai documenti di Mozilla, ho scoperto che un hash dovrebbe includere tutti gli spazi bianchi escluso il tag "script" - ho provato che & non sono andato da nessuna parte con il mio codice FB Pixel, quindi l'ho cancellato, forse hai una risposta per me su quello?

Come per lo script inline iniettato - ho bisogno di scoprire come identificare ciò che viene iniettato e come farlo per il mio CSP.

    
posta Flatspin 19.04.2018 - 21:20
fonte

1 risposta

1

Per un CMS, come wordpress, raccomando vivamente di usare un nonce anziché gli hash. C'è anche un plugin per questo .

Includere troppi hash ha un costo in termini di prestazioni, in quanto il browser deve copiare tutti gli script per confrontare gli hash. Anche usarlo su file che cambiano, ad esempio a causa di aggiornamenti non è fattibile.

Se vuoi ancora usarlo, il mio unico consiglio può essere quello di cercare un modo per ottenere l'errore "non forzato". Puoi provare ad accorciare l'intestazione in modo che ci sia più spazio nella console o provare a esaminare i file di registro di Chrome, sia che ci sia.

    
risposta data 19.04.2018 - 21:28
fonte

Leggi altre domande sui tag