Copy Fail (CVE-2026-31431): la IA encuentra un exploit de 732 bytes que da root en cualquier Linux desde 2017

Copy Fail (CVE-2026-31431): la IA encuentra un exploit de 732 bytes que da root en cualquier Linux desde 2017

Un fallo lógico en el subsistema criptográfico del kernel de Linux lleva casi una década explotable sin que nadie lo detectara. Lo encontró una IA en aproximadamente una hora de análisis. El resultado: cualquier usuario sin privilegios puede obtener acceso root en prácticamente cualquier distribución Linux lanzada entre 2017 y el parche publicado en abril de 2026.

El CVE asignado es el CVE-2026-31431 y la vulnerabilidad se conoce como Copy Fail. La web oficial con toda la información, el exploit y la mitigación está en copy.fail.

Qué es Copy Fail y por qué es diferente a otras LPE

La mayoría de vulnerabilidades de escalada de privilegios en Linux dependen de condiciones de carrera o de offsets específicos por distribución, lo que limita bastante su alcance real. Copy Fail no necesita ninguna de las dos cosas. Es un fallo lógico en línea recta: el módulo authencesn del subsistema criptográfico utiliza el buffer de destino del llamante como zona de trabajo temporal y escribe 4 bytes fuera de la región legítima de salida sin restaurarlos. Combinado con AF_ALG y splice(), esos 4 bytes acaban aterrizando en la caché de páginas del kernel sobre cualquier binario setuid legible por el usuario.

El exploit completo son 732 bytes de Python 3, sin dependencias externas, y funciona sin modificaciones en Ubuntu, Amazon Linux, RHEL y SUSE. No hay offsets, no hay recompilación, no hay ventana de carrera que ganar: o funciona o no funciona, y según los tests siempre funciona.

Qué lo hace especialmente peligroso

Lo que distingue a Copy Fail de la mayoría de CVEs de LPE es la combinación de cuatro propiedades que casi nunca aparecen juntas: es portable entre distribuciones sin adaptación, es diminuto y sin dependencias, es silencioso porque la escritura en caché nunca marca la página como sucia (nada llega a disco, en una imagen forense el archivo aparece intacto), y además es un primitivo de escape de contenedores porque la caché de páginas es compartida en todo el host.

Esto último es lo que convierte un problema serio en un problema crítico para entornos multi-tenant: cualquier pod en un cluster Kubernetes, cualquier runner de CI que ejecute código de una PR no confiable, cualquier notebook compartido o función serverless, tiene el mismo problema que un servidor de producción con múltiples usuarios.

Cómo mitigarlo si no puedes parchear todavía

El parche ya está en mainline (commit a664bf3d603d) y las principales distribuciones están sacando kernels actualizados. Si no puedes parchear de inmediato, la mitigación es deshabilitar el módulo algif_aead:

# echo "install algif_aead /bin/false" > /etc/modprobe.d/disable-algif.conf
# rmmod algif_aead 2>/dev/null || true

Para la inmensa mayoría de sistemas esto no rompe nada. AF_ALG no es utilizado por dm-crypt/LUKS, IPsec, kTLS, OpenSSL por defecto ni SSH. Si tienes dudas, lsof | grep AF_ALG resuelve la pregunta en un segundo.

El papel de la IA en el descubrimiento

La vulnerabilidad la encontró Xint Code, una herramienta de auditoría basada en IA. El punto de partida fue humano: Taeyang Lee identificó que splice() puede meter páginas de caché en el subsistema criptográfico y que la procedencia de las páginas en scatterlists era una clase de bugs poco explorada. A partir de ahí, la IA hizo el barrido completo del directorio crypto/ del kernel en alrededor de una hora y Copy Fail fue el hallazgo más grave de esa pasada. No es el único: el resto todavía está en proceso de divulgación coordinada.

Web oficial con el exploit, write-up técnico y timeline completo: https://copy.fail/

¿Tienes un truco mejor?

¿Tienes un truco mejor?

Compartir conocimiento es la mejor forma de aprender.

Si tienes una cuenta en Sinologic, no necesitas rellenar estos campos. Regístrate gratis · Iniciar sesión

Comunidad abierta

Únete a la comunidad Sinologic

Crea tu cuenta gratuita y participa en las conversaciones sobre VoIP, Asterisk, Kamailio y telecomunicaciones IP.

Nombre verificado Tu nombre aparece con insignia de miembro en cada comentario.
🔔
Notificaciones Recibe avisos cuando alguien responda a tus comentarios.
👍
Reacciones Reacciona con emojis a los comentarios de otros usuarios.
👤
Perfil personalizable Avatar, bio, enlaces a tu Twitter, GitHub y Telegram.
📬
Newsletter exclusivaPróximamente Contenido técnico y novedades directamente en tu bandeja.
🧪
Acceso anticipadoPróximamente Prueba herramientas y funciones antes que nadie.