Closed Bug 1803268 Opened 1 year ago Closed 1 year ago

regression: RFP navigator spoof fails in initial about:blank iframes

Categories

(Core :: DOM: Core & HTML, defect)

Firefox 109
defect

Tracking

()

VERIFIED FIXED
109 Branch
Tracking Status
firefox-esr102 --- wontfix
firefox107 --- wontfix
firefox108 --- verified
firefox109 --- verified

People

(Reporter: simon.mainey, Assigned: emilio)

References

(Regression)

Details

(Keywords: regression)

Attachments

(3 files)

Attached image iframediff.png

Regression from Bug 1799435

STR

  • use an OS that does not match the spoof (e.g Win 7: spoof is Win10)
  • go to about:config and change privacy.resistFingerprinting to true
  • load https://arkenfox.github.io/TZP/tzp.html#useragent
  • click the iframe diffs
  • see pic: the OS version spoof is not applied
Component: Untriaged → DOM: Core & HTML
Product: Firefox → Core
Flags: needinfo?(tom)
Flags: needinfo?(emilio.alvarez96)
Regressed by: 1799435
Flags: needinfo?(emilio.alvarez96)

Wrong ni? presumably?

Flags: needinfo?(emilio)

Can you be more specific on where do I need to click to get those logs? Or even better attach a reduced test-case that shows the issue?

Flags: needinfo?(emilio) → needinfo?(simon.mainey)

the output is in the console (from clicking [diff]), and all seven iframe methods fail - the diffs are compared to the values shown above. But nvm ... here's a simplified test with just a single nested iframe, returning four screen/window metrics - https://arkenfox.github.io/TZP/tests/screeniframe.html

RFP will make screen, available screen, and outer == inner (just don't be full screen to test it). It fails to do so in the iframe. All output on the test page. Is this enough to go on?

This is now live in stable (107.1) :-( and I suspect most if not all RFP protections are not being applied in iframes

Flags: needinfo?(simon.mainey)
Summary: regression: RFP navigator spoof fails in iframes → regression: RFP navigator spoof fails in initial about:blank iframes

So that it returns the right answer on initial about:blank.

Assignee: nobody → emilio
Status: NEW → ASSIGNED

This doesn't change behavior but it's cleaner, and while I was near that
code...

Pushed by ealvarez@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/6560bda24ee9
Compute should resist fingerprinting on Document::Init. r=smaug
Pushed by ealvarez@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/f0c113aee645
Minor clean-up in nsScreen::ShouldResistFingerprinting(). r=smaug
Status: ASSIGNED → RESOLVED
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → 109 Branch

Comment on attachment 9306078 [details]
Bug 1803268 - Compute should resist fingerprinting on Document::Init. r=smaug

Beta/Release Uplift Approval Request

  • User impact if declined: comment 0
  • Is this code covered by automated tests?: Yes
  • Has the fix been verified in Nightly?: Yes
  • Needs manual test from QE?: Yes
  • If yes, steps to reproduce: comment 0
  • List of other uplifts needed: none
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky): one-liner + test
  • String changes made/needed: none
  • Is Android affected?: Yes
Attachment #9306078 - Flags: approval-mozilla-beta?
Flags: qe-verify+

Comment on attachment 9306078 [details]
Bug 1803268 - Compute should resist fingerprinting on Document::Init. r=smaug

Approved for 108.0b9

Attachment #9306078 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
QA Whiteboard: [qa-triaged]

I was able to reproduce the issue with Firefox 109.0a1 (2022-11-29) on Windows 7 by following the STR provided in Comment 0.

The issue is fixed and the iframes matches on Firefox 108.0b9 and Firefox 109.0a1 (2022-12-04) under the same system.

Status: RESOLVED → VERIFIED
Flags: qe-verify+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: