CVE-2025-3028

6.5 MEDIUM

📋 TL;DR

This vulnerability allows JavaScript code to trigger a use-after-free condition during XSLT document transformations in Mozilla browsers and email clients. Attackers could exploit this to execute arbitrary code or cause crashes. Affected users include anyone running vulnerable versions of Firefox, Firefox ESR, or Thunderbird.

💻 Affected Systems

Products:
  • Firefox
  • Firefox ESR
  • Thunderbird
Versions: Firefox < 137, Firefox ESR < 115.22, Firefox ESR < 128.9, Thunderbird < 137, Thunderbird < 128.9
Operating Systems: Windows, macOS, Linux, Android, iOS
Default Config Vulnerable: ⚠️ Yes
Notes: All default configurations are vulnerable when processing JavaScript during XSLT transformations.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution leading to full system compromise, data theft, or malware installation.

🟠

Likely Case

Browser/application crash (denial of service) or limited memory corruption leading to unstable behavior.

🟢

If Mitigated

No impact if systems are patched or have JavaScript disabled for untrusted content.

🌐 Internet-Facing: HIGH - Web browsers process untrusted content from the internet by design.
🏢 Internal Only: MEDIUM - Internal web applications could still trigger the vulnerability if they use XSLT transformations.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ⚠️ Yes
Complexity: MEDIUM

Exploitation requires JavaScript execution during XSLT processing, which is common in web applications but requires specific conditions.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Firefox 137+, Firefox ESR 115.22+, Firefox ESR 128.9+, Thunderbird 137+, Thunderbird 128.9+

Vendor Advisory: https://www.mozilla.org/security/advisories/mfsa2025-20/

Restart Required: Yes

Instructions:

1. Open Firefox/Thunderbird. 2. Click menu → Help → About Firefox/Thunderbird. 3. Allow automatic update download and installation. 4. Restart when prompted.

🔧 Temporary Workarounds

Disable JavaScript

all

Prevents JavaScript execution that could trigger the vulnerability during XSLT transformations.

In Firefox: about:config → javascript.enabled = false

Use Content Security Policy

all

Restrict JavaScript execution on web servers to trusted sources only.

Add header: Content-Security-Policy: script-src 'self'

🧯 If You Can't Patch

  • Restrict browser usage to trusted websites only
  • Implement network segmentation to isolate vulnerable browsers from critical systems

🔍 How to Verify

Check if Vulnerable:

Check browser version against affected ranges: Firefox < 137, Firefox ESR < 115.22 or < 128.9, Thunderbird < 137 or < 128.9

Check Version:

Firefox/Thunderbird: about:support → Application Basics → Version

Verify Fix Applied:

Confirm version is at or above patched versions: Firefox ≥ 137, Firefox ESR ≥ 115.22 or ≥ 128.9, Thunderbird ≥ 137 or ≥ 128.9

📡 Detection & Monitoring

Log Indicators:

  • Browser crash logs with XSLT-related stack traces
  • Unexpected memory access errors in application logs

Network Indicators:

  • HTTP requests to pages with XSLT transformations followed by browser crashes

SIEM Query:

source="browser_logs" AND (event="crash" AND message="XSLT" OR message="use-after-free")

🔗 References

📤 Share & Export