Opcje uBlock Origin i AdGuard zostały przygotowane z obsługą trzeciej wersji manifestu Chrome

Raymond Hill, autor systemów blokujących niechciane treści uBlock Origin, opublikował eksperymentalny dodatek do przeglądarki uBO Minus z implementacją wariantu uBlock Origin przetłumaczonego na deklarativeNetRequest API, którego użycie jest zalecane w trzeciej wersji Manifest Chrome. W przeciwieństwie do klasycznego uBlock Origin, nowy dodatek wykorzystuje możliwości wbudowanego w przeglądarkę mechanizmu filtrowania treści i nie wymaga uprawnień instalacyjnych, aby przechwytywać i zmieniać wszystkie dane witryny.

Dodatek nie posiada jeszcze wyskakującego panelu ani stron ustawień, a funkcjonalność ogranicza się do blokowania żądań sieciowych. Aby pracować bez rozszerzonych uprawnień, funkcje takie jak filtry kosmetyczne do zastępowania treści na stronie („##”), zastępowanie skryptów w witrynach („##+js”), filtry do żądań przekierowania („redirect=”) i nagłówek filtry są wyłączone CSP (Content Security Policy) oraz filtry do usuwania parametrów żądania („removeparam=”). W przeciwnym razie lista domyślnych filtrów w pełni odpowiada zestawowi z uBlock Origin i zawiera około 22 tysięcy reguł.

Ponadto kilka dni temu zaprezentowano eksperymentalną wersję dodatku blokującego reklamy AdGuard - AdGuardMV3, który również został przetłumaczony na deklarativeNetRequest API i może działać w przeglądarkach obsługujących jedynie trzecią edycję manifestu Chrome. Prototyp zaproponowany do testów zapewnia wszystkie funkcje blokowania reklam wymagane przez zwykłych użytkowników, jednak pod względem zaawansowanych możliwości pozostaje w tyle za dodatkiem do drugiej edycji manifestu, który może zainteresować zaawansowanych użytkowników.

Nowy AdGuard będzie w dalszym ciągu ukrywał banery, widżety sieci społecznościowych i irytujące elementy, blokował reklamy na platformach wideo takich jak YouTube i aktywnie blokował żądania związane ze śledzeniem ruchów. Ograniczenia obejmują migotanie wstawek reklamowych w związku z opóźnieniem 1.5-2 sekundy w zastosowaniu reguł kosmetycznych, utratę niektórych możliwości związanych z filtrowaniem plików cookie, stosowaniem wyrażeń regularnych i filtrowaniem parametrów zapytań (nowe API zapewnia uproszczone wyrażenia regularne) , dostępność statystyk i dzienników odpowiedzi filtrów tylko w trybie programisty.

Wspomniano także o możliwym zmniejszeniu liczby zasad w związku z ograniczeniami wprowadzonymi w trzeciej wersji manifestu. Jeśli w przeglądarce jest zainstalowany jeden dodatek korzystający z deklarativeNetRequest, nie ma problemów z regułami statycznymi, ponieważ istnieje ogólny limit dla wszystkich dodatków, dopuszczający 330 tysięcy reguł. W przypadku kilku dodatków stosowany jest limit 30 tysięcy reguł, co może nie wystarczyć. Wprowadzono limit 5000 reguł dla reguł dynamicznych i 1000 reguł dla wyrażeń regularnych.

Od stycznia 2023 r. przeglądarka Chrome planuje zaprzestać obsługi drugiej wersji manifestu i sprawić, że trzecia wersja będzie obowiązkowa dla wszystkich dodatków. Początkowo trzecia wersja manifestu stała się przedmiotem krytyki ze względu na zakłócanie pracy wielu dodatków blokujących nieodpowiednie treści i zapewniających bezpieczeństwo. Manifest Chrome definiuje możliwości i zasoby udostępniane dodatkom. Trzecia wersja manifestu została opracowana w ramach inicjatywy mającej na celu wzmocnienie bezpieczeństwa, prywatności i wydajności dodatków. Głównym celem zmian jest ułatwienie tworzenia bezpiecznych i wydajnych dodatków oraz utrudnienie tworzenia niebezpiecznych i powolnych dodatków.

Główne niezadowolenie z trzeciej wersji manifestu wiąże się z tłumaczeniem na tryb tylko do odczytu interfejsu API webRequest, co umożliwiło podłączenie własnych handlerów, które mają pełny dostęp do żądań sieciowych i mogą na bieżąco modyfikować ruch. Ten interfejs API jest używany w uBlock Origin, AdGuard i wielu innych dodatkach do blokowania niechcianych treści i zapewnienia bezpieczeństwa. Zamiast webRequest API, trzecia wersja manifestu oferuje deklarativeNetRequest API o ograniczonych możliwościach, który zapewnia dostęp do wbudowanego silnika filtrującego, który samodzielnie przetwarza reguły blokujące, nie pozwala na stosowanie własnych algorytmów filtrujących i nie pozwalają na ustawienie skomplikowanych reguł, które nakładają się na siebie w zależności od warunków.

W ciągu trzech lat dyskusji na temat nadchodzącej trzeciej wersji manifestu Google uwzględnił wiele życzeń społeczności i rozszerzył pierwotnie zapewniony deklarativeNetRequest API o możliwości wymagane w istniejących dodatkach. Na przykład firma Google dodała obsługę interfejsu API deklarativeNetRequest w celu korzystania z wielu statycznych zestawów reguł, filtrowania wyrażeń regularnych, modyfikowania nagłówków HTTP, dynamicznego zmieniania i dodawania reguł, usuwania i zastępowania parametrów zapytań, filtrowania na podstawie kart i tworzenia zestawów reguł specyficznych dla sesji.

Źródło: opennet.ru

Dodaj komentarz