Introducción
Cualquiera que esté en el campo de la seguridad debe conocer Windows Alternate Data Streams, también conocido como ADS. Aunque no se publicita mucho, la falta de este atributo poco conocido del sistema de archivos NTFS de Windows puede afectar la forma en que resuelve un problema en el futuro.
Los ADS se introdujeron en el sistema de archivos NTFS de Windows a partir de Windows NT 3.1. Esta ‘característica’ se implementó para permitir la compatibilidad con el sistema de archivos jerárquico (HFS) de Macintosh. En resumen, el sistema de archivos de Macintosh almacena sus datos en dos partes, la bifurcación de recursos y la bifurcación de datos. La bifurcación de datos es donde los datos están realmente contenidos y la bifurcación de recursos se usa para decirle al sistema operativo cómo usar la porción de datos. Windows hace algo similar a través de extensiones como .bat, .exe, .txt, .html. Estas extensiones le dicen al sistema operativo cómo usar los datos particulares que se encuentran en los archivos.
Para que Windows fuera compatible con el sistema de archivos de Macintosh, introdujeron flujos de datos alternativos. Este flujo oculto se usa como se usó la bifurcación de recursos; para decirle al sistema cómo usar los datos contenidos en el archivo.
Aunque ADS se creó para ser compatible con el mundo Mac, no se usa únicamente para ese propósito. Muchas aplicaciones usan ADS para almacenar atributos de un archivo en ellas. Por ejemplo, si crea un documento de texto, hace clic con el botón derecho y accede a sus propiedades, verá una página de resumen. Esta información resumida se adjunta al expediente a través de ADS. Le mostraré más sobre eso más adelante y las aplicaciones para ver esta información.
En resumen, piense en ADS como archivos ocultos que se adjuntan a los visibles. La razón principal por la que son tan peligrosos es que no son muy conocidos, generalmente están ocultos para el usuario y hay pocos programas de seguridad que puedan reconocerlos.
Programas para ver ADS
Antes de continuar, quiero mencionar algunos, no todos, los programas que se pueden usar para ver ADS. Esto es así, mientras lee este tutorial y sigue algunos ejemplos, puede ver los archivos ADS que está creando.
Los programas son los siguientes:
muchachos – http://www.heysoft.de/Frames/f_sw_la_en.htm
ADSSpy
Cómo hacer un anuncio
Desde un símbolo del sistema, el siguiente es un ejemplo de cómo hacer un ADS:
C:prueba>echo «ADS» > prueba.txt:oculto.txt
Se acaba de crear un nuevo ADS llamado hidden.txt y adjunto al archivo test.txt. El archivo ADS se muestra después de : , y : debe usarse al agregar un ADS.
Si hace un DIR en ese directorio, todo lo que ve es el archivo normal.
Por otro lado, si ejecuta LADS, puede ver los ADS, hidden.txt 9, adjunto al archivo test.txt
C:test>lads LADS - Freeware version 3.21 (C) Copyright 1998-2003 Frank Heyne Software (http://www.heysoft.de) This program lists files with alternate data streams (ADS) Use LADS on your own risk! Scanning directory C:test size ADS in file ---------- --------------------------------- 8 C:testtest.txt:hidden.txt 8 bytes in 1 ADS listed
Si desea ver ADS hidden.txt o agregarle información, simplemente ejecute el bloc de notas para abrir el archivo.
Por ejemplo:
C:prueba> bloc de notas prueba.txt:oculto.txt
Esto abrirá el archivo en el bloc de notas y le permitirá editarlo y guardarlo.
También puede usar el bloc de notas para crear un archivo ADS. Sólo tipo:
C:prueba>bloc de notas otro.txt:anuncios.txt
El Bloc de notas se iniciará y dirá que este archivo no existe y que le gustaría crearlo. Diría que sí, y luego ingresaría la información y la guardaría. Este método acaba de crear un nuevo ADS llamado ads.txt.
Los archivos ADS no tienen que adjuntarse a un archivo, pero también pueden adjuntarse a un directorio. Esto causa un problema cuando crea un ADS contra la raíz de un disco duro, ya que hace que sea imposible eliminar el ADS a menos que lo vuelva a formatear. Si alguien sabe de un programa que pueda solucionar esto, por favor hágamelo saber.
Aquí hay un ejemplo de cómo hacer un ADS contra un directorio:
C:prueba> prueba de eco>: oculto.txt
Este comando ahora ha adjuntado un ADS al directorio mismo. Ejecute LADS para ver los ADS adjuntos al directorio.
¿Qué tiene de dañino esto?
¿Qué pasaría si te dijera que ADS también se puede usar con archivos ejecutables? Así es, los archivos ADS que son ejecutables se pueden adjuntar a cualquier archivo al igual que los archivos .txt adjuntos, y al igual que los archivos de texto, se ocultarían de la mayoría del software.
Aquí hay un ejemplo:
C:prueba> escriba c:windowsnotepad.exe > ads.txt:hidden.exe
Ahora ha creado un archivo ADS llamado hidden.exe y lo ha adjuntado al archivo de texto ads.txt. Una vez más, si Dir el directorio solo verá ads.txt, y no hidden.exe. Ejecute LADS y verá los ADS.
Hay una advertencia sobre el lanzamiento de archivos ejecutables que son archivos ADS. Siempre debe usar el comando INICIO para iniciar el ejecutable ADS y siempre debe usar la ruta completa del archivo. Estos son algunos ejemplos de comandos que funcionan y comandos que no funcionan.
Primero haré que mi ADS sea ejecutable:
C:prueba> escriba c:windowsnotepad.exe > ads.txt:np.exe
Comandos que no inician el ejecutable np.exe ADS:
C:prueba>anuncios.txt:np.exe
La sintaxis del nombre de archivo, nombre de directorio o etiqueta de volumen es incorrecta.
C:prueba>c:pruebaads.txt:np.exe
La sintaxis de la etiqueta del volumen, el nombre del directorio o el nombre del archivo es incorrecta.:
C:prueba>iniciar anuncios.txt:np.exe
Acceso denegado.
El comando que lanzará el ejecutable:
C:prueba>iniciar c:pruebaads.txt:np.exe
Como puede ver, debe usar la ruta completa del archivo ejecutable ADS.
Cómo eliminar archivos ADS
Los archivos ADS no son particularmente difíciles de eliminar, pero pueden causar problemas. Para eliminar un ADS adjunto a un archivo, simplemente elimine el archivo. Digamos, por ejemplo, que tiene un archivo llamado number.txt y había un ADS adjunto llamado hidden.txt. Desea deshacerse del archivo hidden.txt, pero mantenga la información en number.txt, por lo que simplemente no puede eliminar number.txt.
Para hacer esto, haría algo como lo siguiente:
C:prueba>ren número.txt temp.txt
C:prueba>tipo temp.txt > número.txt
C:prueba>del temp.txt
Para eliminar archivos ADS que están adjuntos a un directorio, debe eliminar el directorio. Esto puede causar un gran problema si el ADS está conectado a la raíz de un disco duro. Dado que no puede eliminar los ADS de esta manera a menos que vuelva a formatear la unidad, puede hacerlo para deshacerse de la información no deseada en el archivo ADS.
C:prueba>eco vacío> relleno.txt
C:prueba>escribir relleno.txt > :badads.txt
Actualización – 11/11/04
Desde que escribí este tutorial, se han lanzado algunos programas de malware para infectar su máquina usando archivos Alternate Data Stream. Debido a esto, se han realizado mejoras en el software disponible para eliminar este tipo de programas de su computadora. Un programa que buscará archivos ADS en su computadora y luego proporcionará una lista que puede eliminar es ADSSPY. Puede encontrar un enlace a ese programa a continuación:
Enlace de descarga de ADSSPY
Otros usos de los anuncios
Al principio mencioné que hay otros usos para los archivos ADS. Ciertos archivos en Windows tienen una pestaña de resumen en sus propiedades. Un ejemplo de esto son los documentos .txt. Si crea un nuevo documento .txt, hace clic derecho sobre él y selecciona resumen, puede completar cierta información.
Esta información se guarda como archivos ADS adjuntos al documento. Por ejemplo, tenemos un archivo llamado readme.txt. Si voy a la sección de resumen e ingreso mi nombre en el campo Título y presiono OK, esa información se guardará como un ANUNCIO.
Puedes ver esto de la siguiente manera:
C:prueba>muchachos
LADS – Versión gratuita 3.21
Directorio de escaneo C:test
tamaño ANUNCIOS en archivo
———- ———————————
11 C:prueba:oculto.txt
120 C:pruebareadme.txt:?Información resumida
0 C:pruebaléame.txt:{4c8cc155-6c1e-11d1-8e41-00c04fb9386d}
131 bytes en 3 ADS enumerados
Resumen
Como puede ver, los ADS definitivamente se pueden usar para mucho más de lo que se negoció cuando Microsoft los presentó. Tienen usos legítimos, pero definitivamente pueden usarse para intenciones más oscuras.
En resumen, estas son las razones por las que los ADS pueden considerarse problemáticos:
– Hay pocos programas que detecten ADS.
– Quitar ADS puede ser difícil.
– Explorer y Dir al determinar el espacio libre no calculan el espacio utilizado por ADS.
– Puede ocultar un ejecutable como ADS.