
CVE-2026-43284/CVE-2026-43500 'DirtyFrag' Script de detección de parches benignos y mitigaciones
TL;DR: Hay dos nuevos fallos en el kernel de Linux. Este script te indica si eres vulnerable. Parchea tus sistemas.
El 7 de mayo de 2026, una clase de vulnerabilidad llamada Dirty Frag fue divulgada públicamente por el investigador de seguridad Hyunwoo Kim (@v4bel) — antes de lo previsto, después de que una ruptura del embargo le obligara a publicar antes de que los parches estuvieran listos.
Permite que cualquier usuario local sin privilegios obtenga acceso root. Sin condición de carrera. Sin ventana de sincronización. Muy fiable.
Dos subsistemas están afectados:
| CVE | Subsistema | Módulos | Introducido | Corregido (upstream) |
|---|
| CVE-2026-43284 | IPsec ESP | esp4, esp6 | Ene 2017 (cac2661c53f3) | 7 May 2026 (f4c50a4034e6) |
| CVE-2026-43500 | RxRPC | rxrpc | Jun 2023 (2dc334f1a63a) | 10 May 2026 (aa54b1d27fe0) |
Ninguno de los dos fallos por sí solo es totalmente fiable — la vía ESP requiere la capacidad de crear un espacio de nombres de usuario (que el AppArmor de Ubuntu bloquea), y la vía RxRPC necesita rxrpc.ko cargado (que la mayoría de las distribuciones no hacen por defecto). Juntos cubren los puntos ciegos del otro, haciendo que la cadena funcione en prácticamente todas las distribuciones principales.
Hay un proof-of-concept público disponible. Asume que ya está en uso activo.
Comprueba tu sistema en busca de las condiciones que hacen posible la explotación, y te dice específicamente por qué estás expuesto — no solo un sí o un no.
| Comprobación | Qué busca |
|---|---|
| Versión del kernel | ¿Está este kernel en alguno de los rangos afectados? |
| Parche — CVE-2026-43284 | ¿Está el fix de esp4/esp6 (f4c50a4034e6) en tu paquete del kernel? |
| Parche — CVE-2026-43500 | ¿Ha hecho backport tu distribución del fix de rxrpc (aa54b1d27fe0)? |
Módulo esp4 | ¿Cargado, cargable o en lista negra? |
Módulo esp6 | ¿Cargado, cargable o en lista negra? |
Módulo rxrpc | ¿Cargado, cargable o en lista negra? |
| Socket netlink XFRM | ¿Puede un usuario sin privilegios abrir uno ahora mismo? |
| Socket AF_RXRPC | ¿Puede un usuario sin privilegios abrir uno ahora mismo? |
| Mitigaciones | AppArmor, SELinux, espacios de nombres de usuario sin privilegios, archivo de lista negra |
No arreglará nada. No explotará nada. Solo te dice la verdad sobre tu sistema.
python3 dirty_frag_detect.py
Eso es todo. Salida con códigos de color, razones específicas para cada hallazgo y un resumen de remediación al final.
[
]
La solución real es parchear tu kernel. Consulta los avisos de seguridad de tu distribución:
| Distribución | Dónde mirar |
|---|---|
| Ubuntu / Debian | sudo apt-get update && sudo apt-get dist-upgrade |
| RHEL / AlmaLinux / Rocky | sudo dnf update kernel |
| Arch | sudo pacman -Syu linux |
| CloudLinux | Aviso de CloudLinux |
Mientras esperas (o si los parches aún no están disponibles para tu distribución), pon en lista negra los módulos vulnerables:
sudo sh -c "printf 'install esp4 /bin/false\ninstall esp6 /bin/false\ninstall rxrpc /bin/false\n' \
> /etc/modprobe.d/dirtyfrag.conf; \
rmmod esp4 esp6 rxrpc 2>/dev/null; \
echo 3 > /proc/sys/vm/drop_caches"
⚠️ Antes de hacer eso:
- Poner en lista negra
esp4/esp6romperá los túneles IPsec (strongSwan, Libreswan; WireGuard no se ve afectado). No apliques esto en pasarelas VPN.- Poner en lista negra
rxrpcromperá los clientes del sistema de archivos distribuido AFS. Casi nadie lo usa — pero compruébalo primero.
Importante: si tu sistema puede haber sido atacado antes de aplicar la mitigación, el exploit puede modificar binarios en la caché de páginas sin tocar el disco. Las herramientas de integridad de archivos (Tripwire, AIDE) que comprueban sumas de verificación en disco no verán nada raro. Reiniciar limpia la caché de páginas y restaura el estado en disco.
Ambos fallos viven en las rutas rápidas de descifrado in-place del kernel. Cuando un socket buffer lleva fragmentos paginados que no son propiedad privada del kernel — por ejemplo, páginas de pipe adjuntadas mediante splice() o sendfile() — las rutas de recepción de ESP y RxRPC descifran directamente sobre esas páginas respaldadas externamente en lugar de copiar primero.
Un atacante puede dirigir una página de la caché de /usr/bin/su (o de cualquier otro archivo legible) hacia una de estas rutas de descifrado, usando su propia clave para que la "salida descifrada" sea los bytes que elija. El kernel escribe esos bytes directamente en la copia en caché en memoria de su. El archivo en disco no se toca. El kernel nunca marca la página como sucia.
A partir de ese momento, cada proceso que ejecute su ejecuta la versión del atacante — hasta que se ejecute drop_caches o se reinicie.
La variante ESP (cac2661c53f3) y la variante RxRPC (2dc334f1a63a) comparten el mismo sumidero pero tienen requisitos previos diferentes que se cancelan mutuamente, haciendo la cadena fiable en todas las configuraciones principales.
Para el informe técnico completo, consulta V4bel/dirtyfrag.
| Fecha | Evento |
|---|---|
| 2026-04-30 | Reportado al equipo de seguridad del kernel de Linux |
| 2026-05-07 | Embargo roto por un tercero; Hyunwoo Kim publica antes de lo previsto |
| 2026-05-07 | PoC público publicado; se asigna CVE-2026-43284 |
| 2026-05-07 | Fix de CVE-2026-43284 (f4c50a4034e6) fusionado en netdev/net.git |
| 2026-05-08 | CVE-2026-43500 reservado; las distribuciones comienzan a distribuir kernels parcheados para CVE-2026-43284 |
| 2026-05-10 | Fix de CVE-2026-43500 (aa54b1d27fe0) fusionado en mainline |
| 2026-05-11 | Backports de las distribuciones para CVE-2026-43500 en curso |
Crédito: Hyunwoo Kim (@v4bel) por la investigación original, la divulgación y el PoC.
Solo detección. Apúntalo a sistemas que estés autorizado a evaluar.