Esta es una walktrough para Venus
Reconocimiento inicial
El primer paso será conectarnos a la máquina con los credenciales que nos da HackMyVM, una vez conectados podemos empezar con el reconocimiento
hacker@venus:~$ ls
mission.txt readme.txt
Cuando acabemos de leer readme.txt tendremos clara la estructura de esta misión, así que vamos a por ello!!
Misiones
0x01
mission.txt
################
# MISSION 0x01 #
################
## EN ##
User sophia has saved her password in a hidden file in this folder. Find it and log in as sophia.
## ES ##
La usuaria sophia ha guardado su contraseña en un fichero oculto en esta carpeta.Encuentralo y logueate como sophia.
Una vez claro el objetivo, vamos a por él. Empezaremos listando los contenidos del directorio
hacker@venus:~$ ls -la
total 36
drwxr-x--- 2 root hacker 4096 Apr 5 06:28 .
drwxr-xr-x 55 root root 4096 Apr 5 06:27 ..
-rw-r----- 1 root hacker 31 Apr 5 06:28 ...
-rw-r--r-- 1 hacker hacker 220 Apr 23 2023 .bash_logout
-rw-r--r-- 1 hacker hacker 3526 Apr 23 2023 .bashrc
-rw-r----- 1 root hacker 16 Apr 5 06:27 .myhiddenpazz
-rw-r--r-- 1 hacker hacker 807 Apr 23 2023 .profile
-rw-r----- 1 root hacker 287 Apr 5 06:27 mission.txt
-rw-r----- 1 root hacker 2542 Apr 5 06:27 readme.txt
hacker@venus:~$ cat .myhiddenpazz
<redacted>
Una vez armados con la contraseña vamos a intentar iniciar sesión con sophia
hacker@venus:~$ su sophia
Password:
sophia@venus:/pwned/hacker$ cd
sophia@venus:~$ ls
flagz.txt mission.txt
0x02
################
# MISSION 0x02 #
################
## EN ##
The user angela has saved her password in a file but she does not remember where ... she only remembers that the file was called whereismypazz.txt
## ES ##
La usuaria angela ha guardado su password en un fichero pero no recuerda donde... solo recuerda que el fichero se llamaba whereismypazz.txt
Parece que se trata de un fichero perdido, vamos a encontrarlo
sophia@venus:~$ find / -name whereismypazz.txt 2>/dev/null
/<redacted>/whereismypazz.txt
Ya tenemos la ubicación, vamos a ver el contenido
sophia@venus:~$ su angela
Password:
angela@venus:/pwned/sophia$ cd
angela@venus:~$ ls
findme.txt flagz.txt mission.txt
0x03
################
# MISSION 0x03 #
################
## EN ##
The password of the user emma is in line 4069 of the file findme.txt
## ES ##
La password de la usuaria emma esta en la linea 4069 del fichero findme.txt
Vamos a extraer la linea del fichero
angela@venus:~$ head -4069 findme.txt | tail -1
<redacted>
Y cambiamos al usuario emma
angela@venus:~$ su emma
Password:
emma@venus:/pwned/angela$ cd
emma@venus:~$ ls
- flagz.txt mission.txt
0x04
################
# MISSION 0x04 #
################
## EN ##
User mia has left her password in the file -.
## ES ##
La usuaria mia ha dejado su password en el fichero -.
Esta misión es bastante simple, solo consiste en dar la ruta del archivo ya que si no especificamos una intentará imprimir el contenido de - (stdin)
emma@venus:~$ cat ./-
<redacted>
0x05
################
# MISSION 0x05 #
################
## EN ##
It seems that the user camila has left her password inside a folder called hereiam
## ES ##
Parece que la usuaria camila ha dejado su password dentro de una carpeta llamada hereiam
Vamos a buscar esa carpeta con find y ver su contenido
mia@venus:~$ find / -name hereiam -type d -exec ls -la {} \; 2>/dev/null
drwxr-xr-x 2 root root 4096 Apr 5 06:28 .
drwxr-xr-x 1 root root 4096 Apr 5 06:28 ..
-rw-r--r-- 1 root root 16 Apr 5 06:28 .here
Vamos a hacer cat del fichero .here a ver si contiene la contraseña
mia@venus:~$ cat /opt/hereiam/.here
<redacted>
mia@venus:~$ su camila
Password:
camila@venus:/pwned/mia$ cd
camila@venus:~$ ls
flagz.txt mission.txt muack
0x06
################
# MISSION 0x06 #
################
## EN ##
The user luna has left her password in a file inside the muack folder.
## ES ##
La usuaria luna ha dejado su password en algun fichero dentro de la carpeta muack.
Vamos a ver el contenido de la carpeta muack
camila@venus:~$ ls muack/
1 112 126 14 153 167 180 194 207 220 234 248 261 275 289 301 315 329 342 356 37 383 397 41 423 437
...
463 477 490 503 517 530 544 63 77 90
camila@venus:~$ find muack/ -type f
muack/111/111/muack
Al ver que la carpeta estaba a su vez llena de carpetas, usamos find para encontrar un archivo, ahora vamos a ver que contiene
camila@venus:~$ cat muack/111/111/muack
<redacted>
camila@venus:~$ su luna
Password:
luna@venus:/pwned/camila$ cd
luna@venus:~$ ls
flagz.txt mission.txt
0x07
################
# MISSION 0x07 #
################
## EN ##
The user eleanor has left her password in a file that occupies 6969 bytes.
## ES ##
La usuaria eleanor ha dejado su password en un fichero que ocupa 6969 bytes.
Nuevamente para encontrar el fichero vamos a usar find, esta vez con la opción -size y <peso>c para buscar en bytes
luna@venus:~$ find / -size 6969c 2>/dev/null
/<redacted>/moon.txt
Vamos a iniciar sesión como eleanor
luna@venus:~$ cat /usr/share/moon.txt
<redacted>
luna@venus:~$ su eleanor
Password:
eleanor@venus:/pwned/luna$ cd
eleanor@venus:~$ ls
flagz.txt mission.txt
0x08
################
# MISSION 0x08 #
################
## EN ##
The user victoria has left her password in a file in which the owner is the user violin.
## ES ##
La usuaria victoria ha dejado su password en un fichero en el cual el propietario es el usuario violin.
Otra vez vamos a hacer uso del comando find, esta vez usando el argumento -user para encontrar el fichero que tiene como propietario el usuario violin
eleanor@venus:~$ find / -user violin 2>/dev/null
/usr/<redacted>/yo
Y con esto nos vamos a la siguiente mision
eleanor@venus:~$ cat /usr/<redacted>/yo
<redacted>
eleanor@venus:~$ su victoria
Password:
victoria@venus:/pwned/eleanor$ cd
victoria@venus:~$ ls
flagz.txt mission.txt passw0rd.zip
0x09
################
# MISSION 0x09 #
################
## EN ##
The user isla has left her password in a zip file.
## ES ##
La usuaria isla ha dejado su password en un fichero zip.
Vamos a descomprimir el fichero usando unzip, pero para no molestar al resto de usuarios, vamos a usar el directorio /tmp, para extraer en un directorio concreto con unzip es necesario usar la opción -d
victoria@venus:~$ unzip passw0rd.zip -d /tmp/
Archive: passw0rd.zip
replace /tmp/pwned/victoria/passw0rd.txt? [y]es, [n]o, [A]ll, [N]one, [r]ename: y
extracting: /tmp/pwned/victoria/passw0rd.txt
Obtenemos la contraseña del usuario isla y seguimos en nuestra aventura
victoria@venus:~$ cat /tmp/pwned/victoria/passw0rd.txt
D3XTob0FUImsoBb
victoria@venus:~$ su isla
Password:
isla@venus:/pwned/victoria$ cd
isla@venus:~$ ls
flagz.txt mission.txt passy
0x10
################
# MISSION 0x10 #
################
## EN ##
The password of the user violet is in the line that begins with a9HFX (these 5 characters are not part of her password.).
## ES ##
El password de la usuaria violet esta en la linea que empieza por a9HFX (sin ser estos 5 caracteres parte de su password.).