Keychain Melody: Análisis Criptográfico de iCloud en DEF CON 34
Durante la conferencia DEF CON 34, los investigadores de seguridad Alex Radocea y Jaron Bradley (de Jamf Threat Labs) presentaron un análisis detallado sobre los mecanismos de cifrado extremo a extremo (E2EE) de Apple en el ecosistema iCloud. La investigación reveló vulnerabilidades en la arquitectura de gestión de claves locales que permiten comprometer desde contraseñas y Passkeys hasta dispositivos de domótica Matter.
Transcripción Completa de la Conferencia
trustedpeersd (or Trusted Peers Helper). It ensures your Mac stays aware of all other trusted devices in your iCloud.
How does it work? trustedpeersd looks up a Mac's Octagon encryption key from its database, fetches TLKs from the keychain-2.db file, and AKS decrypts them into memory.
Alex Radocea: Malware in the wild hasn't been seen attacking this yet. Keys to decrypt data aren't readily available; they are behind entitlements (code signing mechanisms required by Apple). There are also anti-debugging protections, and the system is policy-based with strong cryptographic concepts.
The vulnerability we're presenting comes down to a way trustedpeersd could be tricked into trusting an attacker's identity temporarily injected into its database—a type of identity swap where the system thinks its identity is now the attacker's identity. Since trustedpeersd has entitlements for Octagon, it can decrypt all secrets. Once the identity is swapped, the system notices missing encryption shares and triggers a "repair process". During this repair, it encrypts all secrets to the attacker's key, writing TLKs to disk encrypted with the attacker's key. This leaves artifacts uploaded to iCloud.
Jaron Bradley: This trick works because we hold the private key to decrypt TLK shares after generating the peer identity. Let's look at some demos. The exploit does not require root or TCC permissions. Running octctl (Octagon Control) shows trusted peers. We execute an injection script to place attacker key pairs into the trustedpeersd database, kill trustedpeersd, run ckksctl fetch to trigger automatic repair, copy the keychain database, and extract raw keys using the attacker's private key.
This leaves a folder with decrypted zone secrets containing plist files. Passwords (such as passwords.app items) store secrets under v_Data as base64 strings. Decoding these reveals plain-text credentials. Other usable plain-text data includes autofill credit cards, passwords, and Wi-Fi credentials.
Beyond passwords, inside the Home zone plist, we find Matter (formerly CHIP) smart home data. Specifically, we extract the fabric's Root Certificate Authority / master signing key. With Swift and CryptoKit, we can load this key to control smart home devices (smart plugs, thermostats, and smart locks). In our testing, using this master key allowed opening a Matter-enabled smart lock directly without passwords.
Regarding Passkeys: they store public/private key pairs in v_Data. By extracting the passkey private key and intercepting WebAuthn challenges in the browser console, an attacker can sign the challenge manually and log into services, bypassing biometric (Touch ID / Face ID) checks and 2FA requirements.
Alex Radocea: Regarding the Escrow system: Apple uses Hardware Security Modules (HSMs) running SepOS to hold escrow secrets for data recovery. Users authenticate using Secure SRP (zero-knowledge proof) and a device passcode. Escrow entropy derives signing, encryption, and symmetric keys.
We uncovered a vulnerability (CVE-2026-28864) where iCloud Backup stored the escrow entropy secret protected only by the Secure Enclave's UID key, omitting passcode/password protection. An attacker with physical access to a backed-up device could recover end-to-end encrypted data without knowing user passcodes. This has since been patched by Apple.
For investigation, defenders can monitor `trustedpeersd` database modifications and use `octctl` or `cloudkitctl` tools. Users should maintain unique passwords and avoid reuse.
Post para Blogger: Arquitectura Octagon y Vulnerabilidades en trustedpeersd (CVE-2026-28860 y CVE-2026-28864)
La arquitectura de seguridad de Apple para la sincronización de datos confidenciales en iCloud ha evolucionado desde los esquemas punto a punto sencillos basados en protocolos como OTR hasta una estructura de grafos de confianza conocida como Octagon. En este sistema, la información cifrada punto a punto (E2EE) se fragmenta en zonas administradas por Claves de Nivel Superior (Top-Level Keys o TLK). Estas claves se encargan de resguardar credenciales de acceso, datos biométricos y configuraciones críticas en memoria RAM sin almacenarlas descifradas en el disco del dispositivo.
En el sistema operativo macOS, la gestión de este grafo de confianza recae sobre el demonio trustedpeersd (Trusted Peers Helper). El proceso interactúa con el coprocesador criptográfico Secure Enclave Processor (SEP), garantizando que solo los dispositivos que forman parte de la red autorizada posean las claves privadas necesarias para realizar el descifrado de los datos pertenecientes al Keychain.
Sin embargo, la investigación presentada por Alex Radocea y Jaron Bradley expuso una falla de diseño (catalogada como CVE-2026-28860) en la validación de identidades dentro de trustedpeersd. Mediante la inyección temporal de una clave pública de un atacante dentro de la base de datos local del demonio (sin requerir privilegios de superusuario root ni omisión de permisos TCC), el sistema puede ser manipulado mediante un intercambio de identidad (identity swap). Al detectar la discrepancia en las claves compartidas, el demonio inicia de forma automática un procedimiento de reparación (repair process), re-cifrando las claves TLK del usuario con la clave pública del atacante y escribiéndolas en el disco local.
Este vector de ataque compromete múltiples capas de seguridad de la plataforma:
- Extracción de Credenciales: Permite obtener las contraseñas almacenadas en plano en el atributo
v_Datadentro de los archivos de propiedad (plist), así como tarjetas de crédito registradas en el autorrelleno y claves de redes Wi-Fi. - Bypass de Passkeys y Autenticación Biométrica: Al descifrar el par de claves privada/pública asociado a las Passkeys, el atacante puede interceptar los retos WebAuthn y firmarlos manualmente, eludiendo los controles biométricos de Touch ID/Face ID y los factores dobles de autenticación (2FA).
- Control de Infraestructura Domótica (Matter): En la zona
Home, el ataque permite extraer la autoridad de certificación raíz (Root CA) y la clave maestra del tejido de domótica Matter, otorgando control remoto sobre dispositivos IoT, termostatos y cerraduras inteligentes sin interacción del usuario. - Vulnerabilidad de Escrow (CVE-2026-28864): Adicionalmente, se documentó un fallo en el mecanismo de recuperación mediante módulos HSM (Hardware Security Modules), donde el secreto de entropía de Escrow quedaba protegido únicamente por la clave UID propia del Secure Enclave en las copias de seguridad de iCloud, posibilitando el descifrado completo del respaldo con acceso físico al dispositivo sin requerir el código de desbloqueo.
Apple procedió a corregir la vulnerabilidad mediante parches de seguridad. Para los equipos de respuesta a incidentes y análisis forense, se recomienda la monitorización de eventos que modifiquen la base de datos del demonio trustedpeersd, así como la inspección del grafo mediante herramientas CLI nativas como octctl y cloudkitctl.