brave/brave-browser

Fix segfault in DomainBlockNavigationThrottle

Closed this issue · 5 comments

As per brave/adblock-rust#248:

add these rules to brave://settings/shields/filters

||startpage.com^$removeparam=sc
||startpage.com^$removeparam=t
||startpage.com^$removeparam=cat
||startpage.com^$removeparam=abp
||startpage.com^$removeparam=lui
||startpage.com^$removeparam=qloc

Go to https://startpage.com/do/settings?query= and change the HTTP request method from POST to GET, then save the settings. Brave should crash immediately.

This is likely related to brave/brave-core#15943

The above requires 1.47.176 or higher for 1.47.x verification 👍

Verification passed on

Brave 1.47.177 Chromium: 109.0.5414.87 (Official Build) (64-bit)
Revision 2dc18eb511c56e012081b4abc9e38c81c885f7d4-refs/branch-heads/5414@{#1241}
OS Ubuntu 18.04 LTS

Reproduced the issue in 1.47.169

image
image

Verified in 1.47.177
Steps:

  1. Open brave://settings/shields/filters
  2. Paste the rules below into Create custom filters
||startpage.com^$removeparam=sc
||startpage.com^$removeparam=t
||startpage.com^$removeparam=cat
||startpage.com^$removeparam=abp
||startpage.com^$removeparam=lui
||startpage.com^$removeparam=qloc
  1. Click Save Changes
  2. Open https://startpage.com/do/settings?query=
  3. Change HTTP request method to GET
  4. Click Save your settings

Saved rules:
image

Changed HTTP request method to GET
image

No crash, settings were saved succesfully
image

Verification PASSED using

Brave | 1.47.177 Chromium: 109.0.5414.87 (Official Build) (64-bit)
-- | --
Revision | 2dc18eb511c56e012081b4abc9e38c81c885f7d4-refs/branch-heads/5414@{#1241}
OS | Windows 11 Version 21H2 (Build 22000.1455)

Reproduced in 1.47.171 using testplan from #27791 (comment)

example

image

Steps:

  1. Install 1.47.177
  2. launch Brave
  3. Click Skip>>Skip>>Finish
  4. open brave://settings/shields/filters
  5. paste the rules below into Create custom filters
    ||startpage.com^$removeparam=sc
    ||startpage.com^$removeparam=t
    ||startpage.com^$removeparam=cat
    ||startpage.com^$removeparam=abp
    ||startpage.com^$removeparam=lui
    ||startpage.com^$removeparam=qloc
    
  6. click Save Changes
  7. open https://startpage.com/do/settings?query=
  8. change HTTP request method to GET
  9. click Save your settings
step 6 step 8 step 9
image image image

Verification PASSED using

Brave 1.47.177 Chromium: 109.0.5414.87 (Official Build) (x86_64)
Revision 2dc18eb511c56e012081b4abc9e38c81c885f7d4-refs/branch-heads/5414@{#1241}
OS macOS Version 11.7.2 (Build 20G1020)

Confirmed crash using the below steps, in current 1.47.171 release:

Screen Shot 2023-01-19 at 9 18 15 AM

Steps:

  1. installed 1.47.177
  2. launched Brave
  3. skipped onboarding
  4. opened brave://settings/shields/filters
  5. pasted the following rules into Create custom filters
||startpage.com^$removeparam=sc
||startpage.com^$removeparam=t
||startpage.com^$removeparam=cat
||startpage.com^$removeparam=abp
||startpage.com^$removeparam=lui
||startpage.com^$removeparam=qloc
  1. clicked Save changes
  2. loaded https://startpage.com/do/settings?query=
  3. changed HTTP request method to GET
  4. clicked Save your settings

Confirmed no crash

example example example
Screen Shot 2023-01-19 at 9 11 06 AM Screen Shot 2023-01-19 at 9 11 53 AM Screen Shot 2023-01-19 at 9 22 07 AM

Verified on Samsung Galaxy S21 & Samsung Galaxy Tab S7 using the following version(s):

Brave	1.47.181 Chromium: 109.0.5414.87 (Official Build) (64-bit) 
Revision	2dc18eb511c56e012081b4abc9e38c81c885f7d4-refs/branch-heads/5414@{#1241}
OS	Android 13; Build/TP1A.220624.014
Brave	1.47.181 Chromium: 109.0.5414.87 (Official Build) (64-bit) 
Revision	2dc18eb511c56e012081b4abc9e38c81c885f7d4-refs/branch-heads/5414@{#1241}
OS	Android 12; Build/SP2A.220305.013

STR:

  1. Open brave://adblock for mobile
  2. Paste the rules below into Create custom filters
||startpage.com^$removeparam=sc
||startpage.com^$removeparam=t
||startpage.com^$removeparam=cat
||startpage.com^$removeparam=abp
||startpage.com^$removeparam=lui
||startpage.com^$removeparam=qloc
  1. Click Save Changes
  2. Open https://startpage.com/do/settings?query=
  3. Change HTTP request method to GET
  4. Click Save your settings
Example Example Example
screenshot-1674502504428 screenshot-1674502653901 screenshot-1674502675133
Example Example Example Example
screenshot-1674502878591 screenshot-1674502928634 screenshot-1674502934750 screenshot-1674502944497