Bandit level 9

Nivel 9 de Bandit

Esta es la traducción del enunciado para acceder al nivel 10 de Bandit.

Enunciado Bandit Level 9 → Level 10:

La contraseña para el siguiente nivel se almacena en el archivo data.txt en una de las pocas cadenas legibles por humanos, precedida de varios caracteres «=».

Datos para la conexión (el password lo conseguimos cuando resolvimos el nivel 8):

  • Host: bandit.labs.overthewire.org
  • Port: 2220
  • User: bandit9
  • Password: EN632PlfYiZbn3PhVK3XOGSlNInNE00t

Realizamos la conexión desde la terminal.

ssh [email protected] -p 2220

Lo primero que vamos a comprobar es mediante el comando grep si encontramos algunas líneas en data.txt que tengan dos signos de igual juntos «==».

grep "==" data.txt

Este comando nos devuelve un mensaje que nos indica «grep: data.txt: binary file matches«, o lo que es lo mismo, que el fichero data.txt contiene caracteres no imprimibles o que no son texto plano.

Lo que haremos para evitar este problema es hacer uso del comando strings, que nos permite extraer secuencias de caracteres imprimibles (cadenas de texto) desde un archivo que contiene caracteres imprimibles y no imprimibles.

strings data.txt | grep "=="
Resolviendo level 9 de Bandit con el comando strings y grep

Contraseña rescatada: G7w8LIi6J3kTb8A7j9LgrywtEUlyyp6s

Podemos filtrar la última línea resultado haciendo uso del comando tail -1.

strings data.txt | grep "==" | tail -1

Ahora con el comando cut le indicamos que solo queremos que muestre la segunda parte de la línea. Le indicamos de separador el espacio en blanco con (-d ‘ ‘) y para que muestre la segunda parte de la cadena con (-f 2).

strings data.txt | grep "==" | tail -1 | cut -d ' ' -f 2
Resolviendo level 9 de Bandit con el comando strings y grep para mostrar solo la clave

El recorte de la segunda parte podríamos haberlo hecho también con el comando awk.

strings data.txt | grep "==" | tail -1 | awk '{print $2}'

Con esta contraseña ya podemos acceder al nivel 10 de Bandit.

Ahora haciendo uso del comando time vamos a comparar los tiempos realizándolo de las dos formas que hemos visto.

Comparando los tiempos al resolver el level 9 de Bandit con diferentes comandos

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *