Guida agli ADS (Alternate Data Stream)

COSA SONO

Gli alternate data streams (ADS) sono, come dice il nome, flussi di dati alternativi ed è una particolarità del filesystem NTFS (New Technology File System).

PERCHÉ SONO STATI CREATI

Gli ADS sono stati creati per rendere compatibile Windows con server Apple con filesystem HFS (Hierarchical File System), infatti questo filesystem utilizza anch’esso una struttura dati simile ad un ADS (i metadati).

COME FUNZIONANO

NTFS memorizza i nomi dei file, directory, data di creazione/modifica e il contenuto dei file nella MFT (Master File Table). La particolarità, che forse non tutti sanno, è che ogni file può avere più di un flusso di dati (ovvero il contenuto).

Faccio un esempio per chiarire: Mettiamo di avere un file testo.txt di 4KB creato il 22/2/2002, io posso inserirvi come flusso dati alternativo un qualsiasi altro file, ad esempio file.pdf di 400KB creato oggi stesso.

Il file PDF inserito sarà completamente invisibile all’utente, perchè guardando nelle proprietà del file nulla lascerà trasparire la sua presenza, ne nelle dimensioni (risulterà infatti sempre di 4KB non 404KB!), ne in nessun altro attributo (tranne la data di modifica).

Come vedete, possono essere un pericolo per la sicurezza dell’utente. Questa tecnica è stata già usata da diversi malware, perchè appunto, invisibili a livello utente e potendo contenere qualsiasi file possono essere effettivamente pericolosi. Persino un antivirus come Kaspersky usa gli ADS: Infatti ad ogni file scansionato gli aggiunge un ADS, in modo da riconoscerlo nelle successive scansioni e saltarlo, velocizzando così le scansioni successive.

CREIAMO IL NOSTRO ADS

Ma vediamo come possiamo aggiungere ADS ai nostri file:

Per nascondere un file di testo dentro un altro basterà digitare:

echo filenascosto > file.txt:nascosto.txt

Ho creato un ADS in un file di testo (file.txt), con scritto filenascosto chiamandolo nascosto.txt.

Chiaramente risulterà solo file.txt e come contenuto risulterà vuoto. Per visualizzare il contenuto di nascosto.txt digiteremo:

notepad file.txt:nascosto.txt

Per inserire un eseguibile dentro un qualsiasi file già esistente, digiteremo:

type c:\windows\notepad.exe > file.txt:dialer.exe

Abbiamo inserito notepad.exe dentro file.txt chiamandolo però dialer.exe

Per eseguire l’eseguibile nascosto:

start c:\windows\file.txt:dialer.exe

Eseguiremo così dialer.exe (che in questo caso avvierà Notepad).

COME RILEVARLI

Gli unici modi per rilevare un ADS si può, o copiarlo in una partizione FAT32 (perchè non li usa e avvisa dell’esistenza) oppure usando programmi appositi come:

LADS – Questo programma elenca tutti gli alternate data streams di una partizione NTFS
STREAMS – Cerca e rimuove ADS
ADS Spy – Un piccolo tool per elencare, visualizzare o cancellare ADS
LNS – LNS è un tool per cercare streams NTFS
CrucialADS – É anch’esso un tool per cercare ADS
NTFS ext – Creato da Microsoft, permette di aggiungere nelle proprietà del file o cartella una scheda per visualizzare eventuali ADS.
X-Ways Forensics – X-Ways Forensics è un programma avanzato con funzionalità forensiche

Pubblicato il 5 gennaio 2008, in Sicurezza con tag , . Aggiungi il permalink ai segnalibri. 1 Commento.

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger cliccano Mi Piace per questo: