Skip to main content
Mallory
HighCISA KEVExploited in the wildPublic exploit

Apple WebContent Sandbox Escape

IdentifiersCVE-2023-32409CWE-119Also known asironloader

CVE-2023-32409 is an Apple vulnerability affecting Web Content processing that could allow a remote attacker to break out of the Web Content sandbox. Apple states the issue was addressed with improved bounds checks, indicating a memory-safety flaw consistent with an out-of-bounds memory handling weakness in the affected component. The vulnerability was fixed in watchOS 9.5, tvOS 16.5, macOS Ventura 13.4, Safari 16.5, iOS 16.5 and iPadOS 16.5, and backported to iOS 15.7.8 and iPadOS 15.7.8. Public reporting also associates the flaw with the Coruna exploit kit under the exploit name "IronLoader," where it is used as a WebContent sandbox escape stage following browser/WebKit compromise.

Share:
For your environment

Are you exposed to this one?

Mallory correlates every CVE against your assets, your vendors, and active adversary campaigns. Know which vulnerabilities matter for you, not just which ones are loud.

ANALYST BRIEF

Impact, mitigation & remediation

What it means. What to do now. Patch path, mitigations, and the assume-compromise checklist.

Impact

What an attacker gets, and what they’ve been doing with it.

Successful exploitation allows an attacker who has achieved code execution or equivalent control within the Web Content process to escape the Web Content sandbox. In practical exploit chains, this expands attacker capabilities beyond the browser sandbox boundary and enables access to broader system resources or subsequent local privilege-escalation stages. Reporting indicates the flaw was used in the wild as part of multi-stage iOS exploitation chains, including Coruna, where it served as a post-WebKit-compromise sandbox escape component.

Mitigation

If you can’t patch tonight, do this now.

If immediate patching is not possible, reduce exposure to malicious web content by restricting Safari/web browsing to trusted destinations, enabling Lockdown Mode for high-risk users where operationally feasible, and using web filtering or safe browsing protections to block known malicious domains. Because this vulnerability is used as a sandbox-escape stage in browser-based exploit chains, limiting exposure to attacker-controlled webpages materially reduces risk until patches are applied.

Remediation

Patch, then assume compromise.

Apply Apple security updates that include the fix for CVE-2023-32409. The issue is fixed in watchOS 9.5, tvOS 16.5, macOS Ventura 13.4, Safari 16.5, iOS 16.5, and iPadOS 16.5, with backported fixes in iOS 15.7.8 and iPadOS 15.7.8. Where applicable, also deploy later cumulative updates such as tvOS 16.6 and watchOS 9.6 that include the backported patch. Prioritize patching internet-facing and high-risk user devices because Apple reported possible active exploitation.
PUBLIC EXPLOITS

Exploits

1 valid exploit after Mallory filtered fakes, detection scripts, and README-only repos.

VALID 1 / 1 TOTALView more in app
webkit-cve-2024-23222MaturityPoCVerified exploit

This repository is a multi-file Apple WebKit/JSC exploit research collection centered on CVE-2024-23222, with numerous auxiliary HTML PoCs for other Safari/WebKit vulnerabilities. It is not a framework module; it is a standalone research repo containing browser-delivered exploit pages, a local Python HTTP collector, and one native C helper. Structure: - README.md documents the intended full exploit chain: a malicious HTML page triggers CVE-2024-23222 in JavaScriptCore, obtains addrof/read64/write64 primitives, then uses a crafted WebAssembly indirect-call trampoline to invoke native libc functions on an A11 iPhone X running iOS 16.4.1. The documented post-exploitation action is opening and writing /tmp/pwned_cve_2024_23222, presented as proof of sandbox escape. - poc/server.py is the operator-side infrastructure. It serves HTML files over HTTP on port 8765, exposes GET/POST /results for telemetry collection, and GET/POST /signal for auxiliary signaling. - find_gigacage.c is a native Mach-based memory scanner that uses task_for_pid, vm_region_recurse_64, and vm_read to locate JSC/Gigacage-related regions and sentinels in another process. This supports exploit development and address discovery rather than remote exploitation. - poc/exploit_23222.html is an earlier standalone Stage 1 exploit for CVE-2024-23222. It contains the core exploitation logic: WebAssembly modules, type confusion setup, arbitrary read/write primitives, addrof, and JIT/JSC structure offset handling. It posts progress markers and results back to /results. - poc/ironloader_diag.html is a diagnostic page for CVE-2023-32409 (“IronLoader”), reusing similar Stage 1 primitives and adding logic to inspect IPC/GPU-related structures. - The remaining poc/cve-*.html files are mostly self-contained browser PoCs or vulnerability checkers for specific CVEs. They generally trigger a suspicious code path, observe crashes/misbehavior, and POST a verdict plus logs to /results. Several are more detection-oriented than weaponized. Main exploit capabilities: - Browser-based initial access via a malicious HTML page. - JSC/WebAssembly memory corruption leading to arbitrary address disclosure and 64-bit read/write in the renderer. - Arbitrary native function invocation by overwriting a WASM indirect-call target slot. - Demonstrated sandbox escape behavior by calling _open/_write on /tmp/pwned_cve_2024_23222. - Extensive telemetry/logging back to a local HTTP server. Notable targeting details: - Primary target is Apple iPhone X (A11, no PAC), iOS 16.4.1, Safari 16.4.1. - The exploit assumes device/version-specific offsets and an ASLR slide known in advance/offline. - README explicitly notes limitations such as inability to directly read dyld cache from JS and failure of mmap(PROT_EXEC), indicating this is a real exploit-development repo rather than a simple detector. Assessment: - The repository contains genuine exploit code and PoCs. The main CVE-2024-23222 chain is operational but environment-specific, with a basic hardcoded payload (proof-file creation) rather than a flexible post-exploitation framework. Auxiliary files broaden the repo into a WebKit vulnerability lab with multiple browser-based tests and diagnostics.

Umit-MHLDisclosed May 19, 2026markdowncbrowserweblocal
EXPOSURE SURFACE

Affected products & vendors

Products and vendors Mallory has correlated with this vulnerability. Open in Mallory to drill down to specific CPE configurations and version ranges.

VendorProductType
AppleIpadosoperating_system
AppleIphone Osoperating_system
AppleMacosoperating_system
AppleSafariapplication
AppleTvosoperating_system
AppleWatchosapplication

Vendor-confirmed product mapping. Mallory continuously reconciles this list against your asset inventory.

What this page doesn’t show

The version that knows your environment.

This page is what’s public. Mallory adds the parts that aren’t: which of your assets are affected, which adversaries are exploiting it right now, which detections to deploy, and what to do tonight.
Exposure mapping

Query your assets running an affected version, and investigate the blast radius.

Threat actor evidence15

Every observed campaign linking this CVE to a named adversary.

Associated malware21

Malware families riding this exploit, with evidence and IOCs.

Detection signatures2

YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.

Vendor-by-vendor mapping

Cross-references every affected SKU, including bundled OEM variants.

Social activity

Community discussion across Reddit, Mastodon, and other social sources.