Windows File System Vulnerabilities

Alternate Data Streams

Alternate Data Streams (ADS) es un atributo de archivo NTFS (New Technology File System) y fue diseñado para proporcionar compatibilidad con MacOS HFS (Hierarchical File System).

Cualquier archivo creado en una unidad formateada NTFS tendrá dos diferentes forks/streams:

  • Data stream (Flujo de datos): flujo predeterminado que contiene los datos del archivo (el contenido del archivo).

  • Resource stream (Flujo de recursos): normalmente contiene los metadatos del archivo.

Los atacantes pueden utilizar ADS para ocultar códigos maliciosos o ejecutables en archivos legítimos para evadir la detección.

Esto se puede hacer almacenando el código malicioso o los ejecutables en el flujo de recursos de atributos de archivo (metadatos) de un archivo legítimo.

Esta técnica se utiliza generalmente para evadir antivirus básicos basados en firmas y herramientas de escaneo estático.

Demo: Alternate Data Streams

# Las pruebas se realizaron en una maquina virtual con Win7

# VM Win7
# Crear un archivo .txt y en el contenido del archivo puede agregar
# "Hello World"
notepad test.txt

# El contenido del archivo es "Data stream"
# clic derecho al archivo
# > Propiedades > Detalles, contiene los metadatos "Resource stream"

# Tambien se puede ocultar un archivo dentro de otro
notepad test.txt:secret.txt
# Entonces el archivo secret.txt esta dentro del archivo test.txt
# Si agregamos algun contenido al archivo secret.txt no lo vera en el archivo
# test.txt
# Para abrir nuevamente el archivo se debe de utilizar ":"

# Para ocultar un payload puede ejecutar el siguiente comando
type payload.exe > windowslog.txt:winpeas.exe

# Para ejecutar el payload, puede ejecutar el siguiente comando
start windowslog.txt:winpeas.exe
# En caso de recibir error puede hacer uso de windows upadte
# Por lo cual debera de crear un enlace simbolico
cd C:\Windows\System32
mklink wupdate.exe <Path Payload>\windowslog.txt:winpeas.exe
wupdate.exe

Quiz

Last updated