AD. Walkthrough: Bandit Level 30 to Level 31
Objetivo del Nivel
En este nivel, debemos acceder a un repositorio Git alojado en un servidor SSH interno y encontrar la contraseña que nos permitirá avanzar al siguiente nivel. La clave estará oculta en el repositorio, por lo que necesitamos examinarlo en detalle.
Pasos para Resolver el Nivel
1. Acceder al servidor Bandit30
Conéctate al servidor usando SSH:
ssh bandit30@bandit.labs.overthewire.org -p 2220
Introduce la contraseña obtenida en el nivel anterior.
2. Crear un directorio temporal y clonar el repositorio Git
Para evitar problemas de permisos, primero creamos un directorio en /tmp
y nos movemos a él:
mkdir -p /tmp/bandit30_repo && cd /tmp/bandit30_repo
Ahora clonamos el repositorio usando Git:
git clone ssh://bandit30-git@localhost:2220/home/bandit30-git/repo
Cuando se solicite la contraseña, ingresa la misma que usaste para conectarte como bandit30
.
3. Explorar el contenido del repositorio
Después de clonar el repositorio, accedemos a la carpeta recién creada:
cd repo
Listamos los archivos disponibles:
ls
Observamos que hay un archivo README.md
. Lo abrimos para ver su contenido:
cat README.md
El archivo parece estar vacío o no contiene la contraseña directamente. Necesitamos buscar en el historial de Git.
4. Examinar los objetos perdidos en el repositorio
Dado que no encontramos la contraseña en README.md
, inspeccionamos los objetos perdidos en el repositorio con:
git fsck --lost-found
Si esto no muestra nada útil, verificamos los commits previos con:
git reflog
Esto nos mostrará un historial de acciones recientes. Si no encontramos nada, podemos buscar en el contenido del repositorio utilizando:
git grep -i "pass" $(git rev-list --all)
Si este comando no devuelve resultados, intentamos buscar en los archivos internos de Git:
grep -Ri "password" .git
5. Buscar etiquetas en el repositorio
Otra forma de encontrar información oculta es verificar si hay etiquetas en el repositorio:
git tag
Si hay una etiqueta llamada secret
, podemos inspeccionarla con:
git show secret
Esto revelará la contraseña:
fb5S2xb7bRyFmAvQYQGEqsbhVyJqhnDy
Conclusión
Al completar este nivel, aprendimos cómo inspeccionar el historial y las etiquetas en un repositorio Git para recuperar información oculta. Ahora podemos conectarnos al siguiente nivel usando:
ssh bandit31@bandit.labs.overthewire.org -p 2220
Última actualización