Una vulnerabilità di Adblock Plus consente l'esecuzione di codice di terze parti

recentemente è stato scoperto che il popolare blocco degli annunci «Adblock Plus »presenta una vulnerabilità che consente di organizzare l'esecuzione del codice JavaScript sui siti, in caso di utilizzo di filtri non testati predisposti da terze parti con intenti dannosi (ad esempio, collegando set di regole di terze parti o sostituendo regole durante l'attacco MITM).

Elenca gli autori con set di filtri può organizzare l'esecuzione del proprio codice nel contesto di siti accessibili al utente che aggiunge regole con l'operatore »$ rewrite«, che permette di sostituire parte dell'URL.

Come è possibile l'esecuzione di questo codice?

Dichiarazione di $ rewrite non consente di sostituire l'host nell'url, ma offre l'opportunità di manipolare liberamente gli argomenti della richiesta.

Tuttavia l'esecuzione del codice può essere ottenuta. Alcuni siti, come Google Maps, Gmail e Google Immagini, utilizzano la tecnica del caricamento dinamico di blocchi JavaScript eseguibili trasmessi sotto forma di testo normale.

Se il server consente il reindirizzamento delle richieste, può essere inoltrato a un altro host modificando i parametri dell'URL (ad esempio, nel contesto di Google, è possibile eseguire un reindirizzamento tramite l'API »google.com/search«) .

Più host che consentono il reindirizzamento, puoi anche commettere un attacco contro i servizi che consentono la localizzazione dei contenuti dell'utente (hosting di codice, piattaforma di posizionamento di articoli, ecc.).

Il metodo di L'attacco proposto interessa solo le pagine che caricano dinamicamente stringhe con codice JavaScript (ad esempio, tramite XMLHttpRequest o Fetch) e quindi eseguirli.

Un altro limite importante è la necessità di utilizzare un reindirizzamento o di inserire dati arbitrari sul lato del server di origine che fornisce la risorsa.

Tuttavia, come dimostrazione della rilevanza di un attacco, mostra come organizzare l'esecuzione del codice aprendo maps.google.com utilizzando un reindirizzamento tramite "google.com/search".

In effetti, le richieste di utilizzare XMLHttpRequest o Fetch per scaricare script remoti da eseguire non falliranno quando viene utilizzata l'opzione $ rewrite.

Inoltre, il reindirizzamento aperto è altrettanto importante perché consente a XMLHttpRequest di leggere lo script da un sito remoto, anche se sembra provenire dalla stessa origine.

Stanno già lavorando per risolvere il problema

La soluzione è ancora in preparazione. Il problema riguarda anche i bloccanti AdBlock e uBlock. UBlock Origin Blocker non è soggetto al problema in quanto non supporta l'operatore »$ rewrite».

A un certo punto, l'autore di uBlock Origin ha rifiutato di aggiungere il supporto $ rewrite, citando possibili problemi di sicurezza e limitazioni a livello di host insufficienti (invece di riscrivere, è stata proposta l'opzione querystrip per cancellare i parametri della query invece di sostituirli).

È nostra responsabilità proteggere i nostri utenti.

Nonostante il rischio effettivo molto basso, abbiamo deciso di rimuovere l'opzione $ rewrite. Pertanto, rilasceremo una versione aggiornata di Adblock Plus non appena tecnicamente possibile.

Lo facciamo per precauzione. Non è stato fatto alcun tentativo di utilizzare in modo improprio l'opzione di riscrittura e faremo del nostro meglio per evitare che ciò accada.

Ciò significa che non ci sono minacce per nessun utente di Adblock Plus.

Il DGli sviluppatori di Adblock Plus considerano improbabili attacchi effettivi, poiché tutte le modifiche agli elenchi di regole regolari vengono riviste e il collegamento di elenchi di terze parti è praticato dagli utenti molto raramente.

La sostituzione delle regole tramite MITM rimuove l'uso di HTTPS per impostazione predefinita per caricare elenchi di blocco regolari (per gli elenchi rimanenti si prevede di vietare il download HTTP in una versione futura).

Per bloccare gli attacchi sul lato dei siti, È possibile applicare le direttive CSP (Content Security Policy), attraverso il quale è possibile identificare esplicitamente gli host da cui è possibile caricare risorse esterne.

fonte: https://adblockplus.org, https://armin.dev


Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile dei dati: Miguel Ángel Gatón
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.