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-2014-0038 — Exploit local de escalada de privilegios en Linux para CVE-2014-0038 | Kitploit
Herramientas/GitHubGitHub/saelo/cve-2014-0038
Escalada de PrivilegiosAnálisis de VulnerabilidadesExplotaciónExplotación de Binarios
GitHubsaelo/cve-2014-0038

cve-2014-0038

Exploit local de escalada de privilegios en Linux para CVE-2014-0038

Ver Repositorio
19940hace 12 añosRevisado por Kitploit

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

Local root exploit for CVE-2014-0038

Error:

La llamada al sistema X86_X32 recvmmsg no sanitiza correctamente el puntero de tiempo de espera recibido desde el espacio de usuario.

Primitiva del exploit:

Pasar un puntero a una dirección del kernel como tiempo de espera para recvmmsg; si se conoce el byte original en esa dirección, se puede sobrescribir con datos conocidos. Si el byte menos significativo es 0xff, esperar 255 segundos lo convertirá en 0x00.

Restricciones:

El primer long en la dirección pasada (tv_sec) debe ser positivo y el segundo long (tv_nsec) debe ser menor que 1000000000.

Resumen:

Apuntar al puntero de función release de la estructura ptmx_fops ubicada en memoria del kernel no inicializada (y por tanto escribible). Poner a cero los tres bytes más significativos y así convertirlo en un puntero a una dirección mapeable en espacio de usuario. Se usa el puntero release porque va seguido de 16 bytes 0x00 (por lo que tv_nsec es válido). Abrir /dev/ptmx, cerrarlo y disfrutar.

No muy elegante pero debería ser bastante fiable si se pueden resolver los símbolos.

Probado en Ubuntu 13.10

Ver también http://blog.includesecurity.com/2014/03/exploit-CVE-2014-0038-x32-recvmmsg-kernel-vulnerablity.html

Ejecución:

Obtener direcciones de /proc/kallsyms y ejecutar el exploit:

root@kitploit:~
./build.sh && ./timeoutpwn

Si deseas compilar el binario para un servidor remoto, prueba esto:

root@kitploit:~
ssh user@host 'cat /proc/kallsyms' > syms.txt
CFLAGS=-static ./build.sh syms.txt
scp timeoutpwn user@host:
...

Si ptmx_fops no se encuentra en kallsyms, intenta extraerlo del vmlinux proporcionado con el paquete de cabeceras (linux-headers en Arch Linux):

root@kitploit:~
nm /lib/modules/$(uname -r)/build/vmlinux > syms.txt
Descargar herramienta