Esiste un'implementazione o una specifica per includere un hash o una firma in un attributo di uno script <, in modo che il browser possa verificare che il file corretto sia stato recuperato prima di eseguirlo ? Qualcosa di simile:Specificare l'hash di uno script da un host non affidabile
<script
src="http://cdn.example.com/jquery-2001.js"
signature="sha-256/e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
></script>
La motivazione è questo: in generale, ogni ulteriore CDN o host di utilizzare per il tuo sito aumenta la vulnerabilità, con l'aggiunta di un nuovo obiettivo che può essere violato per compromettere il vostro sito. Consentire ai server front-end primari di affermare gli hash o le firme di tali file potrebbe eliminare completamente tale rischio, consentendo di essere più flessibili nella progettazione della propria architettura. È persino possibile richiedere file mancanti da una rete peer-to-peer non sicura.
Pensavo di aver ricordato una specifica su questo, ma non sono stato in grado di trovarlo.
[Non esiste un attributo 'signature'.] (Https://html.spec.whatwg.org/multipage/scripting.html#the-script-element) Perché ne hai bisogno? – undefined
Non mi aspettavo che questo fosse ancora negli standard accettati, ma pensavo che ci fosse una proposta che era stata implementata su qualche piattaforma. 'signature' è un esempio di come potrebbe essere il nome - mi aspetto che il vero nome e la sintassi siano più ben pensati del mio esempio. – Tim
Qualcosa di simile è necessario per poter usare CDN condivisi (come quelli forniti da jQuery), o CDN in generale, senza aumentare il rischio per la sicurezza. In genere, ogni servizio CDN aggiuntivo aggiunto implica un altro servizio che potrebbe essere compromesso per compromettere il tuo sito. Se il tuo sito primario può affermare hash/firme dei file a cui fa riferimento, tale rischio viene eliminato. Sono sicuro che alla fine avremo uno standard. – Tim