El kernel de Linux tiene un marco conocido como Netfilter que permite realizar una variedad de acciones relacionadas con la red en forma de controladores individualizados. Esto puede lograrse filtrando los paquetes de red entrantes. Netfilter proporciona la funcionalidad requerida para dirigir paquetes a través de una red y evitar que lleguen a ubicaciones confidenciales dentro de una red, que proporciona una variedad de funciones y operaciones para filtrado de paquetes, traducción de direcciones de red y traducción de puertos, entre otras cosas. Netfilter ofrece estas características.
Los desarrolladores se han referido a la vulnerabilidad en el subsistema Netfilter como un desbordamiento de búfer basado en pila. Un atacante autorizado podría explotar este problema para obtener privilegios elevados como root si el atacante ejecuta un programa que se haya escrito cuidadosamente para ese propósito. Todas las versiones de Linux desde la 5.5 hasta la 6.2-rc3 son susceptibles a la vulnerabilidad.
La explotación podría dar lugar a la divulgación de las direcciones de la pila y del montón, así como la posible elevación de los privilegios locales de un usuario a los del usuario raíz mediante la ejecución de código arbitrario.
Cuando se ejecuta el exploit, iniciará sesión como un usuario sin permisos especiales y utilizará la función de agregar carga útil de la regla para agregar una expresión de carga útil nft. Esta expresión, cuando se evalúa, hará que el búfer de pila se desborde, lo que a su vez hará que se sobrescriban los registros.
El ataque de prueba de concepto para CVE-2023-0179 se probó con éxito en la versión sin parches del kernel de Linux (6.1.6). La vulnerabilidad da como resultado la creación de una nueva cuenta de usuario con la aguja de nombre de usuario y el UID 0.
Se recomienda encarecidamente que los usuarios actualicen inmediatamente sus servidores Linux e implementen las correcciones para las distribuciones tan pronto como sea humanamente factible. También se recomienda que solo permitan el acceso a los sistemas locales a personas de confianza y que controlen constantemente los sistemas que se han visto comprometidos.
Si no puede aplicar una solución para esta vulnerabilidad puede evitar la explotación desactivando los espacios de nombres para los usuarios sin privilegios.
sysctl -w kernel.unprivileged userns clone = 0 es el comando que debe ingresar.
Entusiasta de la seguridad cibernética. Especialista en seguridad de la información, actualmente trabajando como especialista en infraestructura de riesgos e investigador.
Experiencia en procesos de riesgo y control, soporte de auditoría de seguridad, diseño y soporte de COB (continuidad del negocio), gestión de grupos de trabajo y estándares de seguridad de la información.