Skip to content
This repository has been archived by the owner on Jun 24, 2022. It is now read-only.

Changing the extensions.blocklist.url flag #565

Merged
2 commits merged into from
Nov 7, 2018
Merged

Conversation

HxxxxxS
Copy link
Contributor

@HxxxxxS HxxxxxS commented Nov 7, 2018

Limit the amount of identifiable information sent when requesting the Mozilla harmful extensions blocklist.

Description

From Reddit user /u/LocalFigurez at https://old.reddit.com/r/privacytoolsIO/comments/9uqeew/firefox_tip_sanitize_firefox_blocklist_url_so_it/

Firefox includes feature that connects in regular time intervals (every 24 hour) to the Mozilla's servers to download blocklist of harmful extensions, vulnerable plugins and crash-prone graphic drivers. This request includes following information:

APP_ID
APP_VERSION
PRODUCT
VERSION
BUILD_ID
BUILD_TARGET
OS_VERSION
LOCALE
CHANNEL
PLATFORM_VERSION
DISTRIBUTION
DISTRIBUTION_VERSION
PING_COUNT
TOTAL_PING_COUNT
DAYS_SINCE_LAST_PING

By changing extensions.blocklist.url from

https://blocklists.settings.services.mozilla.com/v1/blocklist/3/%APP_ID%/%APP_VERSION%/%PRODUCT%/%BUILD_ID%/%BUILD_TARGET%/%LOCALE%/%CHANNEL%/%OS_VERSION%/%DISTRIBUTION%/%DISTRIBUTION_VERSION%/%PING_COUNT%/%TOTAL_PING_COUNT%/%DAYS_SINCE_LAST_PING%/

to

https://blocklists.settings.services.mozilla.com/v1/blocklist/3/%APP_ID%/%APP_VERSION%/

Firefox won't send identifiable information in the blocklist request and you will still get all the security features from it.

HTML Preview

https://htmlpreview.github.io/?https://github.com/HxxxxxS/privacytools.io/blob/patch-1/index.html

Limit the amount of identifiable information sent when requesting the Mozilla harmful extensions blocklist.
@ghost
Copy link

ghost commented Nov 7, 2018

Thank you.

Can anyone confirm that it will download the same list even if you limit the arguments to APP_ID and APP_VERSION?

@zalox
Copy link

zalox commented Nov 7, 2018

Hi @Shifterovich, I can't confirm, but if you do https://blocklists.settings.services.mozilla.com/v1/blocklist/3/%20/%20/ you get the list.

@HxxxxxS
Copy link
Contributor Author

HxxxxxS commented Nov 7, 2018

https://i.imgur.com/1u75Xim.png
Changing random parameters from null
https://i.imgur.com/CADDurI.png

@HxxxxxS
Copy link
Contributor Author

HxxxxxS commented Nov 7, 2018

I suppose you could even set the extensions.blocklist.urlflag to the nullbyte parameter url @zalox posted above.

@Shifterovich let me know if you think I should edit the PR to include this.

@zalox
Copy link

zalox commented Nov 7, 2018

Hi @HxxxxxS, your wget diff should use capital -O instead of -o.

I took the liberty to test with the version set to 63.0:

wget -O 1.html -q https://blocklists.settings.services.mozilla.com/v1/blocklist/3/%20/%20/63.0
wget -O 2.html -q https://blocklists.settings.services.mozilla.com/v1/blocklist/3/%20/%20/
diff 1.html 2.html

edit: remove $ in front of bash commands

@HxxxxxS
Copy link
Contributor Author

HxxxxxS commented Nov 7, 2018

Haha, my bad. But seems point still stands.

@ghost
Copy link

ghost commented Nov 7, 2018

╭─xxx@yyy /tmp/ptio  
╰─$ sha256sum 1.html 
5f036970d2889afbc10da1b01733f4c02d8ace7c5e57d936c33ecc163d0c152e  1.html
╭─xxx@yyy /tmp/ptio  
╰─$ sha256sum 2.html 
5f036970d2889afbc10da1b01733f4c02d8ace7c5e57d936c33ecc163d0c152e  2.html

https://blocklists.settings.services.mozilla.com/v1/blocklist/3/privacy/tools/ works as well. Any pair of values works as long as it ends with /.

The one concern with changing APP_ID/VERSION to something random is that it could break some things, but at this time, mozilla.com serves the same content regardless of these values.

I like the null byte approach the most. Even better than serving APP_ID. Can you update the PR to the null byte version?

We don't actually need to supply the `%APP_ID%`/`%APP_VERSION%` parameters
@ghost ghost merged commit 81a659d into privacytools:master Nov 7, 2018
@ghost
Copy link

ghost commented Nov 7, 2018

Thanks.

@ghost
Copy link

ghost commented Nov 7, 2018

@Shifterovich

Also there is browser.safebrowsing.downloads.remote.enabled preference which can be set to false. This disables safebrowsing binaries which aren't on local lists being checked by Google (real-time metadata checking). Also this does NOT disable safebrowsing feature which would otherwise weaken security.

https://feeding.cloud.geek.nz/posts/how-safe-browsing-works-in-firefox/

This was pointed out in the same Reddit thread.

@ghost
Copy link

ghost commented Nov 7, 2018

@GuyInTheShadows Take a look at #339

@ghost
Copy link

ghost commented Nov 7, 2018

Thanks for the link. I will read it through.

@beerisgood
Copy link

@GuyInTheShadows you don't need safebrowsing if you use uBlock Origin.
Also using safebrowsing is a privacy problem

@HxxxxxS HxxxxxS deleted the patch-1 branch March 12, 2019 09:13
This pull request was closed.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants