noscript icon indicating copy to clipboard operation
noscript copied to clipboard

NS/Chrome 12.0.2 "Disable restrictions for this tab" not working

Open Hobart opened this issue 1 year ago • 9 comments

I can't repro on all sites, but have two example sites -

Environment: Win 11, Chrome 131.0.6778.86 NoScript 12.0.2 - FFox 132.0.2 NoScript 11.5.2 - both clean NoScript installs with "Temporarily set top-level sites to TRUSTED" checked.

WAB.com:

Graphics demos using the codef .js library included from santo.fr - animation at the top above the white line works of external scripts are enabled. Both Chrome and Firefox do the Right Thing when "Disable restrictions for this tab" checked.

Instagram.com: ⚠️

  • Initial page load (only top-level trusted) is a black screen with logo.
  • After "Disable restrictions for this tab", on Firefox, can go through the full login process and the site is usable.
  • Chrome gets a big grey box .js modal with a spinner in the middle of it.

Apologies for the lack of detail right now - I'd like to provide more in-depth data/test data when I have time this weekend. I'm gonna speculate this is Manifest v3 related.

Hobart avatar Nov 22 '24 20:11 Hobart

Investigating, thanks.

hackademix avatar Nov 23 '24 10:11 hackademix

Please check NoScript 12.0.3, waiting for approval on the Chrome Store.

v 12.0.3
============================================================
x Improved startup behavior
x Do not retry failed synchronous policy retrievals if
  document is not loading
x Coalesce activity reports by origin
x More robust initialization sequence
x Fix DNRPolicy matching for entries including explicit
  protocol

hackademix avatar Nov 25 '24 06:11 hackademix

Please check NoScript 12.0.3, waiting for approval on the Chrome Store.

This version has resolved the problem with "Disable restrictions for this tab" outlined above - thanks! NoScript is working with both sites as before! ✅

I have enclosed the extension-manager error logs in hopes it may be useful

Errors
'background.persistent' requires manifest version of 2 or lower.
'background.scripts' requires manifest version of 2 or lower.
'dns' requires dev channel or newer, but this is the stable channel.
Error: Unsafe call to chrome-extension://nlekggpcdnjbdcecdepjmiglhfmnimcm/ from at x (https://slashdot.org/cdn-cgi/challenge-platform/scripts/jsd/main.js:1:7582) (about:blank, <STACK>
Error: Too many SyncMessage loops! SyncMessage 13c904d9-f640-4abc-81f2-258d0ad776a5:81b54515-f92f-4d99-8fad-166ef8e676d9 error in https://old.reddit.com/: Too many SyncMessage loops! (response data:application/json,%7B%22loop%22%3A1%7D {"loop":1})
Uncaught (in promise) Error: Cannot access a chrome:// URL
Error: Unsafe call to chrome-extension://nlekggpcdnjbdcecdepjmiglhfmnimcm/ from at m (https://stackoverflow.com/cdn-cgi/challenge-platform/scripts/jsd/main.js:1:4604) (about:blank, <STACK>
Error: Could not establish connection. Receiving end does not exist. Cannot collect noscript activity data at Object.collectSeen (chrome-extension://nlekggpcdnjbdcecdepjmiglhfmnimcm/bg/main.js:448:11) at async onActivatedTab (chrome-extension://nlekggpcdnjbdcecdepjmiglhfmnimcm/bg/RequestGuard.js:251:18)
Uncaught (in promise) Error: Frame with ID 0 was removed.
Unchecked runtime.lastError: Could not establish connection. Receiving end does not exist.

Hobart avatar Nov 25 '24 18:11 Hobart

Maybe-still-happening - a side by site usage of a Guest profile sans NoScript, and a profile with the 12.0.3 and "Disable restrictions for this tab" are behaving differently.

Test site: https://www.walgreens.com/store/c/hair-care/ID=360339-tier2general Steps to reproduce: Click the breadcrumbs "Hair Care" at the top. image

If there are relevant logs I can provide please let me know. Thanks!

Hobart avatar Nov 25 '24 22:11 Hobart

I can't reproduce on latest non-chrome-store version 12.0.5.

Can you confirm?

hackademix avatar Nov 26 '24 09:11 hackademix

I can't reproduce on latest non-chrome-store version 12.0.5.

Can you confirm?

image

When navigating to the link above - (left) NS12.0.5+DisableRestrictions (right) Guest profile

Pasting the url into the address bar the first time doesn't populate the <ul> inside <div class="links__listed" Pasting it in a second time, it works 😕 Navigating with the bread-crumbs (clicking "Beauty" from the "Beauty > Hair Care" near the top) works fine on the Guest, but gets unfilled nav elements on the other one.

Apologies for this being a terribly abstract problem to repro - this was just the first one I saw.

Hobart avatar Nov 26 '24 22:11 Hobart

Thank you for your repeated tests.

It starts looking like a bug in the Manifest V3 declarativeNetRequest API, i.e. it seems that even if the unrestricted tab feature creates an high priority allowAllRequests rule for that tab, it doesn't get honored for every subrequest as specified but instead some blocking rules are matched anyway.

Further investigation needed...

hackademix avatar Nov 28 '24 07:11 hackademix

Thank you for your repeated tests.

It starts looking like a bug in the Manifest V3 declarativeNetRequest API, i.e. it seems that even if the unrestricted tab feature creates an high priority allowAllRequests rule for that tab, it doesn't get honored for every subrequest as specified but instead some blocking rules are matched anyway.

Further investigation needed...

hackademix avatar Nov 28 '24 23:11 hackademix

Please check https://noscript.net/getit/#nonstore-versions-for-chromium (12.0.6), thank you.

hackademix avatar Nov 28 '24 23:11 hackademix