
🔐 Estudo de caso completo do CVE-2026-31431 (CopyFail) — vulnerabilidade crítica de escalada de privilégio no kernel Linux. Inclui análise técnica, scripts de verificação, hardening e playbook de resposta a incidentes. Fins educacionais.
Caso de Estudio completo — Cómo fue descubierta, cómo funciona, cómo probarla, cómo replicarla (en entorno seguro) y cómo corregir la vulnerabilidad crítica que afecta a casi todas las distribuciones Linux desde 2017.
Este repositorio tiene fines exclusivamente educativos. La información aquí presente está dirigida a profesionales de seguridad, investigadores y estudiantes de ciberseguridad. Nunca utilice ninguna técnica descrita aquí en sistemas sin autorización explícita. El uso indebido de esta información puede constituir un delito previsto en la Ley nº 12.737/2012 (Ley Carolina Dieckmann) y en el Marco Civil de Internet (Ley nº 12.965/2014).
| Campo | Detalle |
|---|---|
| CVE ID | CVE-2026-31431 |
| Apodo | CopyFail |
| Tipo | Escalada de Privilegios Local (LPE) |
| Puntuación CVSS | 8.8 (Alta) / potencialmente Crítico en cadena |
| Componente | Kernel de Linux — mecanismo de copia de datos |
| Versiones | Kernel de Linux ≤ 7.0 (distribuciones desde 2017) |
| Descubierto por | Theori (empresa de seguridad) |
| Divulgado en | Marzo de 2026 |
| Parche upstream | Disponible ~1 semana después de la divulgación responsable |
| Estado CISA | Catalogado como explotado activamente — Catálogo KEV |
| Plazo CISA | Las agencias federales deben corregir antes del 15/05/2026 |
La vulnerabilidad CopyFail fue descubierta por la empresa de seguridad Theori durante el análisis de código del kernel de Linux, específicamente en el subsistema responsable de copiar datos entre espacios de memoria.
Marzo/2026 → Investigadores de Theori identifican comportamiento anómalo en el kernel
Marzo/2026 → Divulgación responsable (Responsible Disclosure) al equipo de seguridad del kernel
~1 semana después → Parche upstream disponible en kernel.org
Mayo/2026 → Código de explotación (PoC) divulgado públicamente
01/05/2026 → Microsoft publica análisis técnico
04/05/2026 → CISA lo añade al Catálogo KEV (Known Exploited Vulnerabilities)
15/05/2026 → Plazo para corrección en agencias federales de EE. UU.
El kernel de Linux posee rutinas internas responsables de copiar datos entre diferentes regiones de memoria (userspace ↔ kernelspace). La falla recibe el nombre CopyFail porque el componente afectado deja de copiar ciertos datos cuando debería. Esto corrompe estructuras de datos sensibles dentro del kernel, abriendo una ventana de explotación para la escalada de privilegios.
El kernel de Linux gestiona memoria en dos espacios distintos:
┌─────────────────────────────────────┐
│ USERSPACE │
│ Proceso del Atacante (uid=1000) │
│ → llama a syscall maliciosa │
└────────────────┬────────────────────┘
│ syscall
▼
┌─────────────────────────────────────┐
│ KERNELSPACE │
│ Rutina de copia de datos │
│ → BUG: falla al copiar metadatos │
│ → corrompe estructura de control │
│ → atacante manipula puntero │
│ → ejecuta código como root │
└─────────────────────────────────────┘
uid=0 (root), obteniendo control total del sistema// Versión VULNERABLE (simplificada, didáctica)
int kernel_copy_data(struct user_request *req) {
struct kernel_buffer kbuf;
// BUG: copia solo parte de los datos, ignorando campos críticos
// ¡Los campos de seguridad (security_context) no se copian!
memcpy(&kbuf.data, req->data, req->size);
// → kbuf.security_context permanece sin inicializar (basura de memoria)
process_buffer(&kbuf); // usa datos corruptos
return 0;
}
// Versión CORREGIDA
int kernel_copy_data(struct user_request *req) {
struct kernel_buffer kbuf;
// FIX: copia el struct completo, incluidos los campos de seguridad
if (copy_from_user(&kbuf, req, sizeof(struct kernel_buffer)))
return -EFAULT;
process_buffer(&kbuf);
return 0;
}
| Distribución | Versión | Estado |
|---|---|---|
| Red Hat Enterprise Linux | 10.1 | ✅ Vulnerable |
| Ubuntu LTS | 24.04 | ✅ Vulnerable |
| Amazon Linux | 2023 | ✅ Vulnerable |
| SUSE Linux | 16 | ✅ Vulnerable |
| Debian | Estable reciente | ✅ Vulnerable |
| Fedora | Reciente | ✅ Vulnerable |
| Kubernetes (nodos) | Todos sobre kernel ≤7.0 | ✅ Vulnerable |
⚠️ Cualquier distribución Linux que ejecute kernel ≤ 7.0 distribuida desde 2017 es potencialmente vulnerable.
Un usuario sin privilegios en un servidor compartido (ej: entorno de hosting, VPS) ejecuta el exploit y obtiene root.
Internet → [RCE vía vulnerabilidad web] → shell limitado → [CopyFail] → root
Según el análisis de Microsoft: la falla puede encadenarse con un exploit entregado por internet (ej: RCE en aplicación web), resultando en compromiso total del servidor.
Un usuario de Linux es engañado para abrir un enlace o adjunto malicioso que activa el exploit localmente.
Un actor malicioso compromete la cuenta de un desarrollador de código abierto e inyecta el exploit en código ampliamente distribuido.
Un servidor en la nube comprometido puede exponer todas las VMs, contenedores, aplicaciones y bases de datos de clientes en la misma infraestructura.
⚠️ SOLO en entorno controlado y aislado — ¡VM sin acceso a red externa!