GhostLock: la falla de 15 años en Linux que convierte a cualquier usuario en root


Por Fredy Avila  

Un fallo que llevaba más de una década escondido

Investigadores de la firma Nebula Security dieron a conocer GhostLock, identificada como CVE-2026-43499, una vulnerabilidad de tipo use-after-free alojada en el subsistema de futex del kernel de Linux. Lo llamativo no es solo su gravedad, sino su antigüedad: el código vulnerable forma parte de prácticamente todas las distribuciones Linux principales desde 2011.

Lo que hace especialmente peligrosa a esta falla es su simplicidad de explotación. No requiere permisos especiales, configuraciones inusuales ni acceso remoto: basta con que un usuario ya autenticado en el sistema —por ejemplo, alguien con una cuenta de bajo privilegio en un servidor compartido— ejecute llamadas de hilos (threading) completamente rutinarias para desencadenar el problema.

¿Cómo funciona el ataque?

El kernel de Linux incluye un mecanismo para evitar que una tarea urgente quede bloqueada detrás de una tarea trivial (herencia de prioridad de futex). Ese mecanismo incluye un paso de limpieza que se ejecuta cuando una tarea deja de esperar.

El problema surge en un caso específico: cuando una operación de bloqueo llega a un callejón sin salida y debe revertirse, ese paso de limpieza se ejecuta en el momento equivocado y borra el registro de una tarea distinta a la que debía. El resultado es que el kernel queda sosteniendo una referencia a un fragmento de memoria que ya fue liberado y reutilizado para otra cosa —la esencia misma de un use-after-free.

A partir de ahí, el equipo de Nebula encadenó varios pasos adicionales hasta lograr que el kernel ejecutara código arbitrario con privilegios de root. En sus pruebas, el proceso completo tomó apenas unos cinco segundos y alcanzó una tasa de éxito del 97%. El exploit, además, permite escapar de contenedores, lo que lo vuelve especialmente relevante para entornos cloud y de virtualización.

Nebula recibió 92.337 dólares de Google a través del programa de recompensas kernelCTF por el hallazgo, que fue detectado con ayuda de VEGA, su propia herramienta de búsqueda de vulnerabilidades basada en IA.

Severidad y estado de los parches

La falla tiene una puntuación CVSS de 7.8 (alta, no crítica), ya que requiere que el atacante ya tenga una sesión local en el equipo. El parche oficial se integró en abril de 2026, pero su distribución entre las diferentes versiones del kernel ha sido despareja.

Un detalle importante para quienes administran infraestructura: la corrección original introdujo, a su vez, un error de estabilidad distinto (CVE-2026-53166), cuya solución seguía consolidándose en el árbol de desarrollo a comienzos de julio. Esto significa que instalar la "primera" versión parcheada no es garantía suficiente; hay que verificar que se trate de la build definitiva.

Respecto a la adopción por parte de las distribuciones, Ubuntu había actualizado su versión más reciente y algunos kernels de nube, pero a inicios de julio sus versiones LTS 24.04, 22.04 y 20.04 seguían figurando como vulnerables o en proceso de parcheo.

No existe una mitigación completa mientras no se aplique el parche, dado que las operaciones que disparan el fallo son parte del funcionamiento normal de cualquier proceso local. Dos opciones de compilación del kernel —RANDOMIZE_KSTACK_OFFSET y STATIC_USERMODE_HELPER— dificultan la explotación, pero no eliminan el problema de raíz.

Recomendaciones prácticas

  • Verificar la versión exacta del kernel contra el aviso oficial de la distribución, no solo confirmar que "ya se aplicó una actualización".
  • Priorizar servidores multiusuario y multi-tenant, entornos cloud, contenedores y runners de CI/CD, donde es más probable que un atacante ya tenga el punto de apoyo local que esta falla necesita.
  • No confiar únicamente en las mitigaciones de compilación como sustituto del parche definitivo.
  • Tener en cuenta que ya existe código de explotación público, publicado por el propio equipo de Nebula, lo que reduce la barrera técnica para un eventual atacante.

El contexto: una racha de fallas kernel-a-root en 2026

GhostLock no es un caso aislado. Se suma a una serie de vulnerabilidades de escalada de privilegios en Linux detectadas durante 2026, varias de ellas descubiertas con ayuda de herramientas automatizadas de búsqueda de bugs. Días antes se había revelado Bad Epoll (CVE-2026-46242), una falla emparentada que también otorga root a un usuario sin privilegios y que, de forma inusual para este tipo de bug, afecta también a Android.

Además, GhostLock forma la segunda mitad de una cadena de explotación bautizada IonStack por Nebula. La primera mitad es una falla en Firefox (CVE-2026-10702) que permite ejecutar código dentro del navegador y escapar de su sandbox; GhostLock se encarga de completar el camino hasta el control total del sistema. Nebula ya demostró la cadena completa —desde un simple clic en un enlace malicioso hasta el control total— contra Firefox en Android, lo que ilustra por qué una falla "solo local" puede terminar siendo la pieza que convierte un compromiso de navegador en un compromiso remoto completo.


Fuente: Swati Khandelwal, "15-Year-Old GhostLock Flaw Enables Root and Container Escape on Most Linux Distros", The Hacker News, 8 de julio de 2026.