CVE-2021-21213

8.8 HIGH

📋 TL;DR

This is a use-after-free vulnerability in Chrome's WebMIDI implementation that allows remote attackers to potentially exploit heap corruption. Attackers can trigger this vulnerability by tricking users into visiting a malicious HTML page. All Chrome users prior to version 90.0.4430.72 are affected.

💻 Affected Systems

Products:
  • Google Chrome
  • Chromium-based browsers
Versions: All versions prior to 90.0.4430.72
Operating Systems: Windows, Linux, macOS, Android, Chrome OS
Default Config Vulnerable: ⚠️ Yes
Notes: WebMIDI is enabled by default in Chrome. All platforms running vulnerable Chrome versions are affected.

📦 What is this software?

Chrome by Google

Google Chrome is the world's most popular web browser, used by over 3 billion users globally across Windows, macOS, Linux, Android, and iOS platforms. As a Chromium-based browser developed by Google, Chrome dominates the browser market with approximately 65% market share, making it a critical compon...

Learn more about Chrome →

⚠️ Risk & Real-World Impact

🔴

Worst Case

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

🟠

Likely Case

Browser crash (denial of service) or limited memory corruption leading to information disclosure.

🟢

If Mitigated

No impact if Chrome is updated to patched version or if WebMIDI is disabled.

🌐 Internet-Facing: HIGH - Exploitable via malicious websites without user interaction beyond visiting the page.
🏢 Internal Only: MEDIUM - Requires user to visit malicious internal pages, but could be exploited via phishing or compromised internal sites.

🎯 Exploit Status

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

Exploitation requires heap manipulation techniques but is facilitated by the use-after-free primitive. No public exploit code has been released.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 90.0.4430.72 and later

Vendor Advisory: https://chromereleases.googleblog.com/2021/04/stable-channel-update-for-desktop_14.html

Restart Required: Yes

Instructions:

1. Open Chrome and click the three-dot menu. 2. Go to Help > About Google Chrome. 3. Chrome will automatically check for updates and install version 90.0.4430.72 or later. 4. Click 'Relaunch' to restart Chrome with the update.

🔧 Temporary Workarounds

Disable WebMIDI API

all

Disables the WebMIDI API which contains the vulnerable component

chrome://flags/#enable-web-midi-api
Set to 'Disabled'

Use Chrome Enterprise policies

windows

Disable WebMIDI via group policy for enterprise deployments

Set 'DefaultWebMIDISysExPermission' to 2 (Block)

🧯 If You Can't Patch

  • Disable WebMIDI API via chrome://flags as temporary mitigation
  • Use browser isolation technologies or sandboxing to contain potential exploitation

🔍 How to Verify

Check if Vulnerable:

Check Chrome version: if below 90.0.4430.72, you are vulnerable

Check Version:

chrome://version/ or 'google-chrome --version' on Linux

Verify Fix Applied:

Confirm Chrome version is 90.0.4430.72 or higher

📡 Detection & Monitoring

Log Indicators:

  • Chrome crash reports with WebMIDI-related stack traces
  • Unexpected Chrome process termination

Network Indicators:

  • Requests to suspicious domains with WebMIDI-related parameters
  • Unusual WebSocket or MIDI protocol traffic

SIEM Query:

source="chrome_crash_reports" AND (process="chrome" OR process="chromium") AND message="*WebMIDI*" OR message="*use-after-free*"

🔗 References

📤 Share & Export