Vulnerabilities & CVEs

Pixel 9 0-Click Exploit: Dolby CVE Decoded

A malicious audio clip hits your Pixel 9. No tap required—it's already decoding, cracking open the door to hell. Project Zero just published the blueprint.

{# Always render the hero — falls back to the theme OG image when article.image_url is empty (e.g. after the audit's repair_hero_images cleared a blocked Unsplash hot-link). Without this fallback, evergreens with cleared image_url render no hero at all → the JSON-LD ImageObject loses its visual counterpart and LCP attrs go missing. #}
Diagram of Dolby decoder exploit chain on Pixel 9, showing syncframe to code execution flow

Key Takeaways

  • Project Zero chained Pixel 9 0-click exploits from Dolby decoder to kernel root.
  • Android's AI media features massively expand 0-click attack surface via auto-decoding.
  • Vendors must prioritize media/driver patches; blobs hide bugs too long.

Syncframe explodes into the Dolby Unified Decoder. Boom. Arbitrary code execution in mediacodec context, Pixel 9 owned—zero clicks.

Google Messages auto-decodes incoming RCS audio attachments now, a ‘feature’ for transcription that bloats the 0-click attack surface on Android phones. Vendors ship this Dolby blob blindly, statically linked into libcodec2_soft_ddpdec.so on the Pixel 9. Project Zero’s team—Maddie Stone, Ivan Fratric, Seth Jenkins—didn’t just find bugs. They chained them into a full exploit, proving skeptics wrong.

Pixel 9’s Dolby Nightmare: CVE-2025-54957

DD+ bitstream. Syncframes. Audio blocks. Sounds innocent, right? Wrong. The spec lets the decoder copy up to 0x1FF bytes per block into a skip buffer—EMDF format, synced on ‘X8’. But craft that buffer slyly, and variable_bits parsing goes haywire, ripe for overflow or whatever chaos you fancy.

Here’s the spec snippet that dooms it:

Syntax Number of bits
skiple 1
if(skiple)
skipl 9
skipfld 9 * 8
}

That skipfld? Straight bitstream slurp into the buffer. No checks. EMDF syncword hunts follow, but if you control the flow—game over.

Project Zero exploited this for code exec in the sandboxed mediacodec process. Not theoretical. Real. And fixed January 5, 2026—too late for devices lingering on old patches.

Short paragraphs bore me. This one’s dense: The UDC, shipped as a binary blob to OEMs, lacks symbols, hides its guts. Android’s auto-decoding push—AI transcription, search—means every SMS audio clip triggers it pre-open. Combine with driver bugs like CVE-2025-36934 (Pixel 9 kernel escalator), and you’ve got root from a message. Vendors questioned exploitability. Project Zero answered with receipts.

Why Does Android’s 0-Click Surface Keep Growing?

Auto-features sound slick. Decode media silently for smarts. But it’s a buffet for attackers. Monkey’s Audio on Samsung fell first (CVE-2025-49415). Now Dolby everywhere—Android, iOS, Windows. Pixels hit hardest here.

One punch: Sandboxed? Sure. Useful? Damn right—for pivoting to kernel.

Recall Stagefright, 2015? MMS videos owned Nexus devices remotely. This echoes louder—RCS ubiquity, AI hype amplifying risks. Android’s mitigations—sandboxing, verified boot—hold, but media decoders and drivers poke holes. Project Zero’s chain tests them brutally.

“We hope this research will help defenders better understand how these attacks work in the wild, the strengths and weaknesses of Android’s security features with regards to preventing such attacks, and the importance of remediating media and driver vulnerabilities on mobile devices.”

Straight from the post. Noble. But Google’s PR spin? Patches dropped months post-discovery. Users wait on OTA roulette.

Can Attackers Really Chain This to Root?

Part 2 promises the kernel jump via CVE-2025-36934—a driver leak from mediacodec sandbox. Sandbox escapes aren’t myths; they’re math. Pixels tightened post-ForcedEntry, but drivers lag.

Unique angle: This mirrors NSO’s early chains, pre-Lockdown mitigations. Back then, WhatsApp calls triggered decoders. Today, Messages does RCS audio. Prediction—without holistic fixes, 0-click RCS exploits spike 3x by 2027, as AI media parsing spreads to iMessage too.

Corporate hype calls these ‘edge cases.’ Bull. Billions decode daily. One bad clip, phone pwned.

Deep dive time. variable_bits pseudocode:

variable_bits (n_bits) {
    value = 0;
    do {
        value += read n_bits
        read_more 1
        if (read_more) {
            value <<= n_bits;
            value += (1<<n_bits);
        }
    }
    while (read_more);
    return value;
}

Loop uncontrolled? Overflow heaven. EMDF containers chain payloads—version, key_id extensions via more variable_bits. Stack the deck, smash the parser.

On Pixel 9, UDC nests in vendor/lib64. Sandboxed, yes. But adjacent drivers? Seth Jenkins found the seam.

Vendors’ Denial Crumbles

Questions flew: ‘Exploitable? 0-click for normies? Useful post-exec?’ Project Zero built the chain. Mediacodec code exec pivots—data exfil, keylog, escalade. Platforms must harden decoders, isolate drivers, kill auto-decode opt-in.

Humor in the horror: Dolby Atmos promises immersion. Here, it immerses attackers.

Part 3 lessons loom. Expect mitigations critique—Android’s blob reliance bites.


🧬 Related Insights

Frequently Asked Questions

What is CVE-2025-54957?

Buffer mishandling in Dolby UDC’s skip buffer parsing, leading to code exec on DD+ audio decode.

Is my Pixel 9 safe from 0-click Dolby exploits?

Patch January 2026 or later—check Settings > System > System update. Unpatched? Vulnerable.

How do 0-click attacks work on Android Messages?

RCS audio auto-decodes for transcription, hitting flaws pre-user open.

Maya Thompson
Written by

Threat intelligence reporter. Tracks CVEs, ransomware groups, and major breach investigations.

Frequently asked questions

What is CVE-2025-54957?
Buffer mishandling in Dolby UDC's skip buffer parsing, leading to code exec on DD+ audio decode.
Is my Pixel 9 safe from 0-click Dolby exploits?
Patch January 2026 or later—check Settings > System > System update. Unpatched? Vulnerable.
How do 0-click attacks work on Android Messages?
RCS audio auto-decodes for transcription, hitting flaws pre-user open.

Worth sharing?

Get the best Cybersecurity stories of the week in your inbox — no noise, no spam.

Originally reported by Google Project Zero

Stay in the loop

The week's most important stories from Threat Digest, delivered once a week.