> For the complete documentation index, see [llms.txt](https://burple.gitbook.io/burple/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://burple.gitbook.io/burple/hackmyvm/facil/system.md).

# System

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2F1dkKIptI8hzSRb4MFpyR%2Fimage.png?alt=media&amp;token=af4867e6-bbbf-41ce-ba0c-c3cf9b6c199e" alt=""><figcaption></figcaption></figure>

## Fase de reconocimiento

Realizamos un escaneo de nmap para ver ante que puertos abiertos nos enfrentamos, y podemos ver que está el puerto 22 (SSH) y 80 (HTTP) abierto:

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2Fj4hrkyGLk7QRzGNR6lyv%2Fimage.png?alt=media&amp;token=f4b132b2-e7bb-468b-9f29-7eb993755947" alt=""><figcaption></figcaption></figure>

## Fase de intrusión

Interceptamos la solicitud de su pagina web y vemos que está haciendo una solicitud a "/magic.php" (El único archivo, ya que he hecho un ataque de fuzzing y  solo encontré ese), y así de primera vista es un archivo XML, me sugiere que quizas funcionaria un XXE (XML External Entity Injection):

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2F6MqAFWBQemkh6wyAZzX6%2Fimage.png?alt=media&amp;token=29862af7-f936-41a8-9ecd-f806d4f44877" alt=""><figcaption><p>Encontramos el usuario "david"</p></figcaption></figure>

Vemos que el XXE funciona, así que le voy a proporcionar una serie de payloads a traves del intruder, es el archivo de LFI de la Seclist, exactamente el "LFI-gracefulsecurity-linux.txt":

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FlJyIZae4x5m3L3xY9xOs%2Fimage.png?alt=media&amp;token=8212518c-bb01-4e17-b711-14b1807bdbe1" alt=""><figcaption><p>Aseguraros de tener está opcción desactivada</p></figcaption></figure>

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FPSuQrbVs3rzBU25P5CfB%2Fimage.png?alt=media&amp;token=295b95db-5792-4145-8739-7147413999ac" alt=""><figcaption></figcaption></figure>

Encuentro el archivo de ssh, lo cual me llama la atención ya que podria inciar sesión al ssh si consigo la private key:

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2Fkb1TbBbkshmE4et9mMY6%2Fimage.png?alt=media&amp;token=5a0c72e2-5b43-4c14-b770-7905ab338238" alt=""><figcaption></figcaption></figure>

Rebuscando un poco por internet, me entero de que la /id\_rsa tendra que estar a dentro del usuario, haciendo eso mismo, consigo listar la id\_rsa de david, el usuario previamente encontrado mediante el /etc/passwd, peeeero... :

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2Ft4fu7GkBEEEkjtTqc8YP%2Fimage.png?alt=media&amp;token=5237a470-561a-465c-a2fa-b71b5c653f5c" alt=""><figcaption></figcaption></figure>

Nos pide contraseña tristemente, probando con otras wordlists, he cambiado a wfuzz porque sino tardaría mucho:

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FL4FWuUziA8q3w1Hv8pKp%2Fimage.png?alt=media&amp;token=52cd6f1d-c818-4f37-b7df-bc906378a138" alt=""><figcaption></figcaption></figure>

Dentro de .viminfo encuentro lo siguiente:

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2F64j8yC18KEQ6Yk0qE4zy%2Fimage.png?alt=media&amp;token=7753fb3e-aa14-46e5-ae41-f2c92571dd2e" alt=""><figcaption></figcaption></figure>

Menudo BOMBON de licor, no? Hago un curl para variar a el archivo que he encontrado que supuestamente tiene la password:

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FkcOKWjbA4DazLyHqSICN%2Fimage.png?alt=media&amp;token=f77db9b3-6d94-434c-9d25-beb3ddd7986a" alt=""><figcaption></figcaption></figure>

## Escalada de privilegios

Usamos el id\_rsa de antes con la password obtenida y accedemos a el sistema

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2F2ZnPbf8ogftJbtuBeYTO%2Fimage.png?alt=media&amp;token=31fa350d-cd6b-4d2a-9293-be1e8d75018f" alt=""><figcaption></figcaption></figure>

Navegando un poco, me voy al directorio "/opt" y encuentro el siguiente script en python. Y al parecer lo que está haciendo es leer la primera lineal de código de cmd.txt (el cual no existe, así que supongo que lo tendré que crear) y luego escribe un archivo en "/tmp/suid.txt":

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FA3TuF7rl4aP5nSVBdHZO%2Fimage.png?alt=media&amp;token=fe289719-6e82-490a-b927-4bd750bef540" alt=""><figcaption></figcaption></figure>

Pero no tenemos permisos para ejecutarlo PERO, importe pspy64 abriéndome un server y haciendo un wget y podemos ver que se ejecuta de manera cronológica el script en python previamente enseñada

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FwIPM5Rl835YCp20SuGdj%2Fimage.png?alt=media&amp;token=b1acf72f-6e9e-4071-841e-23a4b60053ba" alt=""><figcaption></figcaption></figure>

Nos creamos un archivo en la ruta "/home/david" de nombre cmd.txt, esperamos que se ejecute y en teoria ya tendriamos que poder ejecutar la bash con permisos de root. Pero no funciona, asi que importo linpeas para ver que más podría hacer y me doy cuenta que podriamos editar el os.py, ya que lo ejecuta en el script. Así que me dispongo a ello:

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FopHefmf5SOOAJeZBlEl3%2Fimage.png?alt=media&amp;token=bfb52542-479a-4d66-ad5a-3d51e2cc8546" alt=""><figcaption></figcaption></figure>

Me pongo a la escucha con netcat y me espero a que me llegue la solicitud y ya estaría, habria obtenido permisos de root:

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FJT8fkqwxxmqCapDRCYU0%2Fimage.png?alt=media&amp;token=c18af648-d87c-4f23-abb6-0e6e5e6945eb" alt=""><figcaption></figcaption></figure>
