
Copy Fail (CVE-2026-31431) es un error lógico en la plantilla criptográfica authencesn del kernel de Linux. Permite que un usuario local sin privilegios provoque una escritura determinista y controlada de 4 bytes en la caché de páginas de cualquier archivo legible del sistema.
Un PoC (Prueba de Concepto) avanzado y byte-perfecto de Escalada de Privilegios Local (LPE) para CVE-2026-31431, que explota una falla lógica en el subsistema de criptografía del kernel de Linux (algif_aead).
Este repositorio contiene una implementación en C altamente optimizada que sobrescribe de forma fiable la memoria de Page Cache de solo lectura manipulando la interfaz de socket AF_ALG y la llamada al sistema splice().
La vulnerabilidad, apodada "Copy Fail", permite a un atacante local sin privilegios forzar al kernel a escribir las salidas de operaciones criptográficas directamente en las páginas mapeadas en memoria de cualquier archivo del sistema. Al apuntar a /usr/bin/su, este PoC logra una inyección de memoria de copia cero, otorgando una shell root instantánea sin modificar el binario físico en disco.
Se han realizado pruebas exhaustivas en varias distribuciones Linux modernas para determinar la ventana de explotabilidad y observar los comportamientos de los parches.
En kernels parcheados (p. ej., 6.19.14+ y 7.0.0+), el exploit se ejecuta sin bloquearse ni lanzar EINVAL (Fallo Silencioso). El kernel analiza correctamente las cabeceras rtattr de Netlink en bruto, pero aplica correctamente los permisos de página VM_MAYWRITE durante la fase de escritura de splice(). Asigna silenciosamente un búfer seguro en lugar de sobrescribir la Page Cache de solo lectura de /usr/bin/su.
gcc copy_fail_exp.c -o copy_fail_exp
chmod +x copy_fail_exp
./copy_fail_exp
[*] CVE-2026-31431 Research - Ultimate C Implementation
[+] Page Cache completely overwritten.
[+] Detonating modified binary...
# whoami
root
Este código se publica estrictamente con fines educativos, de investigación defensiva y de modelado de amenazas. No lo ejecute en sistemas de producción ni en ningún entorno donde no tenga autorización explícita.
| Sistema Operativo | Versión del Kernel | ¿Vulnerable? | Observación / Causa Raíz |
|---|
| Kali Linux 2026.1 | 6.18.12+kali-amd64 | ✅ Sí | Explotación perfecta. Shell root obtenida. |
| Linux Mint 22.3 | 6.14.0-37-generic | ✅ Sí | Explotación perfecta. Shell root obtenida. |
| Ubuntu 22.04.5 LTS | 6.8.0-111-generic | ✅ Sí | Explotación perfecta. Shell root obtenida. |
| Ubuntu 24.04.4 LTS | 6.8.0-111-generic | ❌ No | Protocol not available. El SO restringe/deshabilita las operaciones netlink AF_ALG requeridas por defecto. |
| Kali Linux 2026.1 | 6.19.14+kali-amd64 | ❌ No | Parcheado (Fallo Silencioso). su solicita la contraseña normalmente. |
| Ubuntu 26.04 LTS | 7.0.0-15-generic | ❌ No | Parcheado (Fallo Silencioso). su solicita la contraseña normalmente. |