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.).