I certificati forniscono alcun vantaggio all'integrità di subresource?

0

Quali sarebbero i potenziali vettori di attacco se un browser dovesse ignorare i certificati quando si effettua una richiesta di rete verificata tramite l'integrità della subresource ?

Ad esempio, supponiamo di avere il tag script:

<script src="https://example.com/my-script.js"integrity="..." crossorigin="anonymous">

Il browser farebbe la richiesta di my-script , ma non si preoccuperebbe di controllare il certificato, poiché la validità dello script è verificata dall'attributo di integrità.

La pagina web che contiene il tag script verrebbe comunque verificata tramite certificati, ma lo script stesso non lo farebbe.

Esistono possibili vettori di attacco in questo scenario?

    
posta Nathan Merrill 10.12.2016 - 06:10
fonte

1 risposta

2

Poiché solo gli algoritmi hash forti (vale a dire sha-256 e migliori) sono consentiti per l'integrità della sottosistema, è possibile essere certi che il payload stesso non sia stato compromesso. Tuttavia, il payload non è crittografato, quindi è possibile sniffare tutti i dati sensibili contenuti nel payload. Questo è meno probabile quando includi risorse pubbliche e statiche, ma potrebbe essere il caso se il server controlla sia il file che include lo script e lo script stesso.

Oltre all'integrità del sottosuolo, protegge solo il carico utile della risposta. Non protegge né l'intestazione della risposta né la richiesta contro lo sniffing e la manipolazione, quindi un utente malintenzionato potrebbe almeno ottenere i cookie dalla richiesta o persino modificare i cookie esistenti o iniettare nuovi nella risposta. Il primo potrebbe essere utilizzato per tracciare o, a seconda del cookie, anche il furto d'identità o simili. L'ultimo potrebbe essere utilizzato anche per il tracciamento. Inoltre, alcune applicazioni Web non considerano i cookie come un valore solo opaco, ma li utilizzano per archiviare i dati in esso contenuti. La modifica di un cookie esistente o l'aggiunta di un nuovo cookie potrebbe causare confusione o persino script cross-site, a seconda di quanto l'applicazione considera attendibile il valore del cookie. E l'ultimo è quello che si cerca di evitare quando si utilizza l'integrità del sottosistema.

    
risposta data 10.12.2016 - 06:30
fonte

Leggi altre domande sui tag