Vulnerabilità in Adblock Plus che consente l'esecuzione di codice quando si utilizzano filtri discutibili

Nel blocco annunci Adblock Plus identificato vulnerabilità, permettendo organizzare l'esecuzione del codice JavaScript nel contesto dei siti, nel caso di utilizzo di filtri non verificati predisposti dagli aggressori (ad esempio, quando si collegano set di regole di terze parti o attraverso la sostituzione di regole durante un attacco MITM).

Gli autori di liste con set di filtri possono organizzare l'esecuzione del proprio codice nel contesto dei siti aperti dall'utente aggiungendo regole con l'operatore "riscrivere", che consente di sostituire parte dell'URL. L'operatore di riscrittura non ti consente di sostituire l'host nell'URL, ma ti consente di manipolare liberamente gli argomenti della richiesta. Solo il testo può essere utilizzato come maschera sostitutiva ed è consentita la sostituzione dei tag script, oggetto e documento secondario è bloccato.

Tuttavia, l'esecuzione del codice può essere ottenuta con una soluzione alternativa.
Alcuni siti, tra cui Google Maps, Gmail e Google Immagini, utilizzano la tecnica del caricamento dinamico di blocchi JavaScript eseguibili, trasmessi sotto forma di semplice testo. Se il server consente il reindirizzamento della richiesta, è possibile ottenere l'inoltro a un altro host modificando i parametri dell'URL (ad esempio, nel contesto di Google, è possibile effettuare un reindirizzamento tramite l'API "google.com/search"). Oltre agli host che consentono il reindirizzamento, possono essere attaccati anche servizi che consentono la pubblicazione di contenuti utente (hosting di codici, piattaforme di pubblicazione di articoli, ecc.).

Il metodo di attacco proposto colpisce solo le pagine che caricano dinamicamente stringhe di codice JavaScript (ad esempio tramite XMLHttpRequest o Fetch) e poi le eseguono. Un'altra limitazione importante è la necessità di utilizzare un reindirizzamento o di inserire dati arbitrari sul lato del server originale che emette la risorsa. Tuttavia, per dimostrare la rilevanza dell'attacco, viene mostrato come organizzare l'esecuzione del codice all'apertura di maps.google.com, utilizzando un reindirizzamento tramite “google.com/search”.

La correzione è ancora in preparazione. Il problema riguarda anche i bloccanti AdBlock и uBlock. Il blocco uBlock Origin non è interessato dal problema, poiché non supporta l'operatore "rewrite". Un tempo l'autore di uBlock Origin
Io rifiuto aggiungere il supporto per la riscrittura, citando potenziali problemi di sicurezza e restrizioni insufficienti a livello di host (è stata proposta un'opzione querystrip invece di riscrittura per ripulire i parametri di query invece di sostituirli).

Gli sviluppatori di Adblock Plus ritengono improbabili attacchi reali, poiché tutte le modifiche agli elenchi di regole standard vengono riviste e il collegamento di elenchi di terze parti è estremamente raro tra gli utenti. La sostituzione delle regole tramite MITM è impedita dall'uso predefinito di HTTPS per il download di elenchi di blocco standard (per altri elenchi si prevede di vietare il download tramite HTTP in una versione futura). Le direttive possono essere utilizzate per bloccare un attacco sul lato del sito CSP (Content Security Policy), attraverso il quale è possibile determinare esplicitamente gli host da cui possono essere caricate risorse esterne.

Fonte: opennet.ru

Aggiungi un commento