ellambito di unanalisi forense di un sistema operativo
Microsoft Windows, il registro di sistema una ricca miniera dinformazioni utili ad unampia ricostruzione degli eventi. Linterpretazione e la ricostruzione delle informazioni contenute in esso richiede competenze professionali specifiche nonch lapplicazione di particolari tecniche di analisi che permettono di dare una svolta nelle indagini di tipo forense. Oltre alle informazioni di configurazione di Windows, il registro di sistema contiene le informazioni riguardo ai files a cui si avuto accesso di recente, allhardware installato (es. Usb Drive) e ad una considerevole quantit di informazioni sulle attivit degli utenti che hanno interagito con quel sistema operativo.
In DOS e nelle prime versioni di Windows (3.1, 3.11) le
informazioni di configurazione del sistema erano gestite da vari files, in particolare autoexec.bat, config.sys, win.ini, system.ini. Nelle versioni successive di Windows questi files sono stati sostituiti con un database gerarchico centralizzato che memorizza le informazioni relative ad impostazioni di configurazione di drivers, software, hardware ed utenti. Per interagire con questo database, in ambiente windows possibile ricorrere allinterfaccia grafica denominata editor del registro di sistema fornito con Windows, regedit.exe o regedt. exe, il quale svolge la funzione di intermediario tra il database e lutente. Si descrive di seguito lanalisi del registro di sistema in piattaforme basate su Microsoft Windows XP (service pack 2). nn Struttura del registro La figura mostra linterfaccia delleditor del registro di sistema di Windows nella sua struttura gerarchica. Ogni cartella nel riquadro a sinistra mostra una chiave di registro mentre nel riquadro a destra sono presenti i valori delle chiavi. Le sottochiavi invece vengono utilizzate per mostrare la relazione tra la chiave e le chiavi sotto nidificate.
Editor del registro di sistema
Nella struttura del registro esistono cinque chiavi di Root (ovvero il punto di partenza) denominate hive. Le chiavi di registro sono simili alle cartelle, oltre ai valori, ogni chiave pu contenere sottochiavi, che a loro volta possono contenere altre sottochiavi, e cos via. I percorsi sono definiti con una sintassi simile ai nomi dei percorso su Windows, utilizzando backslash per indicare i livelli della gerarchia. Ad esempio HKEY_LOCAL_ MACHINE \ Software \ Microsoft \ Windows.
48
SICUREZZAeGIUSTIZIA
NUMERO II / MMXII
di Fabio Massa
oo Valori e funzioni delle chiavi di Root
Ogni chiave possiede uno o pi valori. Il valore diviso in tre parti: nome: ogni valore ha un nome univoco in quella particolare chiave; tipo: Il tipo di valore determina il tipo di valore dei dati contenuti. Es. il tipo di valore pu essere REG_BINARY, il quale contiene dati binari oppure REG_DWORD che contiene una doppia parola (32 bit); dati: I dati valore contengono i dati che si riferiscono di solito al tipo di valore. Linterfaccia predefinita di Windows Registry Editor pu essere aperta digitando regedit nella finestra esegui di Windows. Le funzioni base delle chiavi di Root sono le seguenti: 1. HKEY_CLASSES_ROOT (HKCR): contiene due tipi di informazioni:
la prima permette lassociazione di un file ad un
software. Per ogni tipologia di file, un sottoalbero indica le applicazioni associate a quel tipo di file in grado di stamparlo, aprirlo o modificarlo;
la seconda risorsa invece riguarda le informazioni
di configurazione dei componenti COM (Component Object Model) ed altri tipi di configurazione. Questa chiave principale permette di cambiare moltissime azioni di comportamento del sistema operativo. 2. HKEY_CURRENT_USER (HKCU): contiene le impostazioni relative allutente. Questa hive un collegamento a HKU\SID, dove SID lidentificatore di protezione dellutente loggato. Comprende variabili di ambiente, le impostazioni del desktop, le configurazioni di rete, le stampanti e le preferenze delle applicazioni. 3. HKEY_LOCAL_MACHINE (HKLM): contiene specifiche informazioni hardware. Esso comprende una lista di unit montate sul sistema e la configurazione generica dellhardware installato e delle applicazioni. Una delle risorse molto importanti di questa chiave sono le sezioni HARDWARE, SAM, SECURITY, SOFTWARE, e SYSTEM. Le informazioni contenute in queste sottochiavi sono elencate di seguito:
HARDWARE viene utilizzata per memorizzare le
informazioni dei dispositivi hardware di un computer rilevate quando il computer viene avviato. Cos, le sottochiavi in HARDWARE vengono create anche durante il processo di avvio.
SAM lacronimo di Security Manager Account che un
database di sicurezza locale. Le sottochiavi in SAM contengono i dati di impostazione di utenti e gruppi di lavoro.
SECURITY include un database di protezione locale in
SAM e una rigorosa ACL (Access Control List) utilizzata per gestire gli utenti che hanno accesso al database.
SOFTWARE include tutte le impostazioni di
configurazione dei programmi. Le informazioni relative ai programmi sono memorizzate in un formato standard: HKLM \
Analisi forense del registro
di sistema di Windows
Software \ fornitore \ Program Version\.
SYSTEM contiene le impostazioni di configurazione
dei driver hardware e servizi. Il percorso della chiave HKEY_ LOCAL_MACHINE \ SYSTEM \ ControlSetXXX. 4. HKEY_USERS (HKU): contiene la configurazione di tutti i profili utente presenti sul sistema, la configurazione delle applicazioni, e limpostazione visiva. 5. HKEY_CURRENT_CONFIG (HKCC): memorizza le informazioni sulla configurazione del sistema corrente. un link a HKLM \ Config\profile. pp Analisi forense del registro di sistema Di seguito vengono descritte le principali sottochiavi che includono importanti informazioni di natura probatoria: HKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ Comdlg32 \ OpenSaveMRU MRU labbreviazione di Most-Recently-Used. Questa chiave mantiene un elenco degli ultimi files aperti o salvati. Le sottochiavi * contengono il percorso completo degli ultimi dieci files aperti o salvati di recente. Unaltra sottochiave OpenSaveMRU contiene pi voci di files che sono raggruppati per estensione. HKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ Comdlg32 \ LastVisitedMRU correlata alla OpenSaveMRU ed utilizzata per fornire informazioni aggiuntive. Ogni valore binario del Registro di sistema in questa chiave contiene il nome del programma utilizzato di recente e il percorso della cartella di un file aperto o salvato con un determinato software. HKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ RecentDocs Mantiene anche lelenco degli ultimi file aperti o eseguiti tramite Windows Explorer. Questa chiave corrisponde a %USERPROFILE% \ Recent (Documenti recenti). Questa chiave contiene inoltre i files locali o di rete che sono stati aperti di recente ove il nome del file viene memorizzato in formato binario. HKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ RunMRU Memorizza un elenco di voci (ad esempio comandi eseguiti come cmd, regedit, ecc.) effettuate usando i comandi Start> Esegui. HKLM \ SYSTEM \ CurrentControlSet \ Session Manager \ Memory Management Memorizza informazioni in relazione alla memoria virtuale di configurazione di Windows (file di paging). Il file di paging (pagefile.sys ad esempio) pu contenere informazioni probatorie che potrebbero essere perse (parziale della Random Access Memory) quando il computer viene spento. Contiene inoltre un valore di registro chiamato ClearPageFileAtShutdown che specifica se Windows deve svuotare il file di paging quando il computer viene spento. Per impostazione predefinita, Windows non svuota il file di paging. Un utente esperto potrebbe impostare questa funzione in modo che allarresto del computer il file di paging venga svuotato automaticamente. HKCU\Software\Microsoft \Search Assistant\ACMru Contiene le parole o frasi recenti utilizzate nel motore di ricerca predefinito di Windows. La sottochiave 5603 contiene
le informazioni di ricerca utilizzate per trovare cartelle e nomi
di files, mentre la sottochiave 5604 contiene le informazioni di ricerca relative a parole o frasi utilizzate per la ricerca. HKLM\SOFTWARE \ Microsoft \ Windows \ CurrentVersion\Uninstall Ogni sottochiave in questa chiave rappresenta un programma installato nel sistema operativo del computer. Ogni sottochiave contiene di solito questi due valori comuni del Registro di sistema, DisplayName (nome del programma) e UninstallString (percorso dei file di disinstallazione del software che fa indirettamente riferimento al percorso di installazione dellapplicazione). Possono essere reperite ulteriori informazioni che includono la data di installazione e la versione del software. HKCU \ Software \ Microsoft \ Internet Explorer \ TypedURLs Contiene una lista di venticinque URL pi recenti (o percorsi di file) che vengono digitati in Internet Explorer (IE) o barra degli indirizzi di Windows Explorer. La chiave mostra solo i links che sono stati completamente digitati, il completamento automatico durante la digitazione, o i links che sono selezionati dallelenco di URL memorizzati nella barra degli indirizzi di IE. Ad esempio i siti web ai quali si accede tramite i preferiti di IE non sono registrati. Purtroppo queste voci vengono rimosse durante la fase di cancellazione della cronologia. HKLM \ SYSTEM \ MountedDevices La prima chiave contiene un elenco dei dispositivi montati, con associato il nome del volume persistente ed unico interno identificatore per i rispettivi dispositivi (Carvey, 2004). Questa chiave elenca qualsiasi volume che viene montato e a cui viene assegnata una lettera disco, compresi i dispositivi di memorizzazione USB esterni e unit DVD / CD-ROM. Il valore che inizia con \ DosDevices \ A e finisce con la lettera di unit associata, contiene informazioni in merito a tale dispositivo montato. HKLM \ SYSTEM \ CurrentControlSet \ Enum \ USBSTOR Ogni volta che un dispositivo collegato alla Universal Serial Bus (USB), i drivers vengono interrogati e le informazioni del dispositivo sono memorizzate nel Registro di sistema (thumb drive ad esempio, macchine fotografiche ecc.) Ognuno di questi ID memorizzati nella chiave integra anche il numero di serie. I numeri di serie di questi dispositivi sono un valore univoco assegnato dal costruttore, proprio come lindirizzo MAC di una scheda di interfaccia di rete. Per estrarre il seriale o interrogare il registro alla ricerca di queste informazioni possibile utilizzare il software UVCView. HKCU \ Software \ Microsoft \ Protected storage System Provider Le informazioni di Windows Storage sono mantenute in questa chiave. Protected Storage un servizio utilizzato dai prodotti Microsoft per fornire uno spazio sicuro per memorizzare le informazioni private (Carvey, 2004). Le informazioni che possono essere memorizzate in Protected Storage includono le stringhe di completamento automatico di MSN Explorer e Internet Explorer, le password, Microsoft Outlook e gli account di Outlook Express nonch le password degli account di MSN Messenger. Leditor del Registro di sistema nasconde la visualizzazione di queste chiavi di registro agli utenti. Le stesse per sono facilmente decriptabili con strumenti tipo Protected Storage PassView (NirSoft), AccessData Registry Viewer (AccessData). NUMERO II / MMXII