CVE-2020-9859 Overview
CVE-2020-9859 is a Double Free vulnerability affecting multiple Apple operating systems that allows an application to execute arbitrary code with kernel privileges. The vulnerability stems from a memory consumption issue in Apple's kernel memory handling mechanisms. This flaw has been actively exploited in the wild and is listed in CISA's Known Exploited Vulnerabilities Catalog, making it a critical security concern for organizations and individuals using affected Apple devices.
Critical Impact
This vulnerability enables local privilege escalation to kernel-level access, allowing attackers to gain complete control over affected Apple devices including iPhones, iPads, Macs, Apple TVs, and Apple Watches.
Affected Products
- Apple iOS versions prior to 13.5.1
- Apple iPadOS versions prior to 13.5.1
- Apple macOS Catalina versions prior to 10.15.5 Supplemental Update
- Apple tvOS versions prior to 13.4.6
- Apple watchOS versions prior to 6.2.6
Discovery Timeline
- 2020-06-05 - CVE-2020-9859 published to NVD
- 2025-10-23 - Last updated in NVD database
Technical Details for CVE-2020-9859
Vulnerability Analysis
This Double Free vulnerability (CWE-415) resides in the kernel memory management subsystem across Apple's operating system family. The flaw occurs when the same memory region is freed twice, leading to memory corruption that can be exploited to achieve arbitrary code execution with kernel privileges. The vulnerability requires local access and low-level user privileges to exploit, but does not require user interaction, making it particularly dangerous for jailbreak scenarios and targeted attacks.
The exploitation impact is severe as successful attacks result in complete confidentiality, integrity, and availability compromise at the kernel level. An attacker leveraging this vulnerability gains the highest level of system access, enabling them to bypass security controls, access protected data, install persistent malware, and control the device entirely.
Root Cause
The root cause of CVE-2020-9859 is improper memory handling in Apple's kernel that results in a Double Free condition. When memory is freed twice without proper validation, the memory allocator's internal data structures become corrupted. This corruption can be manipulated by an attacker to redirect code execution to attacker-controlled memory regions. Apple addressed this by implementing improved memory handling to prevent the Double Free condition from occurring.
Attack Vector
The attack vector is local, requiring an attacker to already have some level of access to the target device. This could be achieved through a malicious application installed on the device or through a chained exploit where initial access is gained through another vulnerability. Once local access is obtained, the attacker can trigger the memory corruption to escalate privileges from application-level to kernel-level, achieving complete device compromise.
The vulnerability was reportedly used as part of the unc0ver jailbreak tool, demonstrating its practical exploitability. When chained with other vulnerabilities, it allows attackers to bypass Apple's security mechanisms entirely.
Detection Methods for CVE-2020-9859
Indicators of Compromise
- Unexpected kernel panics or system crashes that may indicate exploitation attempts
- Presence of unauthorized jailbreak tools or artifacts on devices
- Anomalous memory allocation patterns in kernel logs
- Unexpected processes running with elevated kernel privileges
Detection Strategies
- Monitor for known jailbreak detection artifacts and signatures on managed Apple devices
- Implement Mobile Device Management (MDM) solutions to detect compromised device states
- Review system logs for unusual kernel-related error messages or crashes
- Deploy endpoint detection solutions capable of identifying privilege escalation attempts on Apple platforms
Monitoring Recommendations
- Enable comprehensive logging on managed Apple devices through MDM solutions
- Monitor for applications attempting to access kernel memory regions inappropriately
- Implement alerting for devices that fail security compliance checks
- Track device firmware versions to identify unpatched systems in your environment
How to Mitigate CVE-2020-9859
Immediate Actions Required
- Update all iOS devices to version 13.5.1 or later immediately
- Update all iPadOS devices to version 13.5.1 or later
- Apply the macOS Catalina 10.15.5 Supplemental Update on all Mac systems
- Update Apple TV devices to tvOS 13.4.6 or later
- Update Apple Watch devices to watchOS 6.2.6 or later
Patch Information
Apple has released security updates that address this vulnerability through improved memory handling. The patches are available through standard Apple software update mechanisms. Refer to the Apple Support Document HT211214 for detailed information about the security content of these updates.
This vulnerability is listed in the CISA Known Exploited Vulnerabilities Catalog, indicating that federal agencies are required to apply patches within specified timeframes.
Workarounds
- Restrict installation of applications to trusted sources only via MDM policies
- Implement application allowlisting to prevent execution of unauthorized applications
- Limit physical access to devices to reduce local attack surface
- Monitor devices for signs of jailbreaking or tampering until patches can be applied
- Consider network segmentation for unpatched devices to limit potential lateral movement
# Verify iOS/iPadOS version via command line (macOS connected device)
cfgutil get buildVersion
# Check macOS version
sw_vers -productVersion
# For MDM-managed devices, query version through MDM solution
# to identify unpatched devices in your fleet
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.


