CVE-2023-5172

9.8 CRITICAL

📋 TL;DR

This CVE describes a use-after-free vulnerability in Firefox's Ion Engine hashtable implementation. An attacker could exploit this to execute arbitrary code or cause a crash. All Firefox users with versions below 118 are affected.

💻 Affected Systems

Products:
  • Mozilla Firefox
Versions: All versions < 118
Operating Systems: Windows, Linux, macOS, Android
Default Config Vulnerable: ⚠️ Yes
Notes: All standard Firefox installations are vulnerable. Extensions or security settings don't mitigate this.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Remote code execution leading to full system compromise, data theft, or ransomware deployment.

🟠

Likely Case

Browser crash or denial of service, potentially leading to data loss in active sessions.

🟢

If Mitigated

Limited impact if browser sandboxing works as intended, potentially just a tab crash.

🌐 Internet-Facing: HIGH - Attackers can exploit via malicious websites or ads without user interaction.
🏢 Internal Only: MEDIUM - Requires user to visit malicious internal site or open crafted document.

🎯 Exploit Status

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

Exploitation requires JavaScript execution but no authentication. No public exploit code available.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Firefox 118 and later

Vendor Advisory: https://www.mozilla.org/security/advisories/mfsa2023-41/

Restart Required: Yes

Instructions:

1. Open Firefox. 2. Click menu → Help → About Firefox. 3. Firefox will check for updates and install version 118+. 4. Restart Firefox when prompted.

🔧 Temporary Workarounds

Disable JavaScript

all

Prevents exploitation by blocking JavaScript execution, but breaks most websites.

about:config → javascript.enabled = false

Use Content Security Policy

all

Restrict JavaScript sources to trusted domains only.

Add 'Content-Security-Policy: script-src 'self'' to web server headers

🧯 If You Can't Patch

  • Isolate Firefox usage to non-critical systems with no sensitive data
  • Implement network filtering to block known malicious domains and JavaScript sources

🔍 How to Verify

Check if Vulnerable:

Check Firefox version in About Firefox dialog. If version is less than 118, system is vulnerable.

Check Version:

firefox --version (Linux/macOS) or check Help → About Firefox (all platforms)

Verify Fix Applied:

Confirm Firefox version is 118 or higher in About Firefox dialog.

📡 Detection & Monitoring

Log Indicators:

  • Firefox crash reports with Ion Engine references
  • Unexpected browser termination events

Network Indicators:

  • Unusual JavaScript loading patterns
  • Requests to known exploit domains

SIEM Query:

source="firefox.log" AND ("crash" OR "segfault") AND "ion"

🔗 References

📤 Share & Export