STEGBRUTE Fuerza Bruta Esteganografía contra steghide
STEGBRUTE Fuerza Bruta Esteganografía contra steghide

STEGBRUTE: Fuerza Bruta de Esteganografía útil para CTF

StegBrute es una herramienta de fuerza bruta para esteganografía escrita en Rust que utiliza también hilos para lograr una ejecución más rápida.

Aprende con EsGeeks

La esteganografía es el arte y la ciencia de ocultar datos en medios como imágenes, audio o video.

El mundo de la esteganografía es vasto y complejo, y se han creado muchas herramientas para ayudar a ocultar datos. Con esta herramienta, te mostraremos cómo utilizar una herramienta de fuerza bruta de esteganografía para descubrir datos ocultos.

Captura de StegBrute
Captura de StegBrute

Dependencias

Stegbrute no puede funcionar sin steghide!, para instalar steghide ejecuta:

apt-get install -y steghide

Si no estás en una distribución Debian puedes descargarlo desde la web de steghide

Instalación

stegbrute se puede instalar de diferentes maneras:

Cargo

a través de cargo (gestor de paquetes de Rust)

si no tienes cargo puedes instalarlo desde apt o descargando Rust lang

cargo install stegbrute

esto funcionará para todas las plataformas

Distribuciones Debian

si tienes Ubuntu/Kali u otras distribuciones basadas en Debian puedes instalar el archivo .deb que encuentras en la sección de releases, luego descomprimir el archivo y ejecutarlo

wget https://github.com/R4yGM/stegbrute/releases/download/0.1.1/stegbrute_0.1.1_amd64.deb &&
dpkg --install stegbrute_0.1.1_amd64.deb

Docker

si no tienes docker instalado puedes seguir su guía

primero tienes que pull la imagen docker (sólo 4.93 MB) del registro docker, puedes verla aquí, si no quieres pull la imagen también puedes clonar el repositorio y luego construir la imagen desde el Dockerfile

docker pull r4yan/stegbrute:latest

también puedes decidir pull diferentes imágenes sustituyendo ‘latest’ por una versión de stegbrute, ejemplo:

docker pull r4yan/stegbrute:0.1.0

si no quieres pull la imagen puedes descargar/copiar el Dockerfile de stegbrute que puedes encontrar aquí y luego construir la imagen desde el Dockerfile

entonces si quieres lanzar el contenedor tienes que crear primero un volumen para compartir tus archivos al contenedor

docker volume create --name stegbrute_data

entonces mueve o copia los archivos que quieres usar para stegbrute dentro de la carpeta del volumen que normalmente está aquí

/var/lib/docker/volumes/stegbrute_data/_data 

Simplemente haciendo:

cp wordlist.txt /var/lib/docker/volumes/stegbrute_data/_data && cp file.jpg /var/lib/docker/volumes/stegbrute_data/_data

y ahora ejecuta stegbrute

docker run -v stegbrute_data:/stegbrute_data -it --rm --name stegbrute r4yan/stegbrute:latest <options>

sustituye  <options> por las opciones/argumentos que quieras dar a stegbrute, una vez que lo hayas hecho todo no tendrás que volver a pull/construir la imagen sólo si hay nuevas actualizaciones o características.

Guarda siempre tus resultados dentro del volumen y no en el contenedor porque entonces los resultados se borrarán! puedes guardarlos añadiendo esta opción:

-x /$VOLUME_NAME/results.txt
--extract-file /$VOLUME_NAME/results.txt

Si añades esto y haces todo correctamente al final de cada ataque encontrará los resultados dentro de la carpeta

/var/lib/docker/volumes/stegbrute_data/_data

esto funcionará para todas las plataformas

Ejecutable

También puede descargar el programa ya compilado y luego ejecutarlo, ejemplo:

wget https://github.com/R4yGM/stegbrute/releases/download/0.1.1/stegbrute && chmod +x stegbrute
mv stegbrute /usr/local/bin/

Uso

stegbrute es muy sencillo de usar y te da muchas opciones, puedes ver la ayuda del programa con la opción -h o --help

============================================================
     ____  _             ____             _
    / ___|| |_ ___  __ _| __ ) _ __ _   _| |_ ___
    \___ \| __/ _ \/ _` |  _ \| '__| | | | __/ _ \
     ___) | ||  __/ (_| | |_) | |  | |_| | ||  __/
    |____/ \__\___|\__, |____/|_|   \__,_|\__\___|
                   |___/

StegBrute v0.1.1 - By R4yan
https://github.com/R4yGM/StegBrute

StegBrute 0.1.1
R4yan <yessou.rayan@gmail.com>
Steganography bruteforce tool

USAGE:
    stegbrute [FLAGS] [OPTIONS] --file-name <file-name> --wordlist <wordlist>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information
    -v, --verbose    shows every try the program does

OPTIONS:
    -x, --extract-file <extract-file>    the file name path where you want to write the results [default:
                                         stegbrute_results.txt]
    -f, --file-name <file-name>          the file name path you want to crack
    -t, --threads <threads>              number of threads to bruteforce the file [default: 3]
    -w, --wordlist <wordlist>            path of the wordlist

Por ejemplo:

Opciones:

  • -x o --extract-file con <nombre_de_archivo> guardará los resultados de los datos extraídos en el nombre_de_archivo, si no se especifica ningún archivo stegbrute guardará tus resultados dentro del archivo ./stegbrute_results.txt
  • -t o --threads con <número_de_hilos> lanzará un número de programas que forzarán el archivo simultáneamente, incrementar el número de hilos no siempre significa que se ejecutará más rápido, todo depende de cuántos hilos pueda manejar tu máquina
  • -f o --file_name con <nombre_del_archivo> el nombre del archivo que stegbrute va a atacar, debe ser uno de estos formatos soportados : JPEG, BMP, WAV o AU
  • -w o --wordlist con <wordlist> el archivo donde stegbrute va a tomar las contraseñas línea por línea y luego empezar a probarlas con el archivo que quieres crackear, si no tieness uno puedes instalar por ejemplo rockyou.txt

Referencia

stegbrute benchmark en diferentes listas de palabras utilizando 3 hilos

Lista de contraseñasTiempo
100841.12ms
10008.57s
1000077.79s
100000775.93s

Mi Carro Close (×)

Tu carrito está vacío
Ver tienda