the_open_door
café
ESEN
← Volver al índice

Data hidden in images (strings/steganography)

La esteganografía esconde información dentro de otro fichero, y en CTFs una imagen suele ocultar una contraseña, una clave o una pista. Antes de recurrir a herramientas especializadas conviene el reflejo más barato: strings, que extrae las secuencias de texto imprimible de un binario. Muchos retos simplemente concatenan texto al final del fichero de imagen, que sigue siendo válido porque los visores dejan de leer al llegar al marcador de fin:

strings PassPass.jpg | tail
# ...
# 4c4f34645f4d795f426f7373

El texto recuperado casi nunca es la contraseña final: suele venir codificado (base64, hexadecimal, decimal, ROT13) para no cantar a simple vista. Hay que identificar el esquema y decodificar en cadena; por ejemplo un decimal → hex → texto o un simple xxd -r -p:

echo -n "4c4f34645f4d795f426f7373" | xxd -r -p
# LO4d_My_Boss

Si strings no basta, el siguiente escalón son herramientas dedicadas: exiftool (metadatos EXIF), binwalk (ficheros incrustados), steghide extract (datos ocultos con contraseña) o zsteg (LSB en PNG). El orden lógico es de menor a mayor esfuerzo: strings → exiftool → binwalk → steghide.

Requisitos. Acceso al fichero de imagen y, a menudo, una pista contextual (un mensaje que mencione la imagen, un nombre como PassPass.jpg) que confirme que ahí hay algo escondido.

Defensa. En un contexto real, la esteganografía es más un canal de exfiltración que un fallo del servidor: vigilar ficheros adjuntos anómalos y no confiar en "seguridad por oscuridad" para guardar secretos. Suele alimentar un reúso de credenciales o un acceso posterior.

Herramientasstringsexiftool

Máquinas donde se aplica