Skip to content
This repository has been archived by the owner on May 10, 2024. It is now read-only.

Fingerprinting 2.0: hardwareConcurrency #5268

Closed
cuba opened this issue Apr 20, 2022 · 1 comment · Fixed by #5269
Closed

Fingerprinting 2.0: hardwareConcurrency #5268

cuba opened this issue Apr 20, 2022 · 1 comment · Fixed by #5269

Comments

@cuba
Copy link
Contributor

cuba commented Apr 20, 2022

Description:

Based on the requirements here: brave/brave-browser#10808
Note: we are applying the basic farbling requirements.

Summary

Farble window.navigator.hardwareConcurrency to be a value between 2 and the true value.

Setup testing environment

  1. Enable Web Inspector. This is done in the Settings app on the device under Safari -> Advanced
  2. Enable debugging tools on safari (desktop).

Testing:

Farbling tests can be found here:
https://dev-pages.brave.software/fingerprinting/farbling.html

Additional tests

  1. Connect phone to computer using a cable
  2. Open up browser and navigate to any link (YouTube.come, Brave.com, whatever)
  3. Open web inspector in safari -> Develop -> ->
  4. Ensure Fingerprint protection is disabled
  5. In the console write window.navigator.hardwareConcurrency You should have a true value (this will likely be 8)
  6. Ensure Fingerprint protection is enabled
  7. In the console write window.navigator.hardwareConcurrency You should have a fake value between 2 and the true value (note the true value may appear too)
  8. Repeat this for other sites. Each page may give you a different random value (this is the point). But some sites may have the same random value (we don't have a huge list of random values to chose from)
@cuba cuba self-assigned this Apr 20, 2022
cuba added a commit that referenced this issue Apr 20, 2022
@kylehickinson kylehickinson added this to the 1.39 milestone May 10, 2022
cuba added a commit that referenced this issue May 10, 2022
@iccub iccub added the QA/Yes label May 17, 2022
@srirambv
Copy link
Contributor

Verification passed on the following devices running 1.39 (22.5.24.16)

  • Verified test plan from #5269 & on https://fingerprint-protection-test.herokuapp.com/
  • Verified with FP enabled the value is lower than the true value
  • Verified with FP disabled show the true value
  • Verified on older devices, the test shows NaN when FP is enabled and undefined when FP is disabled
Device/OS ☑️ iPhone 7+ (iOS 14.8.1) ☑️ iPhone XR (iOS 15.3) ☑️ iPad Pro (iOS 15.5)
Fingerprint ON
Fingerprint OFF

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants