PwnEscape: falla crítica en la red de Linux permite filtrar memoria del anfitrión desde una microVM
CVE-2026-99999, hallado en el reto de un millón de dólares de Vercel Sandbox, deja que metadatos de checksum controlados por el huésped reescriban cabeceras IPv4 ya validadas; el parche entró en el árbol principal el 14 de octubre.

El 15 de octubre se publicó como CVE-2026-99999 la vulnerabilidad que Vercel había descrito el día anterior como el hallazgo más grave de su reto de un millón de dólares sobre Vercel Sandbox, y que el investigador Paulos Yibelo, de pwn.ai, documentó el mismo día en un informe técnico detallado. El fallo no está en el hipervisor, sino en la pila de red del núcleo Linux: metadatos de checksum parcial controlados por un huésped pueden provocar que skb_checksum_help() reescriba una cabecera IPv4 que el núcleo ya había validado, en un fallo de tiempo de comprobación y tiempo de uso. El registro CVE, asignado por el proyecto Linux y publicado el 15 de octubre, le otorga CVSS 9.3 (vector 3.1 AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H) y describe el escenario típico como una microVM que envía tramas con metadatos de checksum virtio-net maliciosos a través de TAP.
Vercel lanzó el reto en agosto, recibió 1.285 informes en dos semanas y pagó 242.000 dólares en recompensas. El informe crítico llegó el tercer día: desde un sandbox estándar, Yibelo demostró tres ataques. El primero, filtrar memoria del anfitrión en paquetes que el huésped envía a Internet, se reprodujo contra sandboxes de producción de Vercel. Los otros dos, tumbar el anfitrión y ejecutar código con privilegios de administrador en el host, se demostraron en máquinas KVM y Firecracker del investigador configuradas como las de Vercel, no como toma de control de producción. Vercel afirma que ningún informe mostró acceso a datos de clientes y que, al enterarse, coordinó mitigaciones con AWS y otros proveedores e impulsó el arreglo aguas arriba.
La mecánica, según el informe de pwn.ai, parte de CHECKSUM_PARTIAL: el núcleo no calcula siempre el checksum de transporte de inmediato, sino que guarda en el sk_buff dónde empezará y dónde escribirá el resultado. Si un origen menos confiable influye en csum_start y csum_offset, esa escritura diferida puede caer sobre bytes que ya se interpretaron como cabecera IPv4. En el caso estudiado, el campo IHL pasaba de cinco palabras (20 bytes) a quince (60 bytes); el fragmentador trataba entonces como opciones IPv4 bytes que no formaban parte de los datos lineales lógicos del paquete y emitía unos 32 bytes de memoria del anfitrión. En un laboratorio KVM propio, los investigadores avanzaron hasta escrituras de 64 bytes en el núcleo y una cadena acotada de ejecución root, sin afirmar el mismo resultado en producción de ningún proveedor.
El arreglo aceptado es el commit 6785011f8b16, firmado por Michael S. Tsirkin, con revisión de Willem de Bruijn y aplicación de Jakub Kicinski. Añade el ayudante ip_check_csum_start(), que exige que el inicio del checksum quede después de la cabecera IPv4 ya parseada, y lo aplica en cinco consumidores antes de completar el checksum; el mensaje del commit lo presenta como defensa en profundidad y anuncia una validación más completa en la entrada. Entró en net.git el 8 de octubre y en el árbol principal de Linus el 14. Vercel y pwn.ai subrayan que el defecto afecta a la capa compartida de virtualización de casi todos los proveedores de nube, no solo a su producto.
Como análisis, PwnEscape recuerda que el aislamiento de una microVM no termina en KVM o Firecracker: el huésped también empuja contratos de rendimiento, como el offload de checksum, hacia un sistema operativo anfitrión lleno de consumidores diferidos. Para operadores de sandboxes y nubes multiarrendatario, la prioridad inmediata es incorporar el parche o los backports estables y revisar qué interfaces virtio-net o TUN aceptan metadatos de checksum del huésped. El segundo capítulo técnico prometido, que detallaría la cadena de escritura y ejecución, y la velocidad con la que se adapten los hipervisores, definirán cuánto margen queda antes de que aparezcan explotaciones públicas.