CVE-2021-30665 — Apple Multiple Products WebKit Memory Corruption Vulnerability

CVE-2021-30665

Apple WebKit — Memory Corruption Enables Code Execution via Malicious Web Content on iOS, iPadOS, macOS, watchOS, and tvOS

What is Apple WebKit?

WebKit is Apple's open-source web browser engine powering Safari on iOS, iPadOS, macOS, watchOS, and tvOS. On iOS and iPadOS, WebKit is mandatory for all browsers — Apple's App Store rules require all third-party browsers (Chrome, Firefox, etc.) to use WebKit rather than their own rendering engines, meaning a WebKit vulnerability affects every iOS/iPadOS browser simultaneously. WebKit processes untrusted HTML, CSS, and JavaScript from web pages — out-of-bounds write vulnerabilities in WebKit can be triggered by visiting a malicious page and exploited for code execution in the renderer process.

Overview

CVE-2021-30665 is an out-of-bounds write (memory corruption) vulnerability (CWE-787) in Apple WebKit, affecting iOS, iPadOS, macOS, watchOS, and tvOS. Processing specially crafted web content triggers a write operation beyond the bounds of an allocated buffer in WebKit, enabling heap corruption and code execution in the WebKit renderer process. Apple patched this in the May 3, 2021 emergency updates (iOS 14.5.1, iOS 12.5.3), acknowledging "may have been actively exploited" — indicating zero-day exploitation. CISA added it to KEV in November 2021.

Affected Versions

Product Vulnerable Fixed
iOS before 14.5.1 Yes iOS 14.5.1 (May 3, 2021)
iPadOS before 14.5.1 Yes iPadOS 14.5.1 (May 3, 2021)
iOS 12 before 12.5.3 Yes iOS 12.5.3 (May 3, 2021 — older devices)
macOS Big Sur before 11.4 Yes macOS 11.4 (May 24, 2021)
watchOS before 7.4.1 Yes watchOS 7.4.1
tvOS before 14.6 Yes tvOS 14.6

Technical Details

  • Root cause: Out-of-bounds write (CWE-787) in WebKit — attacker-controlled web content causes WebKit to write data beyond the end of an allocated buffer in the HTML rendering or JavaScript processing pipeline, corrupting adjacent heap memory
  • Heap corruption → code execution: An OOB write in WebKit enables heap layout manipulation to achieve type confusion or function pointer corruption, providing a path to code execution in the WebKit renderer process (WebContent on iOS)
  • iOS browser scope: All iOS browsers use WebKit — this vulnerability affected Safari, Chrome for iOS, Firefox for iOS, and every other iOS browser simultaneously
  • Zero-day exploitation: Apple's emergency May 3, 2021 patch (outside the normal monthly update cycle) and "may have been actively exploited" language confirm zero-day use in targeted attacks
  • Exploit chain position: WebKit OOB write provides the first stage of iOS exploit chains — renderer code execution is followed by a kernel exploit for sandbox escape and full device control
  • Delivery: Victim visits a malicious web page (UI:R), triggering the exploit via crafted JavaScript/HTML

Discovery

Reported to Apple and patched in the May 2021 emergency updates alongside CVE-2021-30661 (WebKit Storage UAF). Both vulnerabilities received the same emergency patches targeting the same version of iOS, suggesting they were discovered and reported together as part of the same research or exploitation campaign analysis.

Exploitation Context

The simultaneous May 2021 emergency patching of multiple WebKit zero-days (CVE-2021-30661 and CVE-2021-30665) suggests a coordinated disclosure of multiple bugs found in the same WebKit codebase, possibly discovered during analysis of an active exploit chain. WebKit memory corruption zero-days are the primary initial access mechanism for iOS-targeted surveillance operations. The same-day release of iOS 12.5.3 (for devices unable to run iOS 14) indicates Apple's assessment that targets of the exploitation included users on older hardware.

Remediation

  1. Update iOS/iPadOS to 14.5.1 or later (any current iOS release contains the fix)
  2. For older devices on iOS 12: update to iOS 12.5.3 or later
  3. Update macOS to Big Sur 11.4 or later; watchOS to 7.4.1 or later; tvOS to 14.6 or later
  4. Enable automatic software updates on all Apple devices: Settings → General → Software Update → Automatic Updates
  5. Be alert to unexpected browser crashes or performance anomalies when visiting unknown links — WebKit exploits can be triggered by links delivered via iMessage, email, or QR codes

Key Details

PropertyValue
CVE ID CVE-2021-30665
Vendor / Product Apple — Multiple Products
NVD Published2021-09-08
NVD Last Modified2025-10-23
CVSS 3.1 Score8.8
CVSS 3.1 VectorCVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
SeverityHIGH
CWE CWE-787 find similar ↗
CISA KEV Added2021-11-03
CISA KEV Deadline2021-11-17
Known Ransomware Use No

CVSS 3.1 Breakdown

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Required Action

CISA BOD 22-01 Deadline: 2021-11-17. Apply updates per vendor instructions.

Timeline

DateEvent
2021-05-03Apple releases iOS 14.5.1, iPadOS 14.5.1, and iOS 12.5.3 as emergency patches addressing CVE-2021-30665 — confirmed active exploitation
2021-05-24macOS Big Sur 11.4, watchOS 7.4.1, and tvOS 14.6 address CVE-2021-30665
2021-09-08CVE formally published
2021-11-03Added to CISA Known Exploited Vulnerabilities catalog
2021-11-17CISA BOD 22-01 remediation deadline