ریموند هیل، نویسنده سیستمهای مسدودکننده uBlock Origin برای محتوای ناخواسته، یک افزونه آزمایشی مرورگر uBO Minus را با پیادهسازی نوع uBlock Origin که به API declarativeNetRequest ترجمه شده است، منتشر کرد که استفاده از آن در نسخه سوم مانیفست کروم. برخلاف نسخه کلاسیک uBlock Origin، افزونه جدید از قابلیتهای موتور فیلتر محتوای داخلی مرورگر استفاده میکند و برای رهگیری و تغییر تمام دادههای سایت به مجوزهای نصب نیاز ندارد.
این افزونه هنوز یک پانل پاپ آپ یا صفحات تنظیمات ندارد و عملکرد آن محدود به مسدود کردن درخواست های شبکه است. برای کار بدون مجوزهای توسعهیافته، ویژگیهایی مانند فیلترهای آرایشی برای جایگزینی محتوا در صفحه (##)، جایگزینی اسکریپتها در سایتها (##+js)، فیلترهایی برای تغییر مسیر درخواستها (“redirect=”) و هدر فیلترها CSP (خط مشی امنیتی محتوا) و فیلترهای حذف پارامترهای درخواست ("removeparam=") غیرفعال هستند. در غیر این صورت، لیست فیلترهای پیش فرض کاملاً با مجموعه ای از uBlock Origin مطابقت دارد و شامل حدود 22 هزار قانون است.
علاوه بر این، چند روز پیش یک نسخه آزمایشی از افزونه مسدودکننده تبلیغات AdGuard ارائه شد - AdGuardMV3، که همچنین به API declarativeNetRequest ترجمه شد و قادر به کار در مرورگرهایی است که فقط از نسخه سوم مانیفست کروم پشتیبانی می کنند. نمونه اولیه پیشنهادی برای آزمایش، تمام عملکردهای مسدود کردن تبلیغات مورد نیاز کاربران عادی را ارائه میکند، اما در قابلیتهای پیشرفتهاش از افزونه نسخه دوم مانیفست عقبتر است، که ممکن است برای کاربران پیشرفته جالب باشد.
AdGuard جدید به پنهان کردن بنرها، ویجت های شبکه اجتماعی و عناصر مزاحم، مسدود کردن تبلیغات در پلتفرم های ویدیویی مانند یوتیوب و مسدود کردن فعالانه درخواست های مربوط به ردیابی حرکات ادامه خواهد داد. محدودیت ها شامل سوسو زدن درج های تبلیغاتی به دلیل تأخیر 1.5-2 ثانیه در اعمال قوانین آرایشی، از دست دادن برخی از قابلیت های مربوط به فیلتر کوکی، استفاده از عبارات منظم و فیلتر پارامترهای پرس و جو (API جدید عبارات منظم ساده شده را ارائه می دهد) ، در دسترس بودن آمار و گزارش های پاسخ فیلتر فقط در حالت برنامه نویس.
همچنین به کاهش احتمالی تعداد قوانین به دلیل محدودیت های ارائه شده در نسخه سوم مانیفست اشاره شده است. اگر مرورگر یک افزونه نصب کرده باشد که از declarativeNetRequest استفاده می کند، هیچ مشکلی با قوانین ثابت وجود ندارد، زیرا یک محدودیت کلی برای همه افزونه ها وجود دارد که اجازه 330 هزار قانون را می دهد. وقتی چندین اضافه وجود دارد، محدودیت 30 هزار قانون اعمال می شود که ممکن است کافی نباشد. محدودیت 5000 قانون برای قوانین پویا و 1000 قانون برای عبارات منظم معرفی شده است.
از ژانویه 2023، مرورگر کروم قصد دارد پشتیبانی از نسخه دوم مانیفست را متوقف کند و نسخه سوم را برای همه افزونه ها اجباری کند. در ابتدا، نسخه سوم مانیفست به دلیل اختلال در بسیاری از افزونه ها برای مسدود کردن محتوای نامناسب و تضمین امنیت، هدف انتقاد قرار گرفت. مانیفست کروم قابلیت ها و منابع ارائه شده به افزونه ها را تعریف می کند. نسخه سوم مانیفست به عنوان بخشی از یک ابتکار برای تقویت امنیت، حریم خصوصی و عملکرد افزونه ها توسعه یافته است. هدف اصلی تغییرات ایجاد آسانتر افزونههای ایمن و با کارایی بالا و دشوارتر کردن ایجاد افزونههای ناامن و کند است.
نارضایتی اصلی از نسخه سوم مانیفست مربوط به ترجمه به حالت فقط خواندنی webRequest API است که امکان اتصال کنترل کننده های خود را که دسترسی کامل به درخواست های شبکه دارند و می توانند ترافیک را در پرواز تغییر دهند، می دهد. این API در uBlock Origin، AdGuard و بسیاری از افزونه های دیگر برای مسدود کردن محتوای ناخواسته و تضمین امنیت استفاده می شود. به جای webRequest API، نسخه سوم مانیفست یک API اعلامی NetRequest با قابلیت محدود ارائه می دهد که دسترسی به یک موتور فیلتر داخلی را فراهم می کند که به طور مستقل قوانین مسدود کردن را پردازش می کند، استفاده از الگوریتم های فیلتر خود را مجاز نمی داند و اجازه نمی دهد. اجازه می دهد قوانین پیچیده ای را تنظیم کنید که بسته به شرایط با یکدیگر همپوشانی دارند.
در طول سه سال بحث در مورد نسخه سوم آتی مانیفست، Google بسیاری از خواستههای جامعه را در نظر گرفته و API اعلامی NetRequest را که در اصل با قابلیتهای مورد نیاز در اضافات موجود ارائه شده بود، گسترش داده است. به عنوان مثال، Google برای استفاده از چندین قواعد ثابت، فیلتر کردن عبارات منظم، تغییر هدرهای HTTP، تغییر و افزودن قوانین به صورت پویا، حذف و جایگزینی پارامترهای پرس و جو، فیلتر مبتنی بر برگه، و ایجاد مجموعه قوانین خاص جلسه، به API declarativeNetRequest پشتیبانی اضافه کرده است.
منبع: opennet.ru