Esteganografía en ficheros comprimidos (Windows)

En esta entrada vamos a aprender cómo podemos ocultar información dentro de un fichero comprimido, pudiendo así ocultar uno o varios archivos que se encuentren en su interior.
Obviamente podemos ocultar archivos en un fichero comprimido mediante la técnica EOF que vimos en la anterior entrada, pero es conveniente siempre en todos los campos conocer varias formas de hacer las cosas.

Vamos a empezar hablando de los ficheros .zip. Se puede manipular un fichero .zip modificando su codificación con un editor hexadecimal, modificando el archivo tras el Text String “PK” penúltimo, donde aparecen los nombres de los archivos que hay dentro, sobreescribiendo en la parte hexadecimal los nombres con “0” (cero) para que no aparezcan como visibles los archivos dentro del comprimido al abrirlo con el explorador de archivos.

1
Comenzamos teniendo un archivo comprimido con estos tres ficheros
2
Aquí está la parte del archivo que tenemos que modificar
3
Cambiamos a cero el valor hexadecimal del nombre del archivo a ocultar

Sin embargo, esta forma de ocultación es muy poco útil, dado que descomprimiendo el fichero obtendríamos los archivos visibles y archivos de tipo indeterminado que corresponden a los que queremos ocultar, puesto que lo que se extrae es la codificación del archivo en sí, no los datos del índice final del comprimido.

4
Observamos que al extraer el archivo comprimido, el fichero que queríamos ocultar se ve con un tipo indeterminado

Además, si abrimos el comprimido con Winrar nos aparece aquel que hayamos ocultado solo que con un tipo indeterminado como hemos dicho antes. Pero esta pega tiene dos soluciones:

  1. Cifrar el archivo a la hora de realizar la compresión para así proteger los archivos (aquí ya hablamos de Cifrado y Criptografía, no de Esteganografía). Al cifrarlo con la compresión de 7zip no se ocultan los nombres de los archivos, sin embargo sí el contenido, pero sin embargo al comprimirlo con Winrar y especificar la opción “Cifrar nombres de archivo” cuando seteamos la contraseña, evitamos que se pueda acceder a los nombres de archivos además del contenido.
  2. Comprimirlo en formato .rar, ya que su estructura es distinta y es posible ocultar totalmente el archivo incluso extrayendo el contenido. Para ello, con un editor hexadecimal, modificamos en este caso la cabecera de los archivos. En un fichero .rar hay dos cabeceras, la del archivo en sí (de la que hablamos en la entrada anterior), que tiene un valor hexadecimal de 0x73 y se encuentra en el byte número 10 del archivo, y la de cada archivo, con un valor de 0x74 que se encuentra 30 bytes antes del nombre de cada archivo. En este caso, lo que hay que hacer es cambiar el valor del byte de la cabecera del archivo (el 0x74) al valor nulo (0x00), y de este modo al abrirlo con Winrar no nos detecta el archivo que hemos ocultado puesto que la cabecera no está y Winrar no lo detecta como ningún tipo de archivo, y lo mismo ocurre al extraerlo, no se extrae puesto que Winrar no lo detecta.
5
Comenzamos con el mismo contenido del comprimido pero esta vez con la extensión .rar
6
Modificamos el byte de cabecera del archivo a ocultar a cero, y observamos que al abrir el comprimido con Winrar no nos detecta el archivo oculto
7
Tampoco nos extrae el archivo oculto al extraer con Winrar

Si por el contrario lo extraemos con 7zip obtendremos solo los archivos que mantienen la cabecera y no hemos querido ocultar, con la desventaja de que al extraerlo nos tira un error porque “detecta información adicional”, el/los archivos que queremos ocultar. También ocurre que si el archivo que queremos ocultar y del cual borramos el byte de cabecera no está al final del archivo en la codificación, 7zip no extraerá más que los archivos que hay hasta ese “código sin identificar” del archivo que queremos ocultar, por tanto no obteniendo todos los archivos que se esperan se sospecharía de que algo estuviera escondido.

8
Al extraer con 7zip vemos que solo aparecen los archivos que había antes del fichero que queríamos ocultar, en este caso solo fichero de texto, y además nos aparece el error de que hay información sin determinar al final del archivo

Por tanto lo ideal para llevar a cabo esta técnica, en caso de que queramos hacerlo lo más indetectable posible, es hacer que el/los archivos que queramos ocultar estén al final del comprimido (si está ordenado alfabéticamente, la solución puede ser cambiar sus nombres por “zzz” o algo por el estilo). Al igual que en la entrada anterior, hay que tener en cuenta el tamaño del fichero comprimido y de los archivos a ocultar. Es decir, si en nuestro comprimido queremos ocultar un vídeo de 200MB y en ese comprimido tenemos además un fichero de texto de 2KB y un archivo de audio de 4 MB, va a resultar raro que el comprimido ocupe por ejemplo 199MB si alguien que abre el archivo o lo extrae observa que los archivos que tiene ocupan 4MB y 2KB. Por tanto, si queremos ocultar un vídeo así, sería conveniente ocultarlo en un comprimido con películas o archivos de gran tamaño para así hacerlo lo más indetectable posible.

De nuevo cualquier duda estamos aquí para resolverla.

Un saludo

AlDr0id

Anuncios

Un comentario en “Esteganografía en ficheros comprimidos (Windows)

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s