Descifrado de la Mediación de AppLovin: La Huella Digital del Dispositivo Evita ATT

Un análisis profundo del protocolo de mediación de anuncios de AppLovin ha expuesto un cifrado personalizado que no logra proteger la privacidad del usuario. El investigador descifró más de 5,000 solicitudes de oferta reales capturadas de usuarios consentidos y descubrió que la carga útil cifrada transmite suficientes datos del dispositivo para identificar de manera única un iPhone entre aplicaciones de diferentes editores, incluso cuando el usuario ha denegado el permiso de Transparencia de Seguimiento de Aplicaciones (ATT).
Cómo funciona el cifrado
Cada solicitud de mediación es un HTTPS POST a ms4.applovin.com/1.0/mediate. Dentro de la capa TLS, un segundo cifrado envuelve la carga útil. Después de decodificar en base64, el formato de transmisión consta de tres campos separados por dos puntos más el texto cifrado:
2:8a2387b7dbed018e5e485792eac2b56833ce8a3a:T7NreIR729giTKR-thJPcKeT6JXevACogl57SIFzwKp-1BASwpBT6v:<binario>
Campos:
- Etiqueta de versión (
2) - Identificador de protocolo de 40 caracteres:
sha1(salt).hex() - Sufijo de 54 caracteres de la clave del SDK de AppLovin del editor (almacenada en texto plano en
Info.plistoAndroidManifest.xml)
El cifrado toma dos ingredientes: una sal constante de 32 bytes integrada en cada binario del SDK (21 bytes significativos + 11 bytes cero, idéntica en múltiples aplicaciones y plataformas) y la clave del SDK por editor. La clave derivada es SHA-256(salt || sdk_key[:32]). El flujo de clave se genera usando SplitMix64, un PRNG no criptográfico. El contador es System.currentTimeMillis() XOR con los primeros 8 bytes de la clave derivada, filtrando la hora de pared en la transmisión antes del descifrado. No se aplica MAC ni autenticación, lo que significa que un atacante puede alterar el texto cifrado.
Qué se envía
El texto plano descifrado es JSON comprimido con gzip con aproximadamente 30 claves de nivel superior. Las críticas son:
device_info: la propia carga útil de huella digital de AppLovin con ~50 campossignal_data[]: tokens opacos de cada SDK de socio de demanda
Un ejemplo de una solicitud donde se denegó ATT (IDFA puesto a cero):
Campo Valor Qué es
revision iPhone14,3 Modelo de hardware (iPhone 13 Pro Max)
os 18.6.2 Versión del SO
tm 5918212096 RAM total (5.51 GB)
ndx / ndy 1284 × 2778 Píxeles nativos de pantalla
kb en-US,es-ES Teclados instalados
font UICTContentSizeCategoryXXXL Tamaño de texto de accesibilidad
tz_offset -4 Zona horaria
volume 40 Volumen de audio del sistema
mute_switch 1 Interruptor de silencio físico
bt_ms_2 1770745989000 Tiempo de arranque del dispositivo (ms epoch)
dnt / idfa true / 00000… ATT denegado
idfv 81E958C3-…-51DE7CE11819 ID del proveedor (estable entre aplicaciones)
Campos adicionales incluyen insets de área segura, memoria libre, código de operador, código de país, configuración regional, orientación, altura de la barra de estado, reloj monotónico, indicadores de batería y estado de conexión segura. Esto es efectivamente cada propiedad del sistema accesible para código de terceros.
Exposición posterior
Un editor típico incluye ~18 SDKs de demanda (Meta, Google, Mintegral, Vungle, ironSource, Unity, InMobi, BidMachine, Fyber, Moloco, TikTok, Pangle, Chartboost, Verve, MobileFuse, Bigo, Yandex, más el propio de AppLovin). En cada carga de banner (~30 segundos), el SDK de AppLovin pasa la carga útil del dispositivo descifrada a cada una de estas redes posteriores, permitiendo el seguimiento de usuarios entre aplicaciones sin consentimiento ATT.
Implicaciones
La suposición de que ATT por sí solo previene la identificación determinista es falsa. La huella digital del dispositivo a través de los campos filtrados funciona igual de bien. La falta de autenticación en la capa de cifrado también plantea preocupaciones de integridad.
📖 Leer la fuente completa: HN AI Agents
👀 Ver también

NPM Comprometido a través de una Puerta Trasera en Axios: Impacto en los Agentes de Codificación de IA
El 31 de marzo de 2026, un actor de amenazas vinculado a Corea del Norte comprometió npm al publicar versiones con puerta trasera de Axios (1.14.1 y 0.30.4) durante una ventana de 3 horas. El malware inyectó una dependencia que descargó un RAT específico de la plataforma, recolectó credenciales y se autoborró, siendo los agentes de codificación con IA como Claude Code y Cursor particularmente vulnerables debido a las instalaciones automáticas de npm.

Usuario de OpenClaw Agrega TOTP 2FA Después de que Agente Expusiera Claves API en Texto Plano
Un usuario de OpenClaw creó una habilidad de seguridad llamada 'Secure Reveal' que requiere autenticación TOTP a través de Telegram antes de mostrar las credenciales almacenadas, después de que su agente de IA filtrara accidentalmente claves API y contraseñas en texto plano durante una demostración.

Sitio de phishing para instalar Claude Code encabeza resultados de búsqueda de Google
Un sitio de phishing que se hace pasar por la página oficial de descarga de Claude Code aparece como el primer resultado de Google para "Claude code install mac". Se advierte a los usuarios que no descarguen del sitio falso.

Vulnerabilidades de Seguridad de la Función 'Permitir Siempre' de OpenClaw y Alternativas Más Seguras
La función de aprobación 'permitir siempre' de OpenClaw ha sido objeto de dos CVEs este mes, permitiendo la ejecución de comandos no autorizados mediante la vinculación de comandos wrapper y la omisión de continuación de línea en el shell. El problema más profundo es cómo esta función entrena a los usuarios para dejar de prestar atención a las solicitudes de seguridad.