Skip to content

Releases: onlytrisdev/chrome-native-adblock

v1.0.5 - Chrome 154 Support & MV2 Rule v7

Choose a tag to compare

@onlytrisdev onlytrisdev released this 24 Sep 10:32

Summary

Version 1.0.5 introduces full compatibility with Google Chrome 154 (specifically validated on Chrome 154.0.8037.58 x64), updates function preambles and pattern matching for net::URLRequest::Start (handling compiler insertion of push r15), adds MV2 Gate Locator Rule v7 supporting localized resource ID 8115 and updated startup disable branch structures, and verifies end-to-end compatibility across all test suites.

Highlights & Improvements

  • Chrome 154 Network Hook Support:

    • Compiler optimization in Chrome 154 prepends push r15 (41 57) to net::URLRequest::Start (0x01533400) and adjusts stack frame reservation (sub rsp, 60h).
    • Added verified hook rule for Chrome 154.0.8037.58 with RVAs (Start=0x01533400, CancelWithError=0x0A9A4B80).
    • Added SIG_URL_REQUEST_START_V2 dynamic pattern scanner fallback to support both Chrome 152/153 and Chrome 154+ function prologues.
    • Added pre-scanned hook rules under native/hook_rules/chrome-154.0.8037.58.json.
  • MV2 Gate Locator Rule v7:

    • Added Rule v7 pattern recognition for Chrome 154 targeting unsupported manifest localized resource string ID 8115.
    • Added updated byte search preambles and pattern signatures for SplitEntry, MustRemainDisabled, ReEnable, and UserMayInstall clones.
    • Neutralizes startup disable branches and enforces unaffected path for all verified extension copies.

Verification

  • Rust Engine: 17/17 tests passed (cargo test --workspace).
  • .NET Test Suite: 36/36 tests passed (dotnet test .\ChromeNativeAdblock.slnx).
  • Pattern Scan Smoke: 100% verified on real Chrome 154.0.8037.58 (Start=0x1533400, Cancel=0xA9A4B80).
  • Analyze MV2 Smoke: 100% verified semantic patch match (RuleId: chromium.mv2-impact-checker.split-extension-copies.return-unaffected.v7).
  • Engine Smoke: Verified adblock-rust filter evaluation, cosmetic rule extraction, and serialization roundtrip.

v1.0.4 - Chrome 153 Support, Native Vector Decoder & MV2 Rule v6

Choose a tag to compare

@onlytrisdev onlytrisdev released this 09 Sep 16:17

Summary

Version 1.0.4 introduces full compatibility with Google Chrome 153 (specifically validated on Chrome 153.0.8010.37+), implements an adaptive dual binary decoder for std::vector<GURL> layouts across Chromium toolchains, ports the MV2 Rule v6 engine with updated function preambles and startup disable branch detection, and adds an automated multi-site real-world smoke verification suite.

Highlights & Improvements

  • Adaptive std::vector Binary Decoder:

    • Chrome 153 compiler toolchain optimizations altered the internal memory layout of std::vector<GURL> within network::ResourceRequest from the traditional pointer pair ({begin*, end*, cap*}) to a contiguous layout with explicit count ({begin*, count, cap}).
    • native/src/network_hook.rs now auto-detects and decodes both layout representations dynamically:
      • Validates element pointer ranges and size boundaries.
      • Prevents vector length miscalculation, out-of-bounds reads, and potential access violations during network interception on Chrome 153+.
  • MV2 Gate Locator Rule v6:

    • Added Rule v6 pattern recognition for Chrome 153 targeting resource string ID 8085.
    • Updated byte search preambles (48 89 5c 24 10 48 89 6c 24 18 48 89 74 24 20 57 48 83 ec 30 and 48 89 5c 24 08 48 89 74 24 10 57 48 83 ec 30 48 8b f1 48 8b da).
    • Added support for new mov eax, 0 startup disable branch patterns (8b 05 ?? ?? ?? ?? 85 c0 74 ?? 48 8b ?? ... 31 c0).
    • Added pre-scanned hook rules for Chrome 153.0.8010.37 in native/hook_rules/chrome-153.0.8010.37.json.
  • Comprehensive Multi-Site Real-World Smoke Suite:

    • Added web-smoke command to ChromeNativeAdblock.Launcher (RealWebSmoke.cs).
    • Executes end-to-end automated testing with live CDP connection and screenshots across diverse real-world targets:
      • YouTube: Multiple video tests verifying 0 pre-roll/mid-roll ads, flawless playback progression past 3.0s, and no anti-adblock enforcement modal.
      • News Portals (VnExpress & Dân Trí): Validates full collapse of banner ad containers and 100% visibility of core news content.
      • AdBlock Tester: Validates network-level interception of Google AdSense, Yandex, Cloudflare beacon, Bugsnag, Sentry, and third-party trackers.

Verification

  • Rust Engine: 17/17 tests passed (cargo test --workspace).
  • .NET Engine: 36/36 tests passed (dotnet test .\ChromeNativeAdblock.slnx).
  • Live Chrome 153 Verification (153.0.8010.37):
    • Intercepted and blocked 74 ad and tracking network requests at the kernel hook level.
    • YouTube (Rick Astley - Never Gonna Give You Up): Played to 3.3s, 0 ads, 0 errors.
    • YouTube (PSY - Gangnam Style): Played to 3.3s, 0 ads, 0 errors.
    • VnExpress: 7/7 banner slots collapsed, full article feed intact.
    • Dân Trí: 100% commercial banners eliminated, clean layout.
    • AdBlock Tester: Verified blocking of AdSense, analytics, and tracking scripts.

v1.0.3 - Streamlined 8 Core Filters & Clean YouTube Defuser

Choose a tag to compare

@onlytrisdev onlytrisdev released this 02 Sep 11:21

Summary

Version 1.0.3 streamlines the filter catalog to 8 standard uBlock Origin + EasyList + ABPVN lists, removes redundant preset selector layers in favor of direct per-filter toggles (all 8 enabled by default), and upgrades the YouTube adblock mechanism to a transparent uBlock Origin-style property defuser.

Highlights & Improvements

  • Streamlined 8 Core Filter Lists:

    • Removed 38+ bloated regional and redundant lists in favor of 8 standard core lists:
      • uBlock Origin: ublock-filters, ublock-badware, ublock-privacy, ublock-quick-fixes, ublock-unbreak
      • Adblock Plus: easylist, easyprivacy
      • Vietnam Regional: reg-vn (ABPVN)
    • All 8 core lists are enabled by default on initial launch and default reset.
    • Removed the preset selector card from the WinUI 3 interface for a cleaner UI; users can freely toggle individual filter lists directly.
  • Clean YouTube Property Defuser (uBO Standard):

    • Replaced x16 speedup and timeline-jump hacks with transparent Object.defineProperty traps on ytInitialPlayerResponse and ytplayer.config.
    • Intercepts and sanitizes SPA/AJAX fetch responses (/youtubei/v1/player and /youtubei/v1/next) via Response.prototype.json and a stealth JSON.parse wrapper to prevent ads from loading during playlist/radio transitions.
    • Automatic dismissal and cleanup for anti-adblock message dialogs (ytd-enforcement-message-view-model) and backdrop restoration.
    • Video streams start cleanly at 0:00 without timeline stutter, infinite buffering, or playlist stalls.
  • Native Network Hook Cleanups:

    • Removed googlevideo.com/videoplayback network-level blocking from native/src/lib.rs and youtube_rules.txt to prevent stream starvation and infinite spinner loops on copyrighted/Content ID videos.

Verification

  • Rust Engine: 16/16 tests passed (cargo test --workspace).
  • .NET Engine: 32/32 tests passed (dotnet test).
  • Release Build: 0 Errors, 0 Warnings (Release - win-x64).
  • Live Multi-Site Verification on Chrome:
    • YouTube (5 video types + radio playlists): 100% clean, instant 0:00 playback, no ad interruption, no anti-adblock modal.
    • VnExpress: 100% ad slots blocked (9/9).
    • Dân Trí: 100% ad slots blocked (18/18).
    • 24h News: 100% ad slots blocked (5/5).
    • Tuổi Trẻ: 100% clean layout.

v1.0.1 - YouTube playback hotfix

Choose a tag to compare

@onlytrisdev onlytrisdev released this 02 Sep 10:01

Fixes

  • Restores YouTube playback and removes the anti-adblock/player-stall regression.
  • Keeps YouTube network and cosmetic filtering active while disabling detectable response-pruning subscription scriptlets in the YouTube page context.
  • Persists an explicitly empty Custom filter selection.
  • Uses combined_rules.txt for fresh CLI runs instead of accidentally pinning smoke.txt.
  • Adds fail-closed native hook support for Chrome 152.0.7977.76 x64.
  • Replaces the removed third-party YouTube subscription URL with the repository-maintained rules file.
  • Makes release packaging fail when Rust or .NET commands fail.

Verification

  • Rust: 16/16 tests passed.
  • .NET release suite: 32/32 non-integration tests passed.
  • Freshly extracted CLI engine smoke passed as chrome-native-adblock/1.0.1.
  • Chrome 152.0.7977.76 pattern scan passed: Start 0x99D910, Cancel 0xA5AFD00.
  • Live CDP playback check: player progressed, JSON.parse/fetch stayed native, and the YouTube anti-adblock dialog was absent.

YouTube changes frequently. Blocking is best-effort; a short unskippable ad can still race the first tab before CDP attachment on some sessions.

Chrome Native Adblock v1.0.0 - Stable Release

Choose a tag to compare

@onlytrisdev onlytrisdev released this 01 Sep 05:20

Chrome Native Adblock v1.0.0 — Stable Release

Official production stable release of Chrome Native Adblock (Chrome Native Adblock & Manifest V2 Enabler) for Google Chrome on Windows x64.


Highlights & Key Features

  • 100% RAM-only Native Adblock Engine:

    • High-performance native ad filtering powered by adblock-rust.
    • Dynamic PE pattern scanner and Network Service memory hooking that never touches or modifies signed Chrome binaries on disk.
    • Zero disk pollution, zero telemetry, and full preservation of Chrome sandbox and code integrity mitigations.
  • Full 9 Filter Categories & 72 Filter Lists with 5 Blocking Presets:

    • Comprehensive uBlock Origin filter tree (uBlock filters, Badware, Privacy, Quick fixes, Unbreak, Experimental).
    • EasyList, EasyPrivacy, AdGuard Base/Tracking/URL Tracking/Annoyances/Mobile, Peter Lowe, Fanboy, Malware Domain List, and Regional filters.
    • 5 Presets: Standard, Minimal, Balanced, Hardcore, and Custom with one-click instant compilation and atomic caching.
  • YouTube Ad Bypass & Layout Healer:

    • Dynamic URL-scoped cosmetic and scriptlet injection engine.
    • Real-time ad bypass for YouTube video playback.
    • Cosmetic layout healers tailored for Vietnamese news outlets (VnExpress, Tuoi Tre, Thanh Nien, Dân Trí, Kênh 14, etc.) and international media.
  • Manifest V2 RAM Enabler:

    • In-memory semantic gate patch to re-enable classic Manifest V2 extensions on stock Chrome builds.
    • Clean memory-only patching with automatic Chrome process supervision.
  • Modern Windows 11 WinUI 3 Desktop App:

    • Native Fluent Design interface with Mica Alt backdrop, dark/light theme adaptation.
    • Live statistics monitor: real-time blocked requests counter, Network Service PID tracking, and memory usage.
    • System Tray integration with background minimize, quick controls, and exit support.
    • Built-in multi-language localization: Tiếng Việt, English, and 简体中文 (with instant dynamic language switching).

Verification & Downloads

File SHA-256 Checksum
ChromeNativeAdblock-v1.0.0-win-x64.zip bc50cf3b965dda536a6cd0ae29ba7ea51ee0f239185961f76a7fa8a81a6d3e4b

Quick Start

  1. Download ChromeNativeAdblock-v1.0.0-win-x64.zip.
  2. Extract the archive into any folder.
  3. Launch gui\ChromeNativeAdblock.Gui.exe (or ChromeNativeAdblock.Launcher.exe for CLI).