Una estrategia de defensa de millones de dólares suele basarse en la suposición de que el núcleo del sistema operativo es una bóveda estática e impenetrable. Pasamos años perfeccionando reglas de firewall, proveedores de identidad y scripts de detección en endpoints, pero la base arquitectónica a menudo sigue siendo el componente más frágil. Linux utiliza una optimización llamada copia en escritura (copy-on-write o COW) para gestionar la eficiencia de la memoria. Este sistema garantiza que múltiples procesos compartan la misma memoria física hasta que uno necesite modificarla. En ese momento, se supone que el kernel debe crear una copia privada para evitar que el cambio afecte a otros usuarios. En el caso de CVE-2026-31635, esta promesa básica falló.
Pasé las últimas 48 horas revisando el código de prueba de concepto publicado para DirtyDecrypt, también conocido como DirtyCBC. La vulnerabilidad es un ejemplo de libro de texto de una paradoja arquitectónica. El mismo mecanismo diseñado para hacer que el kernel de Linux sea rápido y eficiente en memoria es el mecanismo que permitió a un usuario sin privilegios sobrescribir archivos propiedad de root. Esta es la tercera variación importante de esta lógica específica de corrupción de memoria que hemos visto en otros tantos meses. Me recuerda a un barco construido con un casco que es impenetrable desde el exterior pero que se disuelve cuando toca su propio combustible interno.
El defecto existe dentro de la función rxgk_decrypt_skb. Este código maneja la descifrado de los búferes de socket entrantes en el lado de recepción de la pila de red. Cuando el kernel procesa estos búferes, maneja páginas de memoria que a veces se comparten con el caché de páginas (page cache) de otros procesos. En condiciones normales, el kernel de Linux activa una operación de copia en escritura antes de que ocurra cualquier escritura en una página compartida. Esto evita que los datos de un proceso se filtren en el espacio de memoria de otro.
Investigadores de Zellic descubrieron que rxgk_decrypt_skb carecía de esta protección COW. Cuando el kernel descifra datos en un búfer que resulta ser una página compartida, escribe el contenido descifrado directamente en la memoria física sin realizar primero una copia privada. Esto elude los permisos estándar del sistema de archivos y las protecciones de memoria. Un atacante puede mapear un archivo sensible como /etc/shadow o un binario SUID en su espacio de memoria y luego usar la ruta de red vulnerable para forzar al kernel a escribir datos en el caché de páginas de ese archivo. Una vez que el kernel vuelca el caché de páginas al disco, la modificación se vuelve permanente.
DirtyDecrypt no es un incidente aislado. Es descendiente de una familia de vulnerabilidades que comenzó con Copy Fail (CVE-2026-31431) en abril de 2026. Investigadores de Theori identificaron por primera vez que la interfaz de socket criptográfico en el kernel tenía fallos de lógica similares. Una semana después, surgió Dirty Frag. A esto le siguió Fragnesia, que se centró en el subsistema XFRM. Cada una de estas vulnerabilidades comparte la misma causa raíz: la falta de verificación de la propiedad de la página antes de realizar escrituras a nivel de kernel.
Esta secuencia de revelaciones resalta un problema sistémico en cómo el kernel de Linux maneja las optimizaciones modernas de memoria de red. La introducción de MSG_SPLICE_PAGES y otros mecanismos de copia cero de alto rendimiento ha introducido una complejidad que la infraestructura COW actual lucha por regular. El investigador conocido como 0xdeadbeefnetwork señaló que una vez que una solución para una variante llega al árbol público, convertir la siguiente variante en un exploit es un ejercicio estándar para los profesionales de la seguridad. Este ciclo rápido de desarrollo de n-days es un recordatorio de que un parche en un subsistema no garantiza la seguridad de otro que utilice una lógica similar.
El impacto de CVE-2026-31635 depende en gran medida de la configuración del kernel. La vulnerabilidad requiere que la opción CONFIG_RXGK esté habilitada. Es por esto que distribuciones como Fedora, Arch Linux y openSUSE Tumbleweed corren un mayor riesgo. Estas distribuciones a menudo favorecen características de vanguardia y un soporte de hardware más amplio, lo que incluye habilitar módulos de red y criptográficos especializados que están deshabilitados en versiones empresariales más conservadoras como RHEL o Debian Stable.
En entornos de nube, esta vulnerabilidad representa un riesgo significativo para el aislamiento de contenedores. Si un nodo de trabajo ejecuta un kernel vulnerable, un contenedor comprometido puede usar la primitiva DirtyDecrypt para escapar de su entorno local. Al sobrescribir el caché de páginas para binarios compartidos o estructuras del kernel, el atacante puede pasar de un pod restringido a un acceso root completo en el host. Esto colapsa efectivamente el modelo de seguridad multi-inquilino en el que confían Kubernetes y otros orquestadores para el aislamiento de cargas de trabajo.
El volumen de revelaciones del kernel ha obligado a replantear cómo gestionamos la seguridad de Linux. Sasha Levin, un destacado mantenedor del kernel, propuso recientemente un "killswitch" para el kernel. Esta herramienta permite a un administrador desactivar una función específica del kernel en tiempo de ejecución sin necesidad de reiniciar. Si se descubre una vulnerabilidad de día cero como DirtyDecrypt en una función de red específica, el administrador puede indicarle al kernel que deje de ejecutar esa función y devuelva un valor fijo en su lugar. Esto actúa como una válvula de cierre de emergencia para el casco del barco mientras se prepara un parche permanente.
A algunos desarrolladores les preocupan las implicaciones de seguridad del propio killswitch. Si un atacante obtiene suficientes privilegios para activar el killswitch, teóricamente podría desactivar módulos de seguridad o funciones de auditoría. Sin embargo, la realidad actual del ecosistema Linux es que el parcheo es demasiado lento para la velocidad del desarrollo de exploits modernos. El killswitch proporciona una medida reactiva para las organizaciones que no pueden esperar a una prueba de regresión completa de una nueva versión del kernel. Es una respuesta pragmática al hecho de que nuestro software es cada vez más complejo para estar libre de errores.
Rocky Linux ha adoptado un enfoque diferente al introducir un repositorio de seguridad dedicado. Tradicionalmente, las distribuciones downstream esperan a que los proveedores upstream publiquen un parche verificado antes de enviar actualizaciones a sus usuarios. Esto crea una ventana de vulnerabilidad cuando un PoC es público pero la actualización oficial está estancada en un ciclo de control de calidad. El nuevo repositorio de seguridad de Rocky Linux es una característica opcional que envía correcciones urgentes tan pronto como están disponibles, incluso si aún no han llegado al kernel principal.
Este movimiento es controvertido porque rompe la estricta compatibilidad con el upstream. Si el equipo de Rocky Linux parchea un error y los mantenedores de upstream eligen más tarde una solución diferente, los dos kernels divergirán. Los mantenedores reconocen este riesgo pero creen que la protección de sus usuarios es más importante que la alineación perfecta de versiones. Esto refleja un cambio más amplio en la industria hacia la priorización de la agilidad frente a la explotación activa. Para los administradores, significa elegir entre la estabilidad del ciclo de lanzamiento tradicional y la resiliencia de una estrategia de parcheo más agresiva.
Defenderse contra CVE-2026-31635 requiere más que una actualización estándar. Las organizaciones deben primero verificar si sus sistemas son vulnerables. Comprobar la configuración del kernel para CONFIG_RXGK es el primer paso. Si el módulo está habilitado pero no es necesario para su carga de trabajo, desactivarlo mediante una lista de denegación de módulos del kernel es la mitigación inmediata más efectiva. Esto elimina por completo la superficie de ataque sin necesidad de reiniciar en algunos casos.
Desde una perspectiva de riesgo, debe asumir que los usuarios locales tienen la capacidad de ejecutar este PoC si tienen acceso a la shell. Esto hace que el monitoreo estricto del directorio /etc/ y de los binarios SUID sea esencial. Las herramientas de seguridad modernas que monitorean la integridad del caché de páginas pueden alertarle si un proceso intenta modificar archivos de solo lectura a través de rutas de memoria no convencionales. El parcheo sigue siendo el estándar de oro, pero hasta que su flota esté actualizada, los perfiles restrictivos de Seccomp y las políticas de AppArmor pueden limitar la capacidad de los procesos locales para interactuar con las funciones de red vulnerables.
Audite la configuración de su kernel y verifique si su distribución ha publicado una solución para CVE-2026-31635. Las organizaciones que ejecutan Arch o Fedora deben priorizar estas actualizaciones de inmediato. Si gestiona una gran flota de servidores Linux, considere las implicaciones a largo plazo de usar kernels con amplios conjuntos de características y evalúe si una configuración de kernel más endurecida y mínima es apropiada para su postura de seguridad.
Descargo de responsabilidad: Este artículo es solo para fines informativos y educativos. No reemplaza una auditoría de ciberseguridad profesional ni un servicio de respuesta a incidentes. Los detalles técnicos proporcionados están destinados a ayudar a los administradores a comprender los riesgos e implementar las defensas necesarias.



Nuestra solución de correo electrónico cifrado y almacenamiento en la nube de extremo a extremo proporciona los medios más potentes para el intercambio seguro de datos, lo que garantiza la seguridad y la privacidad de sus datos.
/ Crear una cuenta gratuita