> 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/dockerlabs/medio/pyred.md).

# Pyred

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FzrzmRi7VrxXDFoIzO9QC%2Fimage.png?alt=media&amp;token=4294b9c5-1c05-43d8-8133-716f1d3ecc8a" alt=""><figcaption></figcaption></figure>

## Fase de reconocimiento

Intento entrar a la IP que nos da despues de lanzar la maquina pero no funciona, así que voy a hacer escaneo de Nmap en busqueda de puertos abiertos:

```
nmap -sSVC -vvv -open -Pn -min-rate 5000 172.17.0.2
```

\
![](https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FUAqCaSrecqXbngigpkC1%2Fimage.png?alt=media\&token=387187ea-9e75-426c-9fec-c6d7ca1139ac)

## Fase de intrusión

Entramos en la pagina web haciendo uso del puerto encontrado con Nmap (5000) y vemos un panel por el cual podemos ejecutar código de python, intento hacer un ls haciendo uso de la librería os y funciona:

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2F0rKvvnvhT17A92rYyEep%2Fimage.png?alt=media&amp;token=7682f47d-9027-4c90-87b9-ef5fc6b42fa7" alt=""><figcaption></figcaption></figure>

Vamos a hacer un cat de /etc/passwd para ver los usuarios que tenemos y encontramos a "primpi"

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2Fng4wdhQoz5LU5eglqIRv%2Fimage.png?alt=media&amp;token=358216ac-08cc-4451-8003-fd7f93eb9580" alt=""><figcaption></figcaption></figure>

Ahora mando una reverseshell (vi que habia ftp y pense que podria ser accesible pero no)

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FsWIrjOyqrQIbLG7tl2xq%2Fimage.png?alt=media&amp;token=eaf8b221-c3bd-4faf-8309-97adeb14123d" alt=""><figcaption></figcaption></figure>

## Escalada de privilegios

Hacemos un sudo -l y encontramos que todos los usuarios pueden correr dnf, buscamos en GTFOBins el binario.

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FFPRiLkm3h8khsE0GJkj8%2Fimage.png?alt=media&amp;token=f4846b8d-5b27-4306-91ba-a79530670365" alt=""><figcaption></figcaption></figure>

Lo que vamos a hacer con este script es hacer que la bash tenga permisos de root, para eso utilizaremos fpm, asi que si no lo teneis instalado, instalarlo haciendo uso de: "gem install fpm"

Tambíen a mayores tendras que hacer un: apt-get install rpm (los dos pasos anteriores al menos en parrot, quizas en kali ya viene preinstalado):

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2F9o8FRaOGn1GAe1JN08Jc%2Fimage.png?alt=media&amp;token=ba81c554-8beb-4f30-a7bb-784d454409c5" alt=""><figcaption></figcaption></figure>

Ahora, si nos vamos a abrir un servidor de python para poder descargar al archivo recien hecho en nuestra maquina victima:

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FSRcp4QTaOmhLEcSVmll0%2Fimage.png?alt=media&amp;token=77a516a8-f651-4a40-9929-33683de880cf" alt=""><figcaption></figcaption></figure>

Intento hacer un wget pero no esta instalado, así que con curl lo voy a descargar, despues de descargar el archivo ya podriamos cerrar nuestro servidor de python.

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FHiOQ7nImm4Iu04YS21eh%2Fimage.png?alt=media&amp;token=2baa0d7a-14ed-4d8a-8af6-d5274cae1993" alt=""><figcaption></figcaption></figure>

Corremos el ultimo comando de GTFOBins:

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FlM3kHkAPxN7BErY5VuWc%2Fimage.png?alt=media&amp;token=d5f6db28-aec8-4139-956c-4262fd80d986" alt=""><figcaption></figcaption></figure>

Ahora si hacemos un bash -p conseguiriamos acceso root, porque aqui lo unico que hemos hecho ha sido que bash sea root y que nosotros lo podamos ejecutar:

<figure><img src="https://2216970731-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FgI96Zsgdt6Oh2PlOLDwP%2Fuploads%2FRDZxvZBr07fPFPqDBXjE%2Fimage.png?alt=media&amp;token=ab03598c-070e-437a-bbf7-b5bd93cfdebd" alt=""><figcaption></figcaption></figure>
