Come fare a...
Web
Come fare a...

Analisi forense di un sistema Windows

Alla ricerca di prove incriminanti

Pagine: 1 di 4 AvantiTop
Autore: Andrea Ghirardini e Gabriele Faggioli - Tratto: Computer forensics - Apogeo
Acquista il libro Vi siete mai chiesti come le forze dell'ordine analizzino i computer sequestrati alla ricerca di prove? In questo primo articolo sulle analisi forensi, vedremo come viene analizzato il più diffuso sistema operativo al monto, stiamo parlando di Microsoft Windows.

Il più diffuso

Una persona mi ha detto che parlar male di Microsoft è un po’ come sparare sulla Croce Rossa. Sicuramente ha ragione, e dopo l’avvento di Windows Vista le cose sono peggiorate notevolmente. È veramente difficile trovare un’entusiasta di questo sistema operativo, perfino tra i fan di Microsoft più incalliti. Però che la casa di Redmond sia riuscita a diventare, nonostante la qualità media dei suoi prodotti, l’indiscusso leader del mercato è un dato di fatto incontrovertibile.
Windows può non piacere, ma è quasi scontato che un computer forensics expert dovrà operare, per una gran parte della sua carriera, su questo sistema. Molto probabilmente non lo sceglierà come sistema da analisi, ma la maggior parte dei sistemi che arriveranno nel suo laboratorio saranno marchiati Microsoft.

Vantaggi e svantaggi di Windows

Windows, dal punto di vista di chi si occupa di analisi forense, ha una serie di vantaggi:

  • È ben documentato: Windows è usato da talmente tante persone che è quasi impossibile che qualche sua caratteristica non sia stata oggetto di analisi, per un motivo o per l’altro. Il protocollo SMB non è stato rilasciato da Microsoft ma il progetto Samba ha provveduto a fare un ottimo lavoro di reverse engineering. NTFS ha ancora dei lati oscuri, come specificato anche da Brian Carrier (autore di File System Forensic Analysis, edito da Addison-Wesley, 2007), ma il gruppo che lavora a FUSE e quello che ha sviluppato il driver Open Source ntfs-3g hanno provveduto a un ottimo lavoro sul reverse engineering, ottenendo un supporto stabile per questo file system.
  • È diffusissimo: se per fare un’analisi forense su Plan9 o Inferno (software usati nelle analisi forensi) probabilmente l’unico possibile approccio consiste nel fare tutto da soli, è praticamente impossibile non trovare qualcuno con cui condividere esperienze su Windows.
  • È molto ben supportato: qualunque software di analisi (Open Source o commerciale che sia) permette di analizzare un sistema Windows, e in caso di grandi variazioni (come quelle introdotte con Windows Vista o Windows 7) i programmi applicativi vengono adattati per poter lavorare sulla nuova piattaforma a tempo di record.

Windows ha tuttavia anche una notevole serie di svantaggi, per il computer forensics expert.

  • Tutti i sistemi Windows loggano pochissimo di default: questo vuole dire che in un sistema Windows sarà difficile trovare delle evidenze fornite direttamente dal sistema operativo. Ogni azione richiede invece una ricerca manuale all’interno di quanto rimane del sistema cui si ha accesso.
  • La maggior parte delle informazioni vitali sono salvate in formato binario: il registry, i file DAT, i file EVT, il SAM sono tutti binari. Pur essendo dei formati ben documentati, ciò non aiuta nelle ricerche.
  • Molti sistemi sono stati preinstallati in FAT: Tante società che costruiscono/assemblano computer preinstallano o preinstallavano Windows in FAT. Questa, usa pochissimi metadati, non ha un concetto di ACL e permessi sul file system. Ciò non aiuta a capire chi ha fatto cosa su una macchina dove vi siano più account.
  • Profilazione: non è propriamente un difetto di Windows in quanto tale, ma nel tempo poco o nulla è stato fatto per far sì che gli utenti fossero incoraggiati a usare un profilo di basso livello per l’accesso al sistema. La maggior parte delle macchine Windows ha un solo profilo di accesso al sistema, con diritti di Administrator. Con Vista la cosa è ulteriormente peggiorata. Il controllo dell’UAE, nato appunto per permettere (o impedire) l’esecuzione di codice a livello privilegiato, è talmente stringente che la maggior parte degli utenti lo disabilita esasperato dopo le prime 10/15 volte che il sistema li vessa con il laconico “Nega o autorizza” (non per nulla Apple fece anche una pubblicità della serie "PC vs Mac” su questo punto).
  • Antivirus, spyware, malware: Windows è sicuramente il sistema più piagato della storia dal fenomeno dei virus (a dire il vero è probabilmente uno dei pochissimi sistemi sensibili a questo problema, insieme ad AmigaOS e pochi altri). Il problema è intrinsecamente architetturale. Praticamente tutti i sistemi Windows sono perciò dotati di un antivirus di terze parti, e molti anche di un sistema antispyware. Le scansioni periodiche effettuate da questi tool nel sistema altro non fanno che resettare l’Access Time ogni volta, rendendo complesse le operazioni di ricostruzione della Timeline.
  • È un sistema interamente commerciale: ciò si riflette su molti programmi sviluppati per esso: Windows e il suo mondo pullulano di formati file chiusi che richiedono, nel caso più fortunato, visualizzatori specializzati, se non direttamente il programma che ha creato il file.

Inizio dell’analisi

Windows ha sempre normalmente utilizzato il partizionamento MBR per i PC. In realtà ora le cose sono notevolmente più complesse. Per la gestione di RAID Software, Windows deve usare i sistemi di gestione a disco dinamico (LDM). Le versioni Windows a 64 bit sono in grado di usare anche GPT come sistema di partizionamento e una sorta di “ibrido” GPT/LDM per la gestione dei dischi dinamici (di fatto è un accrocchio che ha davvero poco senso, ma c’è e bisogna tenerne conto). Inoltre, conserva all’interno delle sue partizioni sia il file di swap (pagefile.sys) sia quello necessario per il dump della RAM in caso il computer sia mandato in sospensione (hyberfil.sys). Questo si traduce nel fatto che, nella maggior parte dei casi, ogni disco ha un’unica partizione definita, che parte dal settore 63 e che finisce al termine del disco. Il tipo della partizione potrà essere uno di quelli mostrati in Tabella 1.

Codice esadecimale Tipo di partizione
0x4 FAT < 32M
0x5 Partizione estesa
0x6 FAT 16
0x7 HPFS/NTFS
0xb Win95 FAT32
0xc Win95 FAT32 (LBA)
0xe Win95 FAT16 (LBA)
0xf Win95 Estesa
0x11 FAT12 Nascosta
0x14 FAT16 < 32M Nascosta
0x16 FAT 16 Nascosta
0x1b Win95 FAT32 Nascosta
0x1c Win95 FAT32 (LBA) Nascosta
0x1e Win95 FAT16 (LBA) Nascosta
0x42 Windows 2000 dynamic disk/SFS

Tabella 1: tipi di partizioni riscontrabili in Windows

Alcune installazioni effettuate in ambito server (nonché qualche desktop avanzato) utilizzano un nuovo schema di gestione dei dischi noto come dynamic disc (LDM), introdotto con Windows 2000 e pienamente funzionante con Windows 2003. Il dynamic disc è richiesto nel momento in cui si vogliano gestire volumi estendibili, RAID e altre caratteristiche avanzate fornite da Windows Server 2003/2008/ XP/Vista/7. Lo scotto da pagare è che quella macchina potrà essere utilizzata solo dal sistema operativo Microsoft installato (almeno a livello ufficiale, ora LiLO è in grado di effettuare il boot anche con sistemi LDM). Nel caso si analizzi una macchina di questo tipo utilizzando Linux si noterà che il tipo della partizione sarà indicato come SFS (type 0x42).
GNU/Linux si è adeguato alla situazione, comunque. Se fino a poco tempo fa, nel caso in cui all’interno del dynamic disc fosse contenuto un RAID software, l’unica soluzione sarebbe stata quella di utilizzare un driver NTFS proprietario come, per esempio, quello della Paragon, ora tramite le dovute estensioni del kernel e i moduli md di gestione del RAID software, è possibile gestire pienamente tutte le varianti di dischi dinamici direttamente dal sistema operativo del pinguino.

Continua: 1 di 4 Avanti
Condividi

Apogeo

Vedi anche...

Sempre aggiornato





Abbonati alla newsletter di Come fare a... Sottoscrivi l'RSS di Come fare a... Usi Windows Live Messenger? Abbonati ai nostri Windows Live Alerts Diventa fan di Come fare a... su Facebook Seguici su Twitter Scarica il Widget per Mac OS X