2 minutes
Bandit 22
OverTheWire
Bandit 22
Bienvenido al nivel 22 de Bandit en OverTheWire
En este nivel nos indican que investiguemos una tarea cron en el directorio /etc/cron.d/, nos ayudará a obtener la contraseña del siguiente nivel.
Herramientas:
cron, crontab, crontab(5) (use “man 5 crontab” to access this)
Lo primero es investigar la tarea:
cat /etc/cron.d/cronjob_bandit23
#@reboot bandit23 /usr/bin/cronjob_bandit23.sh &> /dev/null
#* * * * * bandit23 /usr/bin/cronjob_bandit23.sh &> /dev/null
Vemos que se ejecuta un script guardado en /usr/bin/cronjob_bandit23.sh.
Haremos un cat de ese archivo para ver que ejecuta:
cat /usr/bin/cronjob_bandit23.sh
#!/bin/bash
#myname=$(whoami)
#mytarget=$(echo I am user $myname | md5sum | cut -d ' ' -f 1)
#echo "Copying passwordfile /etc/bandit_pass/$myname to /tmp/$mytarget"
#cat /etc/bandit_pass/$myname > /tmp/$mytarget
Veremos que este script guarda en una variable el nombre del usuario que consulta, liego lanza un echo con una cadena, la convierte en hash formato MD5 y crea un archivo temporal con ese hash.
Por ultimo guarda la contraseña del usuario que esta ejecutando el script en ese archivo temporal.
Si este cronjob lo lanza Bandit23 vamos a buscar ese directorio. Primero sacamos el nombre del archivo temporal.
echo I am user bandit23 | md5sum | cut -d ' ' -f 1
Nos devuelve:
8ca319486bfbbc3663ea0fbe81326349
Que equivale al nombre del archivo temporal con la contraseña del usuario (bandit23)
cat /tmp/8ca319486bfbbc3663ea0fbe81326349
Nos dara la contraseña del usuario bandit23.
¡Vamos al siguiente nivel con esta contraseña!
Enlaces de Interes