CVE-2021-29952

7.5 HIGH

📋 TL;DR

A race condition in Firefox's Web Render components during destruction could lead to undefined behavior, potentially allowing arbitrary code execution through memory corruption. This affects Firefox desktop versions before 88.0.1 and Firefox for Android versions before 88.1.3.

💻 Affected Systems

Products:
  • Mozilla Firefox
  • Mozilla Firefox for Android
Versions: Firefox < 88.0.1, Firefox for Android < 88.1.3
Operating Systems: Windows, macOS, Linux, Android
Default Config Vulnerable: ⚠️ Yes
Notes: All default configurations are vulnerable; Web Render is enabled by default in supported configurations.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution allowing attacker to take full control of the affected system.

🟠

Likely Case

Browser crash or instability; successful exploitation requires significant effort.

🟢

If Mitigated

No impact if patched or if exploit attempts fail due to complexity.

🌐 Internet-Facing: HIGH - Web browsers are inherently internet-facing and process untrusted content.
🏢 Internal Only: MEDIUM - Internal users could be targeted via malicious internal sites or documents.

🎯 Exploit Status

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

Exploitation requires triggering a race condition during Web Render destruction, which is complex and may require multiple attempts.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Firefox 88.0.1, Firefox for Android 88.1.3

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

Restart Required: Yes

Instructions:

1. Open Firefox. 2. Click menu > Help > About Firefox. 3. Allow automatic update to version 88.0.1 or later. 4. Restart Firefox. For Android: Update via Google Play Store to version 88.1.3 or later.

🔧 Temporary Workarounds

Disable Web Render

all

Temporarily disable Web Render to mitigate the vulnerability (may impact performance).

Set gfx.webrender.all to false in about:config

🧯 If You Can't Patch

  • Restrict browser use to trusted websites only.
  • Implement application whitelisting to block Firefox execution.

🔍 How to Verify

Check if Vulnerable:

Check Firefox version via about:firefox or Help > About Firefox; if version is less than 88.0.1, it is vulnerable.

Check Version:

firefox --version (Linux/macOS) or check about:firefox (all platforms)

Verify Fix Applied:

Confirm version is 88.0.1 or later for Firefox, or 88.1.3 or later for Android.

📡 Detection & Monitoring

Log Indicators:

  • Browser crash logs referencing Web Render or race conditions
  • Unexpected process termination in system logs

Network Indicators:

  • Unusual outbound connections from Firefox process post-crash

SIEM Query:

source="firefox.log" AND ("crash" OR "WebRender")

🔗 References

📤 Share & Export