Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Debounced sites should never show a top-level document blocking interstitial #22437

Closed
antonok-edm opened this issue Apr 20, 2022 · 11 comments · Fixed by brave/brave-core#13412
Closed

Comments

@antonok-edm
Copy link
Collaborator

Some websites have $document options (either implicitly or explicitly) in adblock filter lists, preventing users from accidentally visiting them without first clicking through a top-level document blocking interstitial. Some of those same websites are listed in our debounce list. We should avoid bringing up the interstitial for debounced links, since there are no serverside calls required for the intermediate URL and thus no privacy risk involved.

Some links found in the wild that result in an interstitial, despite being debounced:

https://clickserve.dartsearch.net/link/click?lid=92700067144412497&ds_s_kwgid=58700001236285396&ds_s_inventory_feed_id=97700000000001001&ds_a_cid=75683555&ds_a_caid=378324755&ds_a_agid=26777702795&ds_a_fiid=&ds_a_lid=pla-1457212127228&ds_a_extid=&&ds_e_adid=102712441595&ds_e_matchtype=search&ds_e_device=c&ds_e_network=g&ds_e_product_group_id=1457212127228&ds_e_product_id=202501682&ds_e_product_merchant_id=8740&ds_e_product_country=US&ds_e_product_language=en&ds_e_product_channel=online&ds_e_product_store_id=&ds_url_v=2&ds_dest_url=https://8808.xg4ken.com/trk/v1?prof=404&camp=19651&kct=google&kchid=7097773753&criteriaid=pla-1457212127228&campaignid=378324755&locphy=9061268&adgroupid=26777702795&adpos=&cid=102712441595&networkType=search&kdv=c&kext=&kadtype=pla&kmc=8740&kpid=202501682&url=https://www.homedepot.com/p/Lite-Line-8-ft-White-Track-Finished-HD-TR122/202501682?g_store=&source=shoppingads&locale=en-US&pla&mtc=Shopping-BF-F_Brand-G-Multi-NA-Multi-NA-Feed-PLA_LIA-NA-NA-Catchall_PLA&cm_mmc=Shopping-BF-F_Brand-G-Multi-NA-Multi-NA-Feed-PLA_LIA-NA-NA-Catchall_PLA-71700000014585962-58700001236285396-92700067144412497&gclsrc=aw.ds&gclid=EAIaIQobChMI3c322fag9wIVAcLCBB1ibwDvEAQYAyABEgJD3vD_BwE

https://go.redirectingat.com/?id=111346X1569486&url=https://duckduckgo.com&xcust=1-1-633804-1-0-0&sref=https://www.macworld.com/article/633804/brave-duckduckgo-updates-target-google-amp-sites-in-privacy-push.html

@LaurenWags
Copy link
Member

@pilgrim-brave @pes10k looks like this one is marked QA/Yes but is lacking a test plan, could either of you assist with a test plan? Thanks!

@pes10k
Copy link
Contributor

pes10k commented May 31, 2023

Sure thing. @pilgrim-brave should confirm this is correct, but i think this test should be fine

  1. put shields in aggressive mode (globally)
  2. go to brave://settings/shields/filters
  3. add and save this rule as a custom filter https://dev-pages.brave.software/navigation-tracking/error.html?brave_testing=www.brave.com$document
  4. visit this URL: https://dev-pages.brave.software/navigation-tracking/error.html?brave_testing=https://example.org/$document

If you see the interstitial, the test fails. If you see the example.org page, the test passes

@pilgrim-brave
Copy link

Yes that looks correct.

@stephendonner stephendonner added the QA/In-Progress Indicates that QA is currently in progress for that particular issue label May 31, 2023
@stephendonner
Copy link

Verification PASSED using

Brave 1.53.75 Chromium: 114.0.5735.58 (Official Build) beta (64-bit)
Revision ef012197ab4bc867d7b1dd80a001d0be7da8a714-refs/branch-heads/5735_52@{#7}
OS Windows 10 Version 22H2 (Build 19045.3031)

No interstitial - PASSED

Steps:

  1. installed 1.53.75
  2. launched Brave
  3. set Trackers & ads blocking to Aggressive, in brave://settings/shields
  4. added https://dev-pages.brave.software/navigation-tracking/error.html?brave_testing=www.brave.com$document to brave://settings/shields/filters in the Create custom filters section
  5. clicked Save changes
  6. loaded https://dev-pages.brave.software/navigation-tracking/error.html?brave_testing=https://example.org/$document

Confirmed example.org/$document loaded, without the interstitial-warning page

example example example
image (2) image image

Interstitial - PASSED

Steps:

  1. installed 1.53.75
  2. launched Brave
  3. set Trackers & ads blocking to Aggressive, in brave://settings/shields
  4. added https://dev-pages.brave.software/navigation-tracking/warning-interstitial.html$document to brave://settings/shields/filters in the Create custom filters section
  5. clicked Save changes
  6. loaded https://dev-pages.brave.software/navigation-tracking/warning-interstitial.html

Confirmed the This site may attempt to track you across... interstitial-warning page appears, and can be clicked through via Proceed, to https://dev-pages.brave.software/navigation-tracking/warning-interstitial.html

example example example example
image (2) image (3) image (1) image

@stephendonner stephendonner added QA Pass-Win64 QA/Test-Plan-Specified and removed QA/In-Progress Indicates that QA is currently in progress for that particular issue QA/Test-Plan-Required labels May 31, 2023
@stephendonner stephendonner added the QA/In-Progress Indicates that QA is currently in progress for that particular issue label Jun 5, 2023
@stephendonner
Copy link

stephendonner commented Jun 5, 2023

Verification PASSED using

Brave 1.53.81 Chromium: 114.0.5735.90 (Official Build) beta (x86_64)
Revision 386bc09e8f4f2e025eddae123f36f6263096ae49-refs/branch-heads/5735@{#1052}
OS macOS Version 11.7.7 (Build 20G1345)

No interstitial - PASSED

Steps:

  1. installed 1.53.81
  2. launched Brave
  3. set Trackers & ads blocking to Aggressive, in brave://settings/shields
  4. added https://dev-pages.brave.software/navigation-tracking/error.html?brave_testing=www.brave.com$document to brave://settings/shields/filters in the Create custom filters section
  5. clicked Save changes
  6. loaded https://dev-pages.brave.software/navigation-tracking/error.html?brave_testing=https://example.org/$document

Confirmed example.org/$document loaded, without the interstitial-warning page

example example example
Screen Shot 2023-06-05 at 2 04 32 PM Screen Shot 2023-06-05 at 2 04 53 PM Screen Shot 2023-06-05 at 2 06 43 PM

Interstitial - PASSED

Steps:

  1. installed 1.53.81
  2. launched Brave
  3. set Trackers & ads blocking to Aggressive, in brave://settings/shields
  4. added https://dev-pages.brave.software/navigation-tracking/warning-interstitial.html$document to brave://settings/shields/filters in the Create custom filters section
  5. clicked Save changes
  6. loaded https://dev-pages.brave.software/navigation-tracking/warning-interstitial.html

Confirmed the This site may attempt to track you across... interstitial-warning page appears, and can be clicked through via Proceed, to https://dev-pages.brave.software/navigation-tracking/warning-interstitial.html

example example example example
Screen Shot 2023-06-05 at 2 10 44 PM Screen Shot 2023-06-05 at 2 11 18 PM Screen Shot 2023-06-05 at 2 12 22 PM Screen Shot 2023-06-05 at 2 12 40 PM

@stephendonner stephendonner added QA Pass-macOS and removed QA/In-Progress Indicates that QA is currently in progress for that particular issue labels Jun 5, 2023
@MadhaviSeelam
Copy link

MadhaviSeelam commented Jun 8, 2023

Verification PASSED using

Brave | 1.53.85 Chromium: 114.0.5735.110 (Official Build) beta (64-bit)
-- | --
Revision | 1c828682b85bbc70230a48f5e345489ec447373e-refs/branch-heads/5735_90@{#13}
OS | Linux

No interstitial - PASSED

Steps:

  1. installed 1.53.85
  2. launched Brave
  3. set Trackers & ads blocking to Aggressive, in brave://settings/shields
  4. added https://dev-pages.brave.software/navigation-tracking/error.html?brave_testing=www.brave.com$document to brave://settings/shields/filters in the Create custom filters section
  5. clicked Save changes
  6. loaded https://dev-pages.brave.software/navigation-tracking/error.html?brave_testing=https://example.org/$document

Confirmed example.org/$document loaded, without the interstitial-warning page

example example example
Screenshot from 2023-06-08 13-52-12 Screenshot from 2023-06-08 13-53-20 Screenshot from 2023-06-08 13-55-36

Interstitial - PASSED

Steps:

  1. new profile
  2. launched Brave
  3. set Trackers & ads blocking to Aggressive, in brave://settings/shields
  4. added https://dev-pages.brave.software/navigation-tracking/warning-interstitial.html$document to brave://settings/shields/filters in the Create custom filters section
  5. clicked Save changes
  6. loaded https://dev-pages.brave.software/navigation-tracking/warning-interstitial.html

Confirmed the This site may attempt to track you across... interstitial-warning page appears, and can be clicked through via Proceed, to https://dev-pages.brave.software/navigation-tracking/warning-interstitial.html

example example example example
Screenshot from 2023-06-08 13-52-12 Screenshot from 2023-06-08 13-56-45 Screenshot from 2023-06-08 13-57-03 Screenshot from 2023-06-08 13-57-24

@hffvld
Copy link
Contributor

hffvld commented Jun 9, 2023

Hi @pes10k can you help me with the steps to test it on Android? I don't see filters option in Brave Shields.

Screenshot_20230608-182436

@pes10k
Copy link
Contributor

pes10k commented Jun 12, 2023

The custom filters option isn't currently available on android but is coming (cc @deeppandya @anthonypkeane )

In the meantime though, i think its fine to omit the tests on android, until we have custom filters, since the code paths are identical to desktop

@hffvld
Copy link
Contributor

hffvld commented Jul 12, 2023

Removing the label OS/Android based on a comment from @pes10k confirming that Brave on Android doesn't have Custom filters option as of now.

@hffvld hffvld removed the OS/Android Fixes related to Android browser functionality label Jul 12, 2023
@pes10k
Copy link
Contributor

pes10k commented Jul 12, 2023

@vlad-hoff apologies, update, can you add the custom filters to brave://adblock on android as a short term option

@hffvld hffvld added the OS/Android Fixes related to Android browser functionality label Jul 12, 2023
@hffvld
Copy link
Contributor

hffvld commented Jul 12, 2023

Verified on Pixel 2 XL, Galaxy Tab S8 and Pixel 7 using version(s):

Device/OS: 
- Pixel 2 XL [taimen-user  8.1.0 OPM2.171026.006.H1 release-keys]
- Galaxy Tab S8 [gts8wifixx-user 13 TP1A.220624.014 release-keys]
- Pixel 7 [panther_beta-user 14 UPB3.230519.008 release-keys]
Brave build: 1.56.3
Chromium: 115.0.5790.75 (Official Build) (64-bit)
Revision: 3433e4d513e8454ba0243deea3d53693661dc0c3-refs/branch-heads/5790@{#1430}

No interstitial - PASSED

STEPS:

  1. Launch Brave > Three-dot menu > Settings
  2. Brave Shields & privacy > BLock trackers & ads > Set to Aggressive
  3. Open brave://adblock > Add https://dev-pages.brave.software/navigation-tracking/error.html?brave_testing=www.brave.com$document in Custom Filters section
  4. Now open https://dev-pages.brave.software/navigation-tracking/error.html?brave_testing=https://example.org/$document in the new tab

ACTUAL RESULTS:

  • Verified that example.org/$document loaded, without the interstitial-warning page

Android 8 [phone]

1 2 3 4
1 2 3 4

Android 13 [tablet]

1 2 3 4
1 2 3 4

Android 14 [phone]

1 2 3 4
1 2 3 4
Interstitial - PASSED

STEPS:

  1. Launch Brave > Three-dot menu > Settings
  2. Brave Shields & privacy > BLock trackers & ads > Set to Aggressive
  3. Open brave://adblock > Add https://dev-pages.brave.software/navigation-tracking/warning-interstitial.html$document in Custom Filters section
  4. Now open https://dev-pages.brave.software/navigation-tracking/warning-interstitial.html in the new tab

ACTUAL RESULTS:

  • Verified that This site may attempt to track you across... interstitial-warning page appears, and can be clicked through via Proceed, to https://dev-pages.brave.software/navigation-tracking/warning-interstitial.html

Android 8 [phone]

1 2 3 4
1 2 3 4

Android 13 [tablet]

1 2 3 4
1 2 3 4

Android 14 [phone]

1 2 3 4
1 2 3 4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment