TryHackMe Simple-CTF


Nmap
Primeramente empezamos escaneando los puertos abiertos usando Nmap.
# Nmap 7.93 scan initiated Tue Sep 26 17:46:24 2023 as: nmap -sCV -p21,80,2222 -oN target.txt 10.10.56.252
Nmap scan report for 10.10.56.252
Host is up (0.062s latency).
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 3.0.3
| ftp-anon: Anonymous FTP login allowed (FTP code 230)
|_Can't get directory listing: TIMEOUT
| ftp-syst:
| STAT:
| FTP server status:
| Connected to ::ffff:10.8.104.25
| Logged in as ftp
| TYPE: ASCII
| No session bandwidth limit
| Session timeout in seconds is 300
| Control connection is plain text
| Data connections will be plain text
| At session startup, client count was 2
| vsFTPd 3.0.3 - secure, fast, stable
|_End of status
80/tcp open http Apache httpd 2.4.18 ((Ubuntu))
|_http-server-header: Apache/2.4.18 (Ubuntu)
|_http-title: Apache2 Ubuntu Default Page: It works
| http-robots.txt: 2 disallowed entries
|_/ /openemr-5_0_1_3
2222/tcp open ssh OpenSSH 7.2p2 Ubuntu 4ubuntu2.8 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
| 2048 294269149ecad917988c27723acda923 (RSA)
| 256 9bd165075108006198de95ed3ae3811c (ECDSA)
|_ 256 12651b61cf4de575fef4e8d46e102af6 (ED25519)
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 Tue Sep 26 17:47:02 2023 -- 1 IP address (1 host up) scanned in 38.18 seconds
Ahora observamos los servicios y versiones que corren para cada puerto que en este caso son tres.
WFUZZ

Ahora empezamos haciendo fuzzing al puerto 80 utilizando WFUZZ y observamos dos directorios uno robots.txt y simple.
En robots.txt no hay mucho un nombre de usuario llamado mike. Es informacion y hay que tenerla en cuenta.

El directorio /simple nos lleva aca.
Whatweb

Si usamos whatweb para ver que tecnologias corren, observamos un CMS osea un gestor de contenido llamado Made-Simple de version 2.2.8

Haciendo uso de Searchsploit buscamos haber si encontramos algo, observamos que encontramos un SQL Injection un script en python.
Te dejo el enlace al script, se ejecuta con python2. https://www.exploit-db.com/exploits/46635

Observando el codigo fuente de la pagina encontramos otro usuario llamado mitch que usando el script de python damos que este usuario usamos para conectarnos por ssh.
Dato, siempre hay que ser curioso y si en la pagina principal no observas nada, el codigo fuente este tu mejor opcion, filtra en el buscador por [ID,USER,USERS,Posted,] aveces puedes encontrar cosas que en la web principal no se observa.
SSH

Ya con dos usuarios y un pass en mano, nos conectamos por ssh usando el usuario mitch y la contraseña secret.

Ahora ya dentro y con una TTY totalmente funcional vamos por nuestra primera flag user.txt.
Ahora nos queda buscar la de root.txt
Escalada de privilegios

Buscando la forma de escalar privilegios observamos que mitch puede ejecutar vim sin proporcionar contraseña.
Si nos vamos a https://gtfobins.github.io/ y buscamos vim hay una forma de ser root que es lo que hago ejecutar vim invocando una bin/sh.
Ya dentro de vim, si pongo id observamos que soy root ahora solo queda ir por nuestra flag de root.txt.
Y es lo que hacemos en el paso dos ir por la ultima flag y maquina resuelta
Última actualización