FORCEDENTRY: The Zero-Click iMessage Exploit That Beat BlastDoor

📋 Key Takeaways
  • What happened
  • How it worked
  • Impact and numbers
  • Timeline
  • Why it still matters in 2026
8 min read · 1,509 words
Educational & Ethical Use Only — This article is provided for educational and ethical cybersecurity research purposes only. The techniques described should only be used on systems you own or have explicit permission to test. Always follow responsible disclosure and the laws applicable to you. Mitigations are included so engineers can harden real systems.

September 2021 closed the Pegasus chapter with a technical mic-drop. Citizen Lab’s FORCEDENTRY analysis (published 13 December 2021 technically, following Apple’s urgent 13 September emergency patches for CVE-2021-30860 — but the September patch event IS the story’s pivot) revealed that NSO Group had achieved the impossible-for-the-era: a zero-click iMessage exploit defeating Apple’s BlastDoor sandbox, via a logic bug hidden in CoreGraphics’ PDF font parser (a bogus GFN table entry in a crafted font’s dataflow-driven bytecode — a one-integer-property font hack). The exploit chain began with a malicious PDF-bearing message processed automatically by iMessage (no user interaction), abused infinite-loop-ish font-data interpretation to memcpy-controlled heap shaping, and culminated in kernel-level code execution via a separately-patched IOMobileFrameBuffer bug (CVE-2021-30883 after an earlier 30858). The sophistication payload: NSO paid for and maintained exploit engineering at nation-state grade — the reference implementation of “mercenary spyware with APT capabilities,” which is why CISA-ish guidance and Apple’s subsequent Lockdown Mode (iOS 16, 2022) cite FORCEDENTRY-era lessons directly.

Quick Answer
FORCEDENTRY (Citizen Lab codename; Apple advisories September 13, 2021) is the NSO Group zero-click iMessage exploit chain used against a Saudi activist (shortened in reporting as “Saudi activist” — full context in the Pegasus Project lineage) and disclosed publicly by Citizen Lab in their December 2021 report “FORCEDENTRY: NSO Group iMessage Zero-Click Exploit Captured in the Wild”. Technical core: (1) delivery — malicious message containing a crafted PDF (disguised as GIF) processed by iMessage with zero interaction; (2) BlastDoor bypass — BlastDoor (iOS 14’s sandboxed message-preview service, deployed specifically to blunt zero-clicks) was defeated because the exploit never needed its allowed service set to escape: the bug lived in CoreGraphics’ JBIG2-stream-driven PDF font parsing, where a crafted font’s GFN/property table integer confusion allowed controlled heap manipulation via logical-gate-based (JBIG2 logical operators) arbitrary compute; (3) post-exploitation — handler ROP-style staging then a kernel exploit (initially CVE-2021-30858 IOMobileFrameBuffer, later variants; the September patch batch also included CVE-2021-30860 for the CoreGraphics/font bug itself) yielding full device takeover with Pegasus implant persisting via standard implant tradecraft (fake Teams-like apps would NOT be needed — implant hooks messaging and mic/GPS/location silently). Apple’s response: emergency patches 13 Sept (iOS 14.8), later iOS 15 hardening including expanded BlastDoor probing, and — decisively — Lockdown Mode (announced 2022, shipped iOS 16): extreme-optional hardening (disable preview rendering of risky formats, block wireless aggression, lock Safari JIT paths, etc.) explicitly designed for the FORCEDENTRY-class threat model (state-grade mercenary targeting of individuals). Detection/validation (2026-practical): iOS mercenary-spyware notifications (Apple’s threat notifications since 2021, expanded under Lockdown Mode), MVT (Mobile Verification Toolkit, Amnesty) forensics, and lockdowndd/artifact triage per Citizen Lab methodology. Legacy: FORCEDENTRY proved commercial spyware achieves CIA-grade implant sophistication; spawned the “BlastDoor-probe” hardening philosophy (assume every parser is hostile, sandbox + deny-by-default message processing); and directly motivated Apple’s lawsuit against NSO (filed Nov 2021) and Lockdown Mode’s existance — the industry pivot from “patches fix it” to “extreme-personal threat models need extreme-optional defence modes” that we unpack in identity-security coverage.

What happened

Sequence: Pegasus Project (July 2021) exposed the targeting; Citizen Lab was already forensically tracking specific victims. The September 13 patches: Apple shipped iOS 14.8/macOS emergency updates crediting Citizen Lab unusually fast — press immediately connected the “activist phone” case. December 13, 2021: Citizen Lab’s full technical report detailed the exploit — name-dropped “FORCEDENTRY” (vs the implant’s internal codename set), establishing: zero-click via iMessage; BlastDoor bypass via CoreGraphics font-parser logic bug; JBIG2-stream logical compute engine (the “computer inside a PDF” trick using bitwise ops to synthesize conditions); kernel pivot. February 2022 follow-ups: second FORCEDENTRY variant chains CVE-2021-30883 (IOMobileFrameBuffer recursion) documented by Citizen Lab/Trend Micro coordinated disclosure. Apple’s NSO lawsuit (filed November 2021, citing FORCEDENTRY as exhibit-grade evidence) and Lockdown Mode (July 2022 announcement, iOS 16 ship) complete the arc.

Why the engineering impressed even adversaries’ peers: the exploit weaponised JBIG2 (an image-compression format’s logical operators) to build a Turing-complete-ish computation substrate inside font parsing — then used it for memory disclosure/write primitives — a two-layers-deep “parser within a parser” construction that few teams on earth could author, debug, and reliability-ship. That’s the “NSO = nation-state grade” proof point cited in every subsequent policy discussion (US Entity Listing Sept 2021; subsequent sanctions expansions).

How it worked

The chain in one diagram:

delivery (zero-click):
  victim iPhone receives iMessage containing
  malicious PDF disguised as GIF attachment;
  iMessage auto-processes for preview rendering

BlastDoor context:
  iOS 14's BlastDoor sandbox isolates message-
  parsing (specifically to blunt zero-clicks);
  FORCEDENTRY never needed to "escape" it - the
  bug class lived INSIDE an allowed parser

core exploit (CVE-2021-30860, CoreGraphics):
  crafted font in PDF -> JBIG2-stream font-data
  interpretation -> GFN/property-table integer
  confusion -> JBIG2 logical operators compose
  AND/OR/XOR gates -> mini "computer" built from
  image-compression ops -> controlled heap
  read/write primitives

privilege escalation:
  staged userspace -> kernel bugs
  (CVE-2021-30858 then 30883, IOMobileFrameBuffer)
  -> kernel code execution

implant (Pegasus):
  full device takeover: messages, mic, camera,
  location, keychain, app data exfil; stealth
  persistence per NSO tradecraft

patch reference: iOS 14.8 (13 Sept 2021) +
iOS 15/16 hardening + Lockdown Mode (extreme
personal defence mode)

The “parser within a parser” pattern (font data inside images inside PDFs inside messages) generalises as the eternal zero-click surface — every added format interpreter multiplies trust boundaries, which is why message-platform architecture has trended BlastDoor-ward (deny-by-default sandboxed preview) since, a design lesson we track alongside identity attack-surface guidance.

data-hmmnm-seam="2">

Impact and numbers

Metric Value Source
Delivery Zero-click iMessage Citizen Lab report
Core CVE CVE-2021-30860 (CoreGraphics font parsing) Apple advisory/Citizen Lab
Kernel pivots CVE-2021-30858 / 30883 (IOMobileFrameBuffer) Apple/coordinated disclosures
Patches iOS 14.8 emergency, 13 Sept 2021 Apple
Full technical report Citizen Lab, 13 Dec 2021 Citizen Lab
Attribution NSO Group (Pegasus) Citizen Lab/forensics
Policy fallout US Entity List (Sept 2021), Apple lawsuit (Nov 2021) Commerce/Apple
Defensive legacy Lockdown Mode (iOS 16, 2022) Apple
data-hmmnm-seam="3">

Timeline

Date Event
2021-07 Pegasus Project exposure (context)
2021-09-13 Apple emergency patches (iOS 14.8); Citizen Lab credited
2021-11 Apple sues NSO Group citing FORCEDENTRY-class exploits
2021-12-13 Citizen Lab publishes full FORCEDENTRY technical analysis
2022-02 Second variant chain (CVE-2021-30883) documented
2022-07/iOS 16 Lockdown Mode ships as FORCEDENTRY-class countermeasure
data-hmmnm-seam="4">

Why it still matters in 2026

FORCEDENTRY is the reference node linking three threads that define 2026’s threat landscape: (1) mercenary-spyware capability parity with state actors — the baseline assumption behind modern targeted-individual protection (Lockdown Mode, threat notifications, MVT forensics, per-victim IR retainer models); (2) parser-surface inevitability — every messaging/format platform still fights zero-click-class bugs (2023–2025 iOS/Android zero-clicks keep proving it), so BlastDoor-style deny-by-default isolation and extreme-optional hardening modes remain the durable architecture; (3) commercial-implant governance — FORCEDENTRY as legal evidence (Apple v. NSO) and policy anchor (Entity Listing, subsequent Intellexa sanctions 2024, EU-level spyware inquiries) established that exploit markets face consequences imperfect prosecutors can actually reach. For practitioners, it’s the standing case that “patch promptly” is necessary-not-sufficient for high-value targets: layered personal defence (extreme modes, notification triage, forensic readiness) is a distinct discipline — the individual-protection tier we cover in identity-security guidance.

data-hmmnm-seam="5">

Detection and hardening takeaways

  • Assume zero-click, design deny-by-default. Message-preview processing should run sandboxed with minimal service reach (BlastDoor philosophy); keep risky format parsing (fonts-in-PDFs-in-messages, animated formats, legacy codecs) isolated or off for high-risk users — Lockdown Mode operationalises exactly this.
  • Treat extreme-mode adoption as a persona-based control. Journalists, activists, executives, and dissidents merit Lockdown-Mode-class defaults, not optional afterthoughts; fleet MDM should make one-tap enablement and telemetry policy standard for flagged personas.
  • Monitor Apple/Google threat notifications as tripwires. Mercenary-spyware notifications (expanded post-2021, refined 2023–2025) are high-fidelity signals — route them to IR with P0 SLAs and MVT-class forensic follow-up, never to user-dismissal.
  • Maintain forensic-readiness for personal devices. MVT (Amnesty) and lockdownd/artifact triage capability — internal or partner-retained — turns “we think that phone was hit” into evidence-grade determination within hours; FORCEDENTRY was caught exactly this way.
  • Track parser-boundary changes in your mobile fleet. Major iOS/Android releases reshuffle preview-sandbox scope; diff release notes for sandbox/parser changes and update high-risk-user guidance the same week — the zero-click surface moves every OS cycle.

FAQ

How is FORCEDENTRY different from the Pegasus Project revelations?

Pegasus Project (July 2021) exposed the who — 50,000-number targeting database, victims, NSO’s client list patterns. FORCEDENTRY (Sept–Dec 2021) exposed the how at engineering depth — the actual zero-click exploit chain captured in the wild, proving BlastDoor-defeating, Turing-complete-parser-abusing sophistication. Together they closed the loop: political scandal plus technical ground truth equals regulatory/lawsuit-grade evidence.

What was the “computer inside the PDF” exactly?

The JBIG2 image-compression format supports logical operators (AND/OR/XOR/refinement) on image regions. The crafted font’s data drove chains of these operations to synthesize arithmetic — effectively building a tiny CPU out of image-compression primitives — which then computed the controlled memory read/write sequences the exploit needed. Building a virtual machine out of a compression format’s logic gates inside a font inside a PDF inside a message is the quiet part of the genius: four trust-boundary layers deep, all “working as designed.”

Does Lockdown Mode actually stop this class?

It materially raises cost and shrinks surface: previews of risky formats degrade, aggressive parsing paths close, wireless-attack surfaces (cable/wireless pairing abuse) restrict, and JIT-based web attack paths narrow. Nothing is absolute against a funded adversary with unknown bugs, but post-Lockdown Mode public reporting shows NSO-class vendors struggling against locked devices — Apple’s own statements and Citizen Lab follow-ups describe exploits failing or requiring new costly chains (which then get burned and patched). It’s the right model: extreme-personal defence as a deliberate tier, not a promise of invulnerability.

data-hmmnm-seam="end">

Prabhu Kalyan Samal

Application Security Consultant at TCS. Certifications: CompTIA SecurityX, Burp Suite Certified Practitioner, Azure Security Engineer, Azure AI Engineer, Certified Red Team Operator, eWPTX v3, LPT, CompTIA PenTest+, Professional Cloud Security Engineer, SC-900, SC-200, PSPO I, CEH, Oracle Java SE 8, ISP, Six Sigma Green Belt, DELF, AutoCAD. Writing about ethical hacking, security tutorials, and tech education at Hmmnm.