Closed Bug 1977576 Opened 11 months ago Closed 10 months ago

PDF has started rendering blank with fingerprinting protection due to new WebCodecs RFPTarget

Categories

(Core :: Privacy: Anti-Tracking, defect, P3)

Firefox 142
defect

Tracking

()

VERIFIED FIXED
143 Branch
Tracking Status
firefox-esr115 --- unaffected
firefox-esr128 --- unaffected
firefox-esr140 --- unaffected
firefox140 --- unaffected
firefox141 --- unaffected
firefox142 --- wontfix
firefox143 --- verified
firefox144 --- verified

People

(Reporter: ke5trel, Assigned: fkilic)

References

(Blocks 1 open bug, Regression)

Details

(Keywords: regression)

Attachments

(2 files)

STR:

  1. Enable fingerprinting protection (FPP) with all RFPTargets enabled on latest Nightly 142.0a1:
    privacy.fingerprintingProtection = true
    privacy.fingerprintingProtection.overrides = +AllTargets
  2. Open PDF: https://pigeoncote.com/books/pp/pp13index.pdf.

Expected:
PDF fully renders.

Actual:
PDF is blank except for watermark on bottom.

Works with:
privacy.fingerprintingProtection.overrides = +AllTargets,-WebCodecs

Fails with:
privacy.fingerprintingProtection.overrides = -AllTargets,+WebCodecs

Regression window:
https://hg.mozilla.org/integration/autoland/pushloghtml?fromchange=e509c680c3b146dd3f0827ec267f81976a8e5104&tochange=a86c4baa7bc5f4daf3950e589126d765df298eed

Regressed by Bug 1973265.

:fkilic, since you are the author of the regressor, bug 1973265, could you take a look? Also, could you set the severity field?

For more information, please visit BugBot documentation.

Flags: needinfo?(fkilic)

Unfortunately our pdf.js detection is broken, so we fail to exempt it. I'm honestly not sure what can be done about this. I have tried fixing the pdf.js detection in the past but failed. I have something in mind and I'll try that, but I'm not 100% sure if it'll work. I'll send a patch if it works, if it doesn't i'll report back here.

Flags: needinfo?(fkilic)

interesting not all pdfs are affected. maybe there's some conditional thing

edit: i just noticed even in the sample pdf some things are rendered.

Assignee: nobody → fkilic
Status: NEW → ASSIGNED

the issue seems to the be structured clone failing with postMessage. We don't pass JSContext to VideoFrame::PrefEnabled causing it to not check for pdfjs exemption. So, the attached patch should fix it by passing JSContext to VideoFrame::PrefEnabled.

Set release status flags based on info from the regressing bug 1973265

:fkilic can you set a priority/severity for this? wondering if we are still targeting 142 here

Flags: needinfo?(fkilic)

Assuming this only affects RFP and the regression wasn't included in 140ESR (Tor Browser uses ESR and TB uses RFP), I don't think we need to target 142.

Severity: -- → S3
Flags: needinfo?(fkilic)
Priority: -- → P3
Status: ASSIGNED → RESOLVED
Closed: 10 months ago
Resolution: --- → FIXED
Target Milestone: --- → 143 Branch
QA Whiteboard: [qa-triage-done-c144/b143] [qa-ver-needed-c144/b143]
Flags: qe-verify+
QA Contact: mchiorean

I was able to reproduce the issue on Win11x64 using FF build a1(20250709215737).
Verified as fixed on Win11x64 using FF build 144.0a1(20250825091413) and 143.0b3.

Status: RESOLVED → VERIFIED
QA Whiteboard: [qa-triage-done-c144/b143] [qa-ver-needed-c144/b143] → [qa-triage-done-c144/b143] [qa-ver-done-c144/b143]
Flags: qe-verify+
Duplicate of this bug: 1987782
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: