
Exploit de escalada de privilegios local solo con datos para io_uring del kernel de Linux CVE-2024-0582, utilizando estructuras de archivo rociadas y ganchos ext4_file_operations para crear un usuario backdoor.
Un ataque solo de datos basado en CVE-2024-0582
El exploit sigue la estrategia de esta publicación de blog, excepto que no usé un proceso hijo para abrir archivos.
Encontré algunos exploits en GitHub que siguen la estrategia de este artículo.
Después de reproducir el exploit con secuestro del flujo de control basado en sockets, intenté implementar el exploit con un ataque solo de datos, que parece no haber sido publicado como código abierto aún.
Le proporcioné los dos artículos anteriores y https://github.com/ysanatomic/io_uring_LPE-CVE-2024-0582/blob/main/exploit.c a Claude y le dije:
¿Podrías modificar el código para que se ajuste al ataque solo de datos? Significa abrir archivo en lugar de sock, buscar ext4_file_operations en lugar de egg, eliminar el secuestro del flujo de control y modificar los permisos del archivo.
Esto generó un código con un proceso hijo. Pero creo que es difícil depurar si uso un proceso hijo. Así que dije:
¿Por qué no abrir el archivo en el proceso, sin usar un hijo?
Luego generó casi el código existente.
Luego yo:
ext4_fops_offset.gcc exploit.c -o exploit -luring
./exploit
sudo cat /etc/passwd # Si puedes usar sudo