Esteganografía es la técnica de ocultar datos en archivos contenedores sin que sean alcanzables a simple vista.
Esta técnica es muy interesante en seguridad ya que un simple flujo de datos de imágenes (por ejemplo) puede llevar por debajo un paso de mensajes ilegal y dañino. Aunque no es nada nuevo, ya se hacía en la IIGM y fue usado por espías durante siglos, es un tipo de flujo de datos muy peligroso.
Para realizar esta ocultación se usan distintas estrategias, principalmente transformadas matemáticas, extracción de bits menos significantes...
La herramienta más interesante y popular es Steghide, un programa para Linux y Windows, que permite la ocultación de datos en contenedores (imágenes, audios...) y su posterior descompresión del mensaje.
Saber más...
INSTALACIÓN DE STEGHIDE
Windows: Descarga oficial
Linux:
En los repositorios oficiales:
Debian, Kali, Ubuntu: apt-get install steghide
Archivos RPM y binarios: Descarga oficial
En mi caso, lo instalo en un Ubuntu 17:
Tenemos el texto de la esquina superior izquierda y un paisaje que ocupa exactamente 38,706 bytes. Ejecutaremos el comando:
$ steghide embed -cf paisaje.jpg -ef mensaje_oculto.txt
Se nos pide insertar un salvoconducto (contraseña) para la hora de recuperar el mensaje, en esta prueba sin password.
La imagen se modifica:
Ahora, esta imágen contiene el mensaje en el interior de la imágen. Esta tendrá la misma calidad que la original, sin notarse apenas la ocultación del texto.
RECUPERANDO EL MENSAJE
Tras eliminar el archivo ".txt", ejecutemos el comando:
$ steghide extract -sf paisaje.jpg
Anotamos el salvoconducto, en caso de haberlo introducido antes, y se genera el mensaje_oculto.txt inicial.
PRUEBAS BAJO OTROS CONTENEDORES
Los archivos contenedores más interesantes son en audio .wav y .au.
El gran fracaso de este mecanismo es el no poder usarlo con contenedores PDF, video o codigos fuente.
LLEVANDO LA PRUEBA AL EXTREMO
Analizando el binario de la imágen es imposible (al menos para mi) interpretar si lleva o no mensaje oculto.
Es importante conocer que no es buena práctica variar en gran medida el tamaño de la imágen, si no será obvio que estamos ocultando algo en la imágen.
OTRAS HERRAMIENTAS
Las más interesante son DeepSound, Shiny o rSteg (multiplataforma ya que es Java). Aquí una larga lista explicatoria
DEFENDIENDONOS EN CONTRA DE LA ESTEGANOGRAFIA
Es una tarea compleja, simplemente existe la técnica de monitorizar los contenedores e intentar descifrar si existe un contenido anómalo.
Esta técnica es muy interesante en seguridad ya que un simple flujo de datos de imágenes (por ejemplo) puede llevar por debajo un paso de mensajes ilegal y dañino. Aunque no es nada nuevo, ya se hacía en la IIGM y fue usado por espías durante siglos, es un tipo de flujo de datos muy peligroso.
Para realizar esta ocultación se usan distintas estrategias, principalmente transformadas matemáticas, extracción de bits menos significantes...
La herramienta más interesante y popular es Steghide, un programa para Linux y Windows, que permite la ocultación de datos en contenedores (imágenes, audios...) y su posterior descompresión del mensaje.
Saber más...
INSTALACIÓN DE STEGHIDE
Windows: Descarga oficial
Linux:
En los repositorios oficiales:
Debian, Kali, Ubuntu: apt-get install steghide
Archivos RPM y binarios: Descarga oficial
En mi caso, lo instalo en un Ubuntu 17:
OCULTANDO MENSAJE EN DIFERENTES CONTENEDORES
En un primer lugar tendremos un mensaje a insertar en una imagen de un paisaje. Para ello tendremos un archivo ".txt" con un mensaje a ocultar y un contenedor (una imagen de un paisaje.
Tenemos el texto de la esquina superior izquierda y un paisaje que ocupa exactamente 38,706 bytes. Ejecutaremos el comando:
$ steghide embed -cf paisaje.jpg -ef mensaje_oculto.txt
Se nos pide insertar un salvoconducto (contraseña) para la hora de recuperar el mensaje, en esta prueba sin password.
La imagen se modifica:
Ahora, esta imágen contiene el mensaje en el interior de la imágen. Esta tendrá la misma calidad que la original, sin notarse apenas la ocultación del texto.
RECUPERANDO EL MENSAJE
Tras eliminar el archivo ".txt", ejecutemos el comando:
$ steghide extract -sf paisaje.jpg
Anotamos el salvoconducto, en caso de haberlo introducido antes, y se genera el mensaje_oculto.txt inicial.
PRUEBAS BAJO OTROS CONTENEDORES
Los archivos contenedores más interesantes son en audio .wav y .au.
El gran fracaso de este mecanismo es el no poder usarlo con contenedores PDF, video o codigos fuente.
LLEVANDO LA PRUEBA AL EXTREMO
Analizando el binario de la imágen es imposible (al menos para mi) interpretar si lleva o no mensaje oculto.
Es importante conocer que no es buena práctica variar en gran medida el tamaño de la imágen, si no será obvio que estamos ocultando algo en la imágen.
OTRAS HERRAMIENTAS
Las más interesante son DeepSound, Shiny o rSteg (multiplataforma ya que es Java). Aquí una larga lista explicatoria
DEFENDIENDONOS EN CONTRA DE LA ESTEGANOGRAFIA
Es una tarea compleja, simplemente existe la técnica de monitorizar los contenedores e intentar descifrar si existe un contenido anómalo.
Comentarios
Publicar un comentario
Espero tu comentario! :)