Vulnerabilitatea în Adblock Plus care permite executarea codului atunci când se utilizează filtre discutabile

În Adblock Plus blocarea reclamelor identificat vulnerabilitate, permițând să organizeze execuția codului JavaScript în contextul site-urilor, în cazul utilizării filtrelor neverificate pregătite de atacatori (de exemplu, la conectarea unor seturi de reguli de la terți sau prin înlocuirea regulilor în timpul unui atac MITM).

Autorii de liste cu seturi de filtre își pot organiza execuția codului în contextul site-urilor deschise de utilizator prin adăugarea de reguli cu operatorul "rescrie", care vă permite să înlocuiți o parte a adresei URL. Operatorul de rescriere nu vă permite să înlocuiți gazda în adresa URL, dar vă permite să manipulați liber argumentele cererii. Numai textul poate fi folosit ca mască de înlocuire, iar înlocuirea etichetelor de script, obiect și subdocument este permisă blocat.

Cu toate acestea, execuția codului poate fi realizată într-o soluție.
Unele site-uri, inclusiv Google Maps, Gmail și Google Images, folosesc tehnica de încărcare dinamică a blocurilor JavaScript executabile, transmise sub formă de text simplu. Dacă serverul permite redirecționarea solicitărilor, atunci redirecționarea către o altă gazdă poate fi realizată prin modificarea parametrilor URL (de exemplu, în contextul Google, o redirecționare poate fi făcută prin intermediul API-ului "google.com/search"). Pe lângă gazdele care permit redirecționarea, se poate realiza și un atac împotriva serviciilor care permit postarea conținutului utilizatorului (găzduire de coduri, platforme de postare articole etc.).

Metoda de atac propusă afectează numai paginile care încarcă dinamic șiruri de cod JavaScript (de exemplu, prin XMLHttpRequest sau Fetch) și apoi le execută. O altă limitare importantă este necesitatea de a utiliza o redirecționare sau de a plasa date arbitrare pe partea serverului original care emite resursa. Totuși, pentru a demonstra relevanța atacului, se arată cum să organizezi execuția codului tău la deschiderea maps.google.com, folosind o redirecționare prin „google.com/search”.

Remedierea este încă în pregătire. Problema afectează și blocanții AdBlock и uBlock. Blocantul uBlock Origin nu este afectat de problemă, deoarece nu acceptă operatorul de „rescriere”. La un moment dat, autorul uBlock Origin
refuzat adăugați suport pentru rescrie, invocând potențiale probleme de securitate și restricții insuficiente la nivel de gazdă (o opțiune de interogare a fost propusă în loc de rescrire pentru a curăța parametrii de interogare în loc de a le înlocui).

Dezvoltatorii Adblock Plus consideră că atacurile reale sunt puțin probabile, deoarece toate modificările la listele standard de reguli sunt revizuite, iar conectarea listelor terță parte este extrem de rară în rândul utilizatorilor. Înlocuirea regulilor prin MITM este împiedicată prin utilizarea implicită a HTTPS pentru descărcarea listelor standard de blocare (pentru alte liste se plănuiește interzicerea descărcarii prin HTTP într-o versiune viitoare). Directivele pot fi folosite pentru a bloca un atac din partea site-ului CSP (Politica de securitate a conținutului), prin care puteți determina în mod explicit gazdele de pe care pot fi încărcate resurse externe.

Sursa: opennet.ru

Adauga un comentariu