Alternate Data Streams en Windows Vista I
Alternate Data Streams en Windows Vista II
En el anterior artículo realizamos pruebas de ADS en Windows Vista y como respuesta deducimos que Windows Vista todavía tiene soporte para forks en su sistema de archivos NTFS. La prueba más fehaciente es la inclusión del parámetro /R en su comando DIR, el cual listará secuencias alternativas de datos en un fichero pasado como argumento.
El soporte, en este caso y bajo este sistema operativo, es limitado en funciones y mantenido a diversos programas locales como por ejemplo el bloc de notas o la aplicación Paint. Este tipo de soporte, como vimos en el primer artículo, puede cambiar según la política interna de Microsoft con respecto a los forks. La explicación sobre este soporte se puede consultar en el siguiente boletín.
En las pruebas realizadas con ejecutables, nos encontramos con que el comando start, (En primera instancia), ya no soporta forks bajo el sistema operativo Windows Vista, debido a que el explorador de Windows, junto con un filtro llamado Fast I/O, deniegan la ejecución. En su lugar, añaden el parámetro /R al comando DIR para buscar secuencias alternativas.
Esto dejaria a los creadores de Malware en una posición extraña, al no poder usar este método de infección en posibles usuarios que utilicen Windows Vista.
Y digo dejaria, porque Windows Vista, al tener soporte su sistema de archivos a forks, éstos, si son lanzados de determinada manera, se ejecutan sin mayores problemas.
El mayor problema ahora, y según lo que he podido averiguar, reside en el Scripting y en sus motores de ejecución.
Lenguajes como Visual Basic Script, Perl o Python soportan la ejecución de scripts, incluso si están dentro de una secuencia alternativa.
Para ejecutar las pruebas he utilizado un script para cada uno de los motores.
Script en Python
import os #Importamos el módulo OS
ruta = ‘C:\Windows\system32\calc.exe’ #Path de la aplicación
os.system(ruta) #Ejecución de la aplicacón
Script en Perl
system(«calc.exe»);
Script en VBS
msgbox(«https://windowstips.wordpress.com«)
Estos scripts, los he introducido en un fichero llamado p0c.txt. En la siguiente imagen se refleja este acto.
Imagen 1.- Secuencias alternativas en un fichero
Para la primera ejecución utilizaré el motor de ejecución de scripts que trae Windows Vista. Este motor de scripts tiene un parámetro por el cual podremos indicarle con qué motor vamos a lanzar el script.
Imagen 2.- Ejecución de ADS a través motor de Scripting
En la segunda ejecución utilizaré el motor de ejecución de scripts de Python para lanzar un sencillo script que abra la calculadora de Windows.
Imagen 3.- Ejecución de ADS a través del motor de Python
En la tercera y última ejecución, utilizaremos el motor de ejecución de scripts de Perl para lanzar otro sencillo script que abra la calculadora de Windows.
Imagen 4.- Ejecución de ADS a través del motor de Perl
Como se puede comprobar, la ventana de propagación de malware a través de esta técnica todavía está vigente en Windows Vista, con lo que tendremos que seguir protegiéndonos de la misma manera con la que nos protegíamos cuando teníamos Windows 2K/XP/2K3.
Saludetes!
Referencias