Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
stegano — Aplicación de esteganografía multiplataforma con GUI, CLI y WebService, admite WEBP y AES. | Kitploit
Herramientas/GitLabGitLab/bztsrc/stegano
Herramientas de Cifrado/DescifradoEsteganografíaCriptografíaPrivacidad
GitLabbztsrc/stegano

stegano

Aplicación de esteganografía multiplataforma con GUI, CLI y WebService, admite WEBP y AES.

Ver Repositorio
hace 3 añosAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Esteganografía por bzt

Demo en línea

En pocas palabras, la esteganografía es el arte de ocultar mensajes en otro medio a plena vista sin que la gente se dé cuenta. Esta implementación lee imágenes en formatos web populares (WEBP, PNG, GIF, JPEG), oculta el texto (opcionalmente cifrado) en ellas y guarda el resultado como una imagen WEBP. Luego puedes subir esta nueva imagen a cualquier sitio web público, foro, Insta, chat de FB, adjuntar a correos electrónicos, lo que sea. Nadie se dará cuenta, nadie sabrá que hay un mensaje en la imagen a menos que se lo digas explícitamente (y si se usó cifrado, también necesitarán la contraseña correcta, por supuesto).

Uso

  1. selecciona una imagen de entrada (ya sea por una URL o desde un archivo local)

  2. opcionalmente ingresa una contraseña (si deseas cifrado adicional de grado militar)

3/a. para comprobar el mensaje en una imagen, presiona Cargar. Si no hay mensaje o tu contraseña es incorrecta, podrías ver basura.

3/b. escribe tu mensaje y presiona Guardar. Se guardará una nueva imagen (con el mensaje oculto dentro); usa ese archivo como desees.

Como servicio web

Ve al sitio web.

Como aplicación con ventana

Descarga para Linux (GTK) y Windows (GDI). Son ejecutables portátiles, no requieren instalación y no dejan ningún rastro en tu máquina. La GUI se ve y funciona exactamente como el servicio web.

screenshot

Como herramienta de línea de comandos

Descarga para Linux y Windows (ambos solo libc). Luego escribe

root@kitploit:~
./stegano-cli <archivo de imagen>
./stegano-cli -p <contraseña> <archivo de imagen>

para imprimir el mensaje en una imagen a stdout, y

root@kitploit:~
./stegano-cli <archivo de imagen> <mensaje>
./stegano-cli -p <contraseña> <archivo de imagen> <mensaje>

para codificar un mensaje en un nuevo archivo de imagen .webp (esto podría sobrescribir el archivo original). Al igual que con el servicio web, la contraseña es opcional. A diferencia de la versión GUI anterior, la versión de línea de comandos no tiene absolutamente ninguna dependencia, Simplemente Funciona(tm) en todas partes.

Compilación

Simplemente ejecuta make en el directorio src, es suckless. Solo necesita emcc de emscripten y gcc para compilar (la versión GUI de Linux también necesita pkg-config y GTK, GDK, pango, cairo, etc., el típico bloatware de GTK).

  • make wasm si solo quieres compilar la versión WebAssembly (el html de plantilla necesario está en el directorio public).
  • make cli si solo quieres compilar la versión de línea de comandos (totalmente libre de dependencias, debería funcionar en cualquier sistema POSIX).
  • make gui si solo quieres compilar la versión de Interfaz Gráfica de Usuario (para Windows GDI, de lo contrario depende de GTK).

¿Cómo funciona?

Si has especificado una contraseña, primero se cifra tu texto. Luego la imagen se descomprime en un búfer de píxeles, donde los bits de tu mensaje (cifrado) se almacenan en el brillo de los canales de color. Esto resulta en patrones de onda muy sutiles en la imagen, que son totalmente imperceptibles para el ojo humano (y a falta de comparación con la imagen original, también totalmente imperceptibles para las computadoras).

Al cargar, la imagen se descomprime nuevamente en un búfer de píxeles, y estas ondas de brillo en los canales de color se convierten en un fragmento de bits concatenado. Si se proporciona una contraseña, entonces el fragmento de bits se descifra. El mensaje final se verifica para determinar su validez UTF-8, y si es válido, se muestra. (Esta verificación UTF-8 es necesaria porque nadie puede saber si realmente hay un mensaje en la imagen, o si la contraseña proporcionada fue correcta o no).

Detalles técnicos

El mensaje se almacena como un flujo multibyte UTF-8 terminado en cero, en el que solo se permiten las secuencias de control \t (tabulación horizontal), \r (retorno de carro) y \n (nueva línea). Al cargar de nuevo, la versión GUI de Windows convierte los caracteres \n independientes en secuencias \r\n CRLF. Al guardar, la versión CLI acepta secuencias de dos bytes \+t, \+r, \+n, y las convierte en los correspondientes caracteres de control de un solo byte.

Para el cifrado, el mensaje se rellena con ceros para que su longitud sea múltiplo de 16, y luego se calcula primero sha256(salt+sha256(password)), lo que da 32 bytes binarios, de los cuales se utilizan 16 bytes consecutivos como iv de AES-256-CBC a partir del valor del 4º byte módulo 16. La clave AES-256-CBC se inicializa entonces como sha256(sha256(salt+sha256(password))+salt) (usar sha de sha hace extremadamente difícil, si no imposible, utilizar un ataque de arcoíris contra la contraseña). La sal es Libre Steganography Standard.

Para los píxeles, todas las imágenes se convierten en búferes de píxeles RGBA empaquetados de 32 bits. Cada uno de los 2 bits menos significativos de los cuatro canales se utiliza para almacenar 8 bits del mensaje (lo que da 1 byte de mensaje por 1 píxel portador). Solo se utilizan píxeles con un canal alfa mayor que 3 para almacenar, y todas las versiones informan el número de esos píxeles como "Capacidad N bytes."

root@kitploit:~
1 byte de mensaje bits (7 MSB, 0 LSB): 76543210
1 píxel portador (alfa al final, rojo primer byte): rrrrrr76 gggggg32 bbbbbb54 aaaaaa10 (a!=0)

(Se necesita este truco no transparente porque el códec WEBP no es tan sin pérdidas como afirma. Con alfa mayor que 3, se garantiza que el píxel no es transparente incluso si los bits codificados son cero).

Licencia

Esta herramienta de esteganografía está licenciada bajo los términos de GPLv3+ (o cualquier versión posterior de esa licencia). Está enlazada estáticamente con stb_image (que es de dominio público) y libwebp (que está bajo licencia BSD-3-Clause). Las partes de hash SHA y codificador/decodificador AES están incluidas (escritas por un servidor), no se necesita ninguna biblioteca criptográfica de terceros.

Saludos, bzt

Descargar herramienta