Utilizar Flujos Alternativos De Datos (ADS) Para Ocultar Archivos

En un Sistema de Archivos NTFS un archivo se divide en “atributos” y uno de esos atributos es $DATA o denominado simplemente atributo de dato. Esta es la parte del archivo donde se colocan los datos. Si se tiene un archivo de texto que dice “Este es mi texto”, entonces si se visualiza en el atributo de dato este contendrá un flujo de dato que lee “Este es mi texto”. Sin embargo este es un flujo de dato normal, algunas veces denominado flujo primario de dato, pero de manera más precisa se denomina flujo sin nombrar del dato. Esto debido a que este flujo del dato no tiene un nombre. El cual es referido como

$DATA:””

El nombre del flujo aparecerá entre las comillas. Ya que este es un flujo sin nombrar de dato, no existe nada allí.

Conocido como se ve un flujo alternativo de dato, se puede pensar en términos de alternantes. Conociendo que el lugar donde normalmente se almacena el dato es el flujo sin nombrar de dato, y si el flujo tiene un nombre, este es alternativo. De tal manera, si se tiene un archivo con un ADS de nombre “SegundoFlujo”, el nombre completo es $DATA:”SegundoFlujo”.

Los archivos ADS tienen la habilidad de ser añadidos a archivos existentes sin afectar su tamaño o funcionalidad, los archivos ADS no son visibles por el explorador de Windows o el comando “dir” a menos que se utilice la opción “/R”.

Para el primer ejemplo se ocultará un archivo de texto dentro de otro archivo de texto. Se procede a crear un archivo de texto, para luego listar el directorio. Notar el tamaño del archivo.

C:\> echo Este es un Archivo de Texto > ejemplo.txt

Se visualiza el contenido del archivo utilizando el comando “type”.

C:\> type ejemplo.txt

Se procede a crear el ADS, para luego listar nuevamente el directorio.

C:\> echo Este es un Texto Oculto > ejemplo.txt:secreto.txt

Notar el tamaño invariable del archivo de nombre “ejemplo.txt”.

Se visualiza nuevamente el archivo de nombre ejemplo.txt, para luego tratar de visualizar el archivo ADS.

Dado que el comando “type” no interpreta adecuadamente el operador de dos puntos “:”, se utilizará la aplicación Notepad en el Sistema Windows 7 para visualizar el ejemplo desarrollado.


C:\> notepad ejemplo.txt:secreto.txt

Aparte del escenario en el cual es factible ocultar un archivo de texto o similar, resultará más atractivo un escenario donde sea factible ocultar un archivo ejecutable, sea este una herramienta, malware o cualquier programa útil para nuestros propósitos.

Para el siguiente ejemplo se ocultará el programa fgdump, el cual es una herramientas con diversas opciones de uso, una de estas opciones es la capacidad de realizar un volcado de los hashes de las contraseñas desde un Sistema Windows.

Crear un archivo de texto para ocultar el archivo.


C:\> echo Este es un Archivo de Texto > ejemplo2.txt

Se coloca o incluye el archivo ejecutable de nombre “fgdump.exe”.

C:\> type fgdump.exe > ejemplo2.txt:fgdump.exe

Para ejecutar el archivo ejecutable en Windows 7 se tienen dos opciones, en primera instancia utilizando un enlace simbólico y la segunda opción es utilizando el comando “wmic”. Para el presente ejemplo se utilizará la primera opción.

C:\> mklink fg.exe C:\Users\usuariow7\Downloads\ejemplo2.txt:fgdump.exe

Una vez creado el enlace simbólico se procede con su ejecución.

C:\> fg.exe

La ejecución de “fgdump” generada diversos archivos, entre los cuales se visualiza el archivo conteniendo los hash de las contraseñas cifradas del Sistema Windows 7.

C:\> type 127.0.0.1.pwdump

Fuentes:

http://blogs.technet.com/b/askcore/archive/2013/03/24/alternate-data-str…
http://www.irongeek.com/i.php?page=security/altds
http://www.darknessgate.com/security-tutorials/date-hiding/ntfs-alternat…
http://foofus.net/goons/fizzgig/fgdump/
http://vlaurie.com/computers2/Articles/alternate-data-streams.htm

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s