Alternate Data Stream (ADS)

di Maurizio Anconelli

L'Alternate Data Stream (ADS) è una caratteristica del file system NTFS poco evidente nel normale utilizzo di un sistema e se vogliamo sconosciuta e di scarsa utilità all'utente comune di Windows, non così per il malintenzionato che può sfruttarne le caratteristiche per nascondere i propri strumenti all'interno del filesystem stesso.

Personalmente non lo ritengo un sistema particolarmente utilizzato poiché facilmente individuabile attraverso la moltitudine di tool disponibili e presenta alcuni svantaggi rispetto a tecniche più efficaci di occultamento quali steganografia e crittografia, ma è comunque una caratteristica da conoscere per evitare pericolose e determinanti “sviste”.

La suddivisione in streams di un file è stata implementata inizialmente come caratteristica di compatibilità con il file system HFS. Attraverso la canalizzazione di attributi supplementari del file in flussi diversi è possibile aggiungere parecchie informazioni e caratteristiche al file stesso senza incidere drasticamente sulla struttura.

Inserendo dati aggiuntivi nei campi “Riepilogo” di un file (Proprietà-Riepilogo), aggiungiamo, ad esempio, uno stream al file contenente i commenti e le caratteristiche personalizzate.

Ma vediamo come è possibile sfruttare manualmente questa caratteristica.

Abbiamo un semplice file di testo “normale.txt”contenente il testo “Normale file di test per articolo su Alternate Data Stream”.


O:>dir

Il volume nell'unità O è Test

Numero di serie del volume: 3870-FAB8


Directory di O:


12/02/2005 17.45 64 normale.txt

1 File 64 byte

0 Directory 2.084.165.632 byte disponibili



Col seguente comando aggiungiamo uno stream al file:

O:>echo "Questo testo è nascosto" > normale.txt:nascosto.txt



Lo stream aggiunto è del tutto invisibile e possiamo raggiungerlo solo conoscendone la presenza ed il nome preciso o attraverso specifici tools e programmi.



O:>dir

Il volume nell'unità O è Test

Numero di serie del volume: 3870-FAB8


Directory di O:


14/02/2005 10.21 64 normale.txt

1 File 64 byte

0 Directory 2.084.165.632 byte disponibili



Come possiamo vedere non è cambiato apparentemente nulla, proviamo invece ad aprire lo stream con notepad e vedremo il testo nascosto:



O:> notepad normale.txt:nascosto.txt



La seguente immagine mostra come Autopsy rilevi correttamente lo stream.

fig.1 Autopsy MFT record

Anche XWForensics rileva correttamente lo stream evidenziandolo in rosso nel directory browser:



fig.2 ADS nella finestra di browsing

Il file di testo è molto piccolo e possiamo vedere che i contenuti del file stesso e dello stream sono contenuti completamente all'interno della MFT entry.



fig.3 Contenuti



Maggior pericolosità dell' ADS è dovuta al fatto che l'inserimento di uno stream aggiuntivo non è limitato al solo file di testo, è possibile infatti utilizzare altri oggetti, in particolare file eseguibili e scripts. Nel task manager non verrà visualizzato il nome dello stream o del programma in esecuzione ma quello del file ospite, rendendo ancor più difficoltosa l'individuazione dell'artificio. Nonostante ciò la maggior parte dei toolkits forensici rileva correttamente la presenza di un ADS, ed è possibile scaricare uno dei numerosi programmi gratuiti dedicati al rilevamento degli stessi:

CrucialADS : http://www.crucialsecurity.com/

Streams.exe : http://www.sysinternals.com/Utilities/Streams.html

Lads.exe : http://www.heysoft.de/Frames/f_sw_la_en.htm


Per informazioni contattare staff@cybercrimes.it
Il logo cybercrimes.it e le immagini relative sono di proprietà del sito.
La documentazione presente nel sito è soggetta alla licenza Creative Commons ed è quindi liberamente riproducibile riportando il nome dell'autore originale.

>>>Forum<<<

Google
Web
cybercrimes.it

Lo Staff di Cybercrimes.it

Anconelli Maurizio

ISFCE


Denis Frati

Denis Frati 05/2007 - 10/2010

hackin9

Hard Disk Forensics e Specifiche ATA