A Funny Bug in Chrome's MV3 Extensions

2025-07-13

Google Chrome's transition from MV2 to MV3 removed the webRequestBlocking permission, breaking many ad blockers. However, the author discovered a quirky bug: due to the use of JavaScript bindings in Chrome extension APIs, manipulating parameters in the `chrome.webRequest` event constructor allowed bypassing permission checks and enabling ad blocking. While this bug didn't pose a security risk, it highlighted potential issues lurking in legacy code and the possibility of achieving unexpected results by cleverly exploiting technical details. The author reported the bug to Google, and it has since been patched.

Development