# SYMFONOS 3

<figure><img src="https://1827363921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEGJvvgIusdsLKeoExX1C%2Fuploads%2FyLAawLJ38ZyUqMIqegai%2F1.png?alt=media&#x26;token=5e041cb3-bb64-4697-ab49-aae6e5614bd5" alt=""><figcaption></figcaption></figure>

Bueno primeramente lo tipico usar Nmap para descubrir puertos abiertos que tiene la maquina.

```javascript
# Nmap 7.94SVN scan initiated Sat Dec 16 22:26:33 2023 as: nmap -sCV -p21,22,80 -oN target.txt 192.168.1.142
Nmap scan report for 192.168.1.142
Host is up (0.0011s latency).

PORT   STATE SERVICE VERSION
21/tcp open  ftp     ProFTPD 1.3.5b
22/tcp open  ssh     OpenSSH 7.4p1 Debian 10+deb9u6 (protocol 2.0)
| ssh-hostkey: 
|   2048 cd:64:72:76:80:51:7b:a8:c7:fd:b2:66:fa:b6:98:0c (RSA)
|   256 74:e5:9a:5a:4c:16:90:ca:d8:f7:c7:78:e7:5a:86:81 (ECDSA)
|_  256 3c:e4:0b:b9:db:bf:01:8a:b7:9c:42:bc:cb:1e:41:6b (ED25519)
80/tcp open  http    Apache httpd 2.4.25 ((Debian))
|_http-title: Site doesn't have a title (text/html).
|_http-server-header: Apache/2.4.25 (Debian)
MAC Address: 08:00:27:DC:86:CE (Oracle VirtualBox virtual NIC)
Service Info: OSs: Unix, Linux; CPE: cpe:/o:linux:linux_kernel

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
# Nmap done at Sat Dec 16 22:26:40 2023 -- 1 IP address (1 host up) scanned in 7.55 seconds
```

Ahora vemos los servicios y las versiones que corren para cada puerto.

<figure><img src="https://1827363921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEGJvvgIusdsLKeoExX1C%2Fuploads%2FEEpg7B2063k4tsc23AGh%2F2.png?alt=media&#x26;token=169cef7e-b0b1-4f63-abae-b56c37a314c6" alt=""><figcaption></figcaption></figure>

Si hacemos un fuzzing de directorios observamos cositas un cgi-bin, hay que recordar que tipos de archivos asi cgi-bin o .sh, expuestos podrian dar pie a un ShellShock.

<figure><img src="https://1827363921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEGJvvgIusdsLKeoExX1C%2Fuploads%2FcD6LsbtEhjClTBfdUVBh%2F3.png?alt=media&#x26;token=37909a90-1c22-40a7-a9b8-6d9b370c0eb5" alt=""><figcaption></figcaption></figure>

Si lanzamos un curl ala direccion IP limpia obtenemos lo que esta señalado.

<figure><img src="https://1827363921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEGJvvgIusdsLKeoExX1C%2Fuploads%2FvedtzgTOGvVPmUp25Ti3%2F4.png?alt=media&#x26;token=1f7f225a-1ff2-4fe3-885c-688f77b3f964" alt=""><figcaption></figcaption></figure>

Ahora si lanzamos un curl a los directorios encontrados nos da un 200 OK.&#x20;

<figure><img src="https://1827363921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEGJvvgIusdsLKeoExX1C%2Fuploads%2FQzQTyJcGZn1U8MZTX0n0%2F5.png?alt=media&#x26;token=849b7af2-a536-4b64-900f-787fb49dc431" alt=""><figcaption></figcaption></figure>

Ahora vamos a probar el ShellShock y lo lanzamos incrustando el payload en el User-Agent, le lanzamos un whoami y observamos que nos responde.

Esto quiere decir que tenemos ejecucion remota de comandos ahora ganaremos acceso.

<figure><img src="https://1827363921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEGJvvgIusdsLKeoExX1C%2Fuploads%2FoYlFuWutPKWuI7FZf6WD%2F6.png?alt=media&#x26;token=781fc569-a49d-4dc1-9f87-1bb9c652bb84" alt=""><figcaption></figcaption></figure>

* Como promer punto hacemos lo mismo nos aprovechamos del User-Agent para poner nuestra carga y nos enviamos una revershell a nuestra direccion IP.
* Compo segundo punto nos ponemos en escucha con Netcat y observamos que recivimos la conexion.

<figure><img src="https://1827363921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEGJvvgIusdsLKeoExX1C%2Fuploads%2FePqlekZ8rtc0TdQB3tmg%2F7.png?alt=media&#x26;token=ad474527-b736-4e41-891c-db3136215f11" alt=""><figcaption></figcaption></figure>

* Si hacemos un ID observamos que estamos en el grupo pcap.
* Y si hacemos un ss -tan, tambien observamos que internamente el puerto 21 se esta compartiendo data NOTA hay que recordar que los datos aca viajan en texto plano , osea que si interceptamos datos que se estan enviando por aca los observaremos el texto plano.

<figure><img src="https://1827363921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEGJvvgIusdsLKeoExX1C%2Fuploads%2F5jij6dyM1yTj7kyF2Ahy%2F8.png?alt=media&#x26;token=8440a712-f354-4588-acd6-1434da94cc49" alt=""><figcaption></figcaption></figure>

Nos ponemos a la escucha con tcpdump usando -i para especificar la interfas de red -v para el verbose y -Z para ser especifico de lo que quiero interceptar -w para crear un archivo.

<figure><img src="https://1827363921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEGJvvgIusdsLKeoExX1C%2Fuploads%2FNONrCET2jy2ddNnl4qJP%2F9.png?alt=media&#x26;token=ecf0281c-687a-4b9b-82dc-78d11a665072" alt=""><figcaption></figcaption></figure>

Si le hechamos un ojo al capture.cap que creamos tenemos credenciales un user hades y una contraseña.

<figure><img src="https://1827363921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEGJvvgIusdsLKeoExX1C%2Fuploads%2FTvpvpO80IsoK0TiY1TZY%2F10.png?alt=media&#x26;token=79f39a3b-7c2a-462c-ad90-9acf8614783b" alt=""><figcaption></figcaption></figure>

Y hacemos un userPivoting pasamos de ser el usuario cerberus al usuario hades, vamos progresando.

<figure><img src="https://1827363921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEGJvvgIusdsLKeoExX1C%2Fuploads%2Fb8V8LTNVX1qzNOfDWkwh%2F12.png?alt=media&#x26;token=6bb1e9b6-e2de-4804-821c-88d19e67ac1a" alt=""><figcaption></figcaption></figure>

Encontre este archivo que me permitia editarlo que reside en la ruta /usr/lib/python2.7, lo editamos para que nos otorgue permisos SUID a la bash.

Este archivo esta asociado a una tarea cron de un archivo que esta en la ruta /opt. que no pude hacer captura.

<figure><img src="https://1827363921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEGJvvgIusdsLKeoExX1C%2Fuploads%2FcpL9MKRB6fD5ymvXVxli%2F13.png?alt=media&#x26;token=0376ae33-f8c8-4ba7-b650-117bb90451e9" alt=""><figcaption></figcaption></figure>

Despues de esperar unos tres minutos la tarea cron se ejecuta y nos da permiso SUID a nuestra bash.

<figure><img src="https://1827363921-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FEGJvvgIusdsLKeoExX1C%2Fuploads%2F5VS63aI3VEdaxHfdrCEn%2F14.png?alt=media&#x26;token=394c6a69-abe5-447c-86d8-dd482f816225" alt=""><figcaption></figcaption></figure>

Nos vamos a la raiz y nos traemos nuestra flag de root.&#x20;

Y bueno MAQUINA RESUELTA&#x20;
