> For the complete documentation index, see [llms.txt](https://hacking-3.gitbook.io/barre/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hacking-3.gitbook.io/barre/write-up/dockerlabs/medio/bashpariencias.md).

# Bashpariencias

## Maquina

<figure><img src="/files/qmcW455xW5g81woRLK2y" alt=""><figcaption></figcaption></figure>

## Reconocimiento

### Nmap

```bash
sudo nmap -p- --open -sSCV --min-rate 5000 -vvv -Pn 172.18.0.2 -oN nmap.txt
```

```
PORT     STATE SERVICE REASON         VERSION
80/tcp   open  http    syn-ack ttl 64 Apache httpd
| http-methods: 
|_  Supported Methods: POST OPTIONS HEAD GET
|_http-server-header: Apache
|_http-title: Leeme
8899/tcp open  ssh     syn-ack ttl 64 OpenSSH 6.6p1 Ubuntu 3ubuntu13 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   256 a3:b0:db:99:e4:c6:a5:b2:5d:2b:36:b6:3e:d0:15:00 (ECDSA)
| ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBG8ewQjjOoqPtzvXKk1TWfAl1qcSSWPxiXjhtIBNe4nsj15B8XEd/JeFWaJ95ncwxbja1cdarxlmqSLpLZuST5c=
|   256 8f:26:4e:8c:60:28:5c:14:03:b2:45:22:ae:e1:f9:24 (ED25519)
|_ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPUJcx6u0eWagjW1BdQxHCwTR1N2CsEUmSLYabG51/J8
MAC Address: 02:42:AC:12:00:02 (Unknown)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
```

### Gobuster

{% code overflow="wrap" %}

```bash
sudo gobuster dir -u 172.18.0.2 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt | tee gobuster.txt
```

{% endcode %}

```
===============================================================
Gobuster v3.6
by OJ Reeves (@TheColonial) & Christian Mehlmauer (@firefart)
===============================================================
[+] Url:                     http://172.18.0.2
[+] Method:                  GET
[+] Threads:                 10
[+] Wordlist:                /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt
[+] Negative Status codes:   404
[+] User Agent:              gobuster/3.6
[+] Timeout:                 10s
===============================================================
Starting gobuster in directory enumeration mode
===============================================================
/images               (Status: 301) [Size: 233] [--> http://172.18.0.2/images/]
/css                  (Status: 301) [Size: 230] [--> http://172.18.0.2/css/]
/server-status        (Status: 403) [Size: 199]
Progress: 220560 / 220561 (100.00%)
===============================================================
Finished
===============================================================
```

{% code overflow="wrap" %}

```bash
sudo gobuster dir -u 172.18.0.2 -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x php,html,js,txt,zip,rar,tar,gz,css,xml,json,rb,py,jpg,jpeg,png,gif,svg,ico,pdf,sql,log,ini,conf,config,backup,sh,bash | tee gobusterExt.txt
```

{% endcode %}

```
===============================================================
Gobuster v3.6
by OJ Reeves (@TheColonial) & Christian Mehlmauer (@firefart)
===============================================================
[+] Url:                     http://172.18.0.2
[+] Method:                  GET
[+] Threads:                 10
[+] Wordlist:                /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt
[+] Negative Status codes:   404
[+] User Agent:              gobuster/3.6
[+] Extensions:              log,ini,rar,gif,ico,zip,tar,py,jpg,sh,js,xml,sql,jpeg,bash,txt,json,rb,html,gz,conf,css,png,svg,backup,php,pdf,config
[+] Timeout:                 10s
===============================================================
Starting gobuster in directory enumeration mode
===============================================================
/.html                (Status: 403) [Size: 199]
/index.html           (Status: 200) [Size: 4655]
/images               (Status: 301) [Size: 233] [--> http://172.18.0.2/images/]
/css                  (Status: 301) [Size: 230] [--> http://172.18.0.2/css/]
/form.html            (Status: 200) [Size: 10232]
/app.html             (Status: 200) [Size: 7989]
/shell.php            (Status: 200) [Size: 1558]
/.html                (Status: 403) [Size: 199]
/server-status        (Status: 403) [Size: 199]
Progress: 6395256 / 6396269 (99.98%)
===============================================================
Finished
===============================================================
```

### Web

Una pagina de inicio que contiene un posible usuario de nombre `rosa` y un enlace a la maquina [BuscaLove](/barre/write-up/dockerlabs/facil/buscalove.md).

<figure><img src="/files/P02wIVymTsrjaexTX6k0" alt=""><figcaption></figcaption></figure>

Si buscamos entre los directorios de esta web veremos que en uno de ellos aparece `rosa` otra vez y si miramos el código veremos `usuario:contraseña` de `rosa`

<figure><img src="/files/uSmaysg9ejOSHTbWHemn" alt=""><figcaption></figcaption></figure>

## Acceso

Por lo que ahora podemos entrar por ssh

<figure><img src="/files/HSLkHFpUGU4uq0CI1QLt" alt=""><figcaption></figcaption></figure>

## Escalado de privilegios

Miramos los permisos de rosa

<figure><img src="/files/GxPE8DFJV5Urz1EAIpoQ" alt=""><figcaption><p><em>Nada que destacar en cuanto a permisos</em></p></figcaption></figure>

Miramos un poco por los directorios

<figure><img src="/files/Gsf4Zy3LaopioyWTsinw" alt=""><figcaption></figcaption></figure>

{% hint style="warning" %}
Archivo megasecret.txt, pero no tenemos permiso para verlo
{% endhint %}

{% hint style="info" %}
Usuarios Carlos y Juan
{% endhint %}

En el directorio - de rosa hay 2 archivos, backup\_rosa.zip e irresponsable.txt

<figure><img src="/files/iQZvtxcyPABRSDIEmP5j" alt=""><figcaption></figcaption></figure>

Si intentamos sacar el contenido del zip nos pide una contraseña que no sabemos

<figure><img src="/files/rtrbbwmx0VBbswFBLkRj" alt=""><figcaption></figcaption></figure>

Por lo que nos sacamos el zip a nuestro equipo para crakearlo

<figure><img src="/files/C2RCttMpY2aI67kTziai" alt=""><figcaption></figcaption></figure>

Procedemos al crakeo con [John The Ripper](/barre/apuntes/red-team/tools/john-the-reaper.md)

> Si no sabes como se crakea un zip podéis ver este video de 3 minutos [xerosec](https://www.youtube.com/watch?v=jrOA7p42dPc) o seguir leyendo esto.

1º Usamos `zip2john` para sara los hashes del `.zip` y los extraemos a una archivo de nombre `zip.hash` en este caso.

```bash
zip2john backup_rosa.zip > zip.hash
```

{% code title="zip.hash" overflow="wrap" %}

```
backup_rosa.zip/password.txt:$pkzip$1*2*2*0*19*d*6a3d5968*0*46*0*19*1b29*7100e91e2fa1c71610c9e952d0895dbc2448afa8aa50f4e4e3*$/pkzip$:password.txt:backup_rosa.zip::backup_rosa.zip
```

{% endcode %}

2º Usamos `John` indicándole el diccionario con `-w=` en este caso yo uso `rockyou`, y a continuación poneis el archivo generado anteriormente con `zip2john`

```bash
john -w=/usr/share/wordlists/rockyou.txt zip.hash
```

<figure><img src="/files/tHTXUZlzUC2jybrdT9uA" alt=""><figcaption></figcaption></figure>

Ahora usamos esta contraseña para abrir el zip y así sacar la contraseña de Juan

<figure><img src="/files/MBcdumvC26eqDet96RVC" alt=""><figcaption></figcaption></figure>

Nos cambiamos de usuario a juan

### Juan

Miramos sus permisos

<figure><img src="/files/ZMBktAyL4BXz4FIIaouz" alt=""><figcaption></figcaption></figure>

Podemos combinar estos 2 permisos para ver que tiene el usuario carlos

<figure><img src="/files/RKG61T81TYQElojyvN9R" alt=""><figcaption></figcaption></figure>

Sacamos su contraseña :tada: ahora nos cambiamos de usuario a carlos

### Carlos

Miramos sus permisos

<figure><img src="/files/Unhx113Ve1Pas5af3qgg" alt=""><figcaption></figcaption></figure>

Este comando nos permite agregar una línea a un archivo, se me ocurre agregar un usuario a `/etc/passwd`

<figure><img src="/files/K4wYgAGYhu3Gshi5YZtq" alt=""><figcaption></figcaption></figure>

Cambiándonos a este usuario que acabamos de crear ya seremos `root`

<figure><img src="/files/3vnMnFE5DR9RO2mJU9OH" alt=""><figcaption></figcaption></figure>

## Bonus

Descubramos que contiene el archivo `megasecret.txt`

<figure><img src="/files/AWR0iFEN3RGKB8Q1FRtr" alt=""><figcaption></figcaption></figure>

## Conclusión&#x20;

Maquina muy entretenida, no es muy complicada pero es bastante completa, destacando en su escalado de privilegios.
