25 de abril de 2025 — Aunque IO_uring ha sido una de las innovaciones más potentes del kernel Linux en la última década —mejorando significativamente el rendimiento en operaciones de entrada/salida asincrónica— también ha sido motivo de preocupación desde el punto de vista de la seguridad. Ahora, con la llegada de Linux 6.6, los administradores de sistemas podrán desactivar IO_uring de forma global mediante un nuevo parámetro de configuración del sistema, sin necesidad de recompilar el kernel ni aplicar parches complejos.
IO_uring: rendimiento con riesgos
IO_uring ha permitido importantes mejoras en el manejo de operaciones I/O sin bloqueo, y ha sido adoptado por aplicaciones de alto rendimiento y bases de datos modernas. Sin embargo, ha estado vinculado a diversas vulnerabilidades de seguridad, especialmente en versiones antiguas del kernel o cuando se combina con ciertas configuraciones del subsistema de seguridad.
Uno de los casos más destacados ha sido el reportado por Google, que afirmó que aproximadamente el 60 % de las vulnerabilidades premiadas en su programa de recompensas tenían relación con IO_uring. Esta situación llevó al gigante tecnológico a limitar o bloquear su uso en servidores, Android y ChromeOS.
Una nueva opción en Linux 6.6: io_uring_disabled
Gracias a un parche presentado por Matteo Rizzo (Google) e integrado en la rama for-6.6/io_uring
del kernel, ahora será posible controlar el uso de IO_uring mediante un parámetro sysctl llamado io_uring_disabled
.

Esta opción permite tres configuraciones:
0
(valor por defecto): IO_uring está habilitado para todos los procesos.1
: solo los procesos con privilegios de administrador (CAP_SYS_ADMIN
) podrán crear instancias de IO_uring.2
: se bloquea completamente IO_uring para todos los procesos, independientemente de sus privilegios.
Este cambio facilita a los administradores reducir la superficie de ataque en sistemas sensibles o expuestos a entornos no confiables.
Cómo aplicar la restricción
Una vez actualizado a Linux 6.6, bastará con modificar el valor en /proc/sys/kernel/io_uring_disabled
o usar el siguiente comando para desactivarlo totalmente:
sudo sysctl -w kernel.io_uring_disabled=2
Para que el cambio persista tras reiniciar, puede añadirse al archivo /etc/sysctl.conf
:
kernel.io_uring_disabled = 2
Implicaciones para administradores y desarrolladores
Con esta nueva capacidad, se abre una vía más clara para endurecer la seguridad del kernel en entornos corporativos o de misión crítica donde la estabilidad y el aislamiento son prioritarios. IO_uring sigue siendo útil en muchos casos, pero contar con una opción de desactivación sencilla permite aplicar una política de mínimo privilegio, activándolo solo cuando sea realmente necesario y bajo entornos controlados.
Conclusión
Linux 6.6 marca un nuevo paso en la gestión de riesgos relacionados con IO_uring. Si bien esta interfaz de I/O ha aportado grandes avances en rendimiento, la comunidad del kernel —en colaboración con empresas como Google— continúa trabajando para encontrar un equilibrio entre innovación y seguridad. Ahora, con una simple línea de configuración, los administradores tendrán una herramienta más para fortalecer sus sistemas sin renunciar a la flexibilidad del ecosistema Linux.
Más información: Lista de Kernel y Phronix.