Bandit Nivel 6 al 11
Avanzando en el Hacking Ético (Nivel 5 al 11)
¡Excelente trabajo! Has superado los primeros desafíos de Bandit y estás listo para profundizar tus habilidades. Los siguientes niveles te introducirán a conceptos más avanzados de Linux, como permisos de archivos, búsqueda avanzada y manipulación de datos. ¡Vamos a ello!
Nivel 5 → Nivel 6: Encontrando el Archivo Correcto
Objetivo del Nivel: La contraseña para el siguiente nivel está almacenada en algún lugar dentro del directorio inhere. Sin embargo, hay tres criterios específicos para encontrarla:
- Es legible por el usuario
bandit7. - Es legible por el grupo
bandit6. - Tiene un tamaño exacto de 33 bytes.
Pistas:
- El comando
findes tu mejor amigo para buscar archivos con criterios específicos. - Recuerda las opciones de
find:-user,-group,-size. - Asegúrate de estar en el directorio
bandit5oinherepara empezar la búsqueda.
Pasos a Seguir:
- Conéctate como bandit5.
- El problema te dice que el archivo está en el directorio
inhere, así que cambia a él:Bashcd inhere - Ahora, usa el comando
findcon los criterios especificados. Necesitamos buscar archivos (-type f) con el usuariobandit7, el grupobandit6y un tamaño de 33 bytes. La opción para el tamaño enfindes-size, y si especificas33c, significa exactamente 33 bytes.Bashfind . -type f -user bandit7 -group bandit6 -size 33c(El.al inicio le dice afindque busque en el directorio actual y sus subdirectorios). - Una vez que
findte devuelva el nombre del archivo (será algo como./maybehere07/.file2), usacatpara leer su contenido:Bashcat ./maybehere07/.file2 # Reemplaza con el nombre de archivo real que encuentres - ¡Ahí tienes la contraseña para bandit6!
Nivel 6 → Nivel 7: Descubriendo Archivos Escondidos
Objetivo del Nivel: La contraseña para el siguiente nivel está en algún lugar del servidor y se ha movido desde el nivel anterior. Es un archivo que:
- Pertenece al usuario
bandit7. - Pertenece al grupo
bandit6. - Tiene un tamaño de 33 bytes.
Pistas:
- Estás buscando un archivo con tres características exactas.
- Podrías necesitar buscar desde la raíz (
/) si no sabes dónde está. Recuerda que buscar en la raíz puede llevar tiempo y generar errores de «Permiso denegado», los cuales puedes ignorar.
Pasos a Seguir:
- Conéctate como bandit6.
- Esta vez, el archivo no está necesariamente en un subdirectorio predefinido como
inhere. Podría estar en cualquier lugar. Por lo tanto, buscarás desde la raíz (/). Como vas a buscar en muchos directorios donde no tienes permiso, puedes redirigir los errores a/dev/nullpara que no te molesten.Bashfind / -type f -user bandit7 -group bandit6 -size 33c 2>/dev/null(El2>/dev/nulldescarta los mensajes de error). findte devolverá la ruta completa del archivo.- Usa
catpara leer el contenido de ese archivo y obtener la contraseña para bandit7.
Nivel 7 → Nivel 8: Búsqueda de Datos Únicos
Objetivo del Nivel: La contraseña para el siguiente nivel está en el archivo data.txt, junto a la palabra millionth.
Pistas:
- El comando
grepes ideal para buscar texto dentro de archivos. greppuede usarse con el nombre del archivo.
Pasos a Seguir:
- Conéctate como bandit7.
- Verás el archivo
data.txten tu directorio actual. - Usa
greppara buscar la palabramillionthdentro dedata.txt.grepmostrará la línea completa donde encuentre la palabra.Bashgrep millionth data.txt - La salida de este comando será la contraseña para bandit8.
Nivel 8 → Nivel 9: Ordenando y Encontrando Datos
Objetivo del Nivel: La contraseña para el siguiente nivel está en el archivo data.txt, y es la única línea que aparece una sola vez.
Pistas:
- Necesitas ordenar el contenido del archivo.
- Necesitas contar las ocurrencias de cada línea y encontrar la que solo ocurre una vez.
- Comandos útiles:
sort,uniq.
Pasos a Seguir:
- Conéctate como bandit8.
- El archivo
data.txttiene muchas líneas repetidas. - Primero, ordena las líneas del archivo usando
sort. Esto agrupará las líneas idénticas.Bashsort data.txt - Luego, pasa la salida de
sortauniq. El comandouniqtiene una opción-u(de «unique») que muestra solo las líneas que no se repiten. Puedes encadenar los comandos con una tubería (|).Bashsort data.txt | uniq -u - La línea que aparezca será la contraseña para bandit9.
Nivel 9 → Nivel 10: Datos Humanos
Objetivo del Nivel: La contraseña para el siguiente nivel está en el archivo data.txt. Una de las líneas del archivo contiene la cadena de texto ======.
Pistas:
grepnuevamente es tu amigo.- La cadena
======es un patrón literal.
Pasos a Seguir:
- Conéctate como bandit9.
- Usa
greppara buscar la cadena literal======dentro dedata.txt.Bashgrep "======" data.txt(Es buena práctica usar comillas para cadenas que pueden contener caracteres especiales, aunque en este caso no es estrictamente necesario, es un buen hábito). - La línea que
grepte devuelva es la contraseña para bandit10.
Nivel 10 → Nivel 11: Base64 Decodificación
Objetivo del Nivel: La contraseña para el siguiente nivel está en el archivo data.txt y está codificada en Base64.
Pistas:
- Necesitas un comando para decodificar Base64.
- El comando
base64con la opción-d(de «decode») es lo que buscas.
Pasos a Seguir:
- Conéctate como bandit10.
- El archivo
data.txtcontiene una cadena larga que se ve como texto codificado. - Usa
catpara pasar el contenido dedata.txtal comandobase64 -dusando una tubería (|).Bashcat data.txt | base64 -d - La salida de este comando será la contraseña para bandit11.
¡Felicidades! Has navegado con éxito a través de desafíos que requieren una comprensión más profunda de la manipulación de archivos y datos en Linux. ¡Estás progresando muy bien en tu aventura de ciberseguridad con Bandit!