CVE-2020-15678

8.8 HIGH

📋 TL;DR

This is a use-after-free vulnerability in Firefox, Thunderbird, and Firefox ESR that occurs when processing graphical layers during scrolling. An attacker could exploit this to execute arbitrary code or cause a denial of service. All users of affected versions are vulnerable.

💻 Affected Systems

Products:
  • Firefox
  • Thunderbird
  • Firefox ESR
Versions: Firefox < 81, Thunderbird < 78.3, Firefox ESR < 78.3
Operating Systems: All platforms where affected browsers run
Default Config Vulnerable: ⚠️ Yes
Notes: All default configurations are vulnerable. No special settings required.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

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

🟠

Likely Case

Browser crash/denial of service or limited code execution in browser sandbox.

🟢

If Mitigated

No impact if patched versions are deployed or vulnerable browsers are isolated.

🌐 Internet-Facing: HIGH - Web browsers are internet-facing by design and can be exploited via malicious websites.
🏢 Internal Only: MEDIUM - Internal users could be targeted via phishing or compromised internal sites.

🎯 Exploit Status

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

Exploitation requires user interaction (visiting malicious website) but no authentication. Use-after-free vulnerabilities often require heap manipulation expertise.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Firefox 81+, Thunderbird 78.3+, Firefox ESR 78.3+

Vendor Advisory: https://bugzilla.mozilla.org/show_bug.cgi?id=1660211

Restart Required: Yes

Instructions:

1. Open browser. 2. Go to Settings/About. 3. Allow automatic update or download latest version from official site. 4. Restart browser.

🔧 Temporary Workarounds

Disable JavaScript

all

Prevents exploitation via malicious websites but breaks most web functionality.

about:config -> javascript.enabled = false

Use Content Security Policy

all

Restrict script execution to trusted sources only.

Add CSP headers to web servers

🧯 If You Can't Patch

  • Isolate vulnerable browsers using network segmentation
  • Implement application whitelisting to prevent unknown processes

🔍 How to Verify

Check if Vulnerable:

Check browser version in Settings/About menu.

Check Version:

firefox --version or thunderbird --version

Verify Fix Applied:

Confirm version is Firefox ≥81, Thunderbird ≥78.3, or Firefox ESR ≥78.3.

📡 Detection & Monitoring

Log Indicators:

  • Browser crash reports
  • Unexpected process termination

Network Indicators:

  • Connections to suspicious domains followed by browser crashes

SIEM Query:

source="browser.logs" AND (event="crash" OR event="segfault") AND version<81

🔗 References

📤 Share & Export