sábado, 2 de enero de 2016

Alternate Data Streams para ocultar información

Los flujos alternativos de datos, es un mecanismo utilizado desde 1993, por microsoft  en sistema de archivos ntfs, que permite almacenar metainformacion o metadatos. Los ADS fueron creados para soportar los forks o bifuracion de los sistemas Macintosh, guardar información de permisos y el sistema de archivos extended file attributes.   

Este mecanismo es también utilizado con una técnica de esteganografia, pues permite a un usuario ocultar información, de tal manera que no se perciba la existencia del archivo. Esto se logra empotrando un fichero 2 sobre otro fichero 1, denominado portador. Es decir, crearemos un archivo, que contendrá cualquier tipo de información, que sera visible, el cual sera el portador o donde se almacene el archivo con la información que ocultaremos. 

Para realizar este proceso, no se necesita tener algún programa instalado, todo puede realizarse mediante la linea de comandos o shell de windows, de la siguiente forma: 

echo Mensaje visible > portador.txt 
echo: Es un comando que permite imprimir un texto en la shell.
Mensaje visible: Es el mensaje que tendrá el portador y que podrá ser visible o perceptible.
> portador.txt : Implica que todo lo que imprima el comando echo, se almacene en el archivo portador.txt.

Imagen 1: Comando para crear el archivo portador

Imagen 2: Archivo portador creado.

Posterior a la creación del archivo portador, se crea el ADS, que sera el archivo oculto, donde almacenaremos la información que no queremos sea publica. Para ello lanzamos el siguiente comando:
echo mensaje oculto > portador.txt:oculto.txt

portador.txt:oculto.txt: Implica crear un ADS, donde el portador sera el archivo tras los dos puntos, el ADS se especificado seguido de los dos puntos.

Imagen 3: ADS creado.

Al crear el ADS, puede notarse, que el archivo no esta presente, y poco puede mostrarte, al activar la opción mostrar archivos ocultos. Para mostrar la información del archivo portador, hay que escribir el comando type nombredelarchivo. Sin embargo, para visualizar el mensaje oculto, no es valido como puede apreciarse en la imagen 4.

 Imagen 4: Visualizando mensaje del portador.

Para visualizar el ADS, es necesario utilizar el comando more < nombreportador:archivoADS.

Imagen 5: Visualizando mensaje oculto ADS.

Si se quiere modificar el contenido del ADS, se puede optar por el comando notepad nombreportador:archivoADS

Imagen 6: Modificando ADS.

Para detectar un ADS, puede utilizarse la herramienta LADS, que permite buscar ADS almacenados por el software y almacenados también por los usuarios. En la imagen 7, laas a detectado 2 ADS, el primero esta asociado a metadatos del mismo lads, el segundo, es el archivo oculto que almacenamos en el portador.

Imagen 7: Detectando ADS.

Para eliminar un ADS, debe realizarse mediante los siguientes pasos:
  1. Cambiar el nombre del archivo portador: ren nombreportador nuevonombre
  2. Crear un archivo, con el antiguo nombre del portador: echo mensaje > nombreportador
  3. Eliminar ambos archivos nombreportador y nuevonombre.


Imagen 8: Eliminación de ADS.

Esta técnica de esteganografia puede llegar a ser eficiente si se combina con mensajes cifrados, ya que, aunque la información esta oculta, un usuario puede llegar a encontrarla con las herramientas adecuadas. Así que si quieres ocultar información, esta es una opción, pero nada segura, si no la combinas con criptografia.

Saludos.
Lexer Pars.    







No hay comentarios:

Publicar un comentario