Luka w zabezpieczeniach Adblock Plus umożliwia uruchomienie kodu innej firmy

Ostatnio odkryto, że popularny program do blokowania reklam «Adblock Plus »ma lukę umożliwiającą organizację wykonania kodu JavaScript w serwisach, w przypadku korzystania z nieprzetestowanych filtrów przygotowanych przez osoby trzecie ze złymi zamiarami (na przykład przez podłączenie zestawów reguł innych firm lub podstawianie reguł podczas ataku MITM).

Lista autorów z zestawami filtrów może zorganizować wykonanie swojego kodu w kontekście witryn dostępnych dla dodawanie reguł przez użytkownika za pomocą operatora »$ rewrite«, co pozwala podmienić część adresu URL.

Jak możliwe jest wykonanie tego kodu?

Deklaracja $ rewrite nie pozwala na zastąpienie hosta w adresie URL, ale daje możliwość swobodnego manipulowania argumentami wniosku.

Jednak można osiągnąć wykonanie kodu. Niektóre witryny, takie jak Mapy Google, Gmail i Grafika Google, wykorzystują technikę dynamicznego ładowania wykonywalnych bloków JavaScript przesyłanych w postaci zwykłego tekstu.

Jeśli serwer zezwala na przekierowanie żądań, to można je przekierować do innego hosta poprzez zmianę parametrów adresu URL (na przykład w kontekście Google przekierowanie można wykonać poprzez API »google.com/search«) .

Plus hosty, które pozwalają na przekierowanie, możesz również dokonać ataku względem usług, które umożliwiają lokalizację treści użytkownika (hosting kodu, platforma umieszczania artykułów itp.).

Metoda z Proponowany atak dotyczy tylko stron, które dynamicznie ładują ciągi znaków z kodem JavaScript (na przykład przez XMLHttpRequest lub Fetch), a następnie uruchom je.

Innym poważnym ograniczeniem jest konieczność użycia przekierowania lub umieszczenia dowolnych danych po stronie serwera pochodzenia, który udostępnia zasób.

Jednak jako demonstracja znaczenia ataku, pokazuje, jak zorganizować wykonanie kodu, otwierając maps.google.com za pomocą przekierowania ze strony „google.com/search”.

W rzeczywistości żądania użycia XMLHttpRequest lub Fetch w celu pobrania zdalnych skryptów do uruchomienia nie zawiodą, gdy zostanie użyta opcja $ rewrite.

Ponadto otwarte przekierowanie jest równie ważne, ponieważ umożliwia XMLHttpRequest odczytanie skryptu ze zdalnej witryny, nawet jeśli wydaje się, że pochodzi on z tego samego źródła.

Już pracują nad rozwiązaniem problemu

Rozwiązanie jest nadal w przygotowaniu. Problem dotyczy również blokerów AdBlock i uBlock. UBlock Origin Blocker nie jest podatny na ten problem, ponieważ nie obsługuje operatora »$ rewrite».

W pewnym momencie autor uBlock Origin odmówił dodania obsługi $ rewrite, powołując się na możliwe problemy z bezpieczeństwem i niewystarczające ograniczenia na poziomie hosta (zamiast przepisywania zaproponowano opcję querystrip, aby wyczyścić parametry zapytania zamiast je zastępować).

Naszym obowiązkiem jest ochrona naszych użytkowników.

Pomimo bardzo niskiego rzeczywistego ryzyka zdecydowaliśmy się usunąć opcję $ rewrite. Dlatego udostępnimy zaktualizowaną wersję Adblock Plus tak szybko, jak będzie to technicznie możliwe.

Robimy to jako środek ostrożności. Nie podjęto żadnej próby niewłaściwego wykorzystania opcji przepisywania i dołożymy wszelkich starań, aby temu zapobiec.

Oznacza to, że nie ma zagrożenia dla żadnego użytkownika Adblock Plus.

DProgramiści Adblock Plus uważają, że rzeczywiste ataki są mało prawdopodobne, ponieważ wszystkie zmiany w zwykłych listach reguł są sprawdzane, a łączenie list osób trzecich jest praktykowane przez użytkowników bardzo rzadko.

Podstawianie reguł przez MITM domyślnie usuwa użycie HTTPS ładować regularne listy bloków (dla pozostałych list planowane jest zablokowanie pobierania HTTP w przyszłej wersji).

Aby zablokować ataki po stronie witryn, Można zastosować dyrektywy CSP (Polityka bezpieczeństwa treści), za pomocą której możesz jednoznacznie zidentyfikować hosty, z których można ładować zasoby zewnętrzne.

źródło: https://adblockplus.org, https://armin.dev


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.