Windows
In ambiente Windows, come per Linux, esiste un oggetti file chiamata \Device\PhysicalMemory che permetteva l’accesso in scrittura e lettura alla memoria fisica. Ma alla memoria di tutti le periferiche. Questo era fattibile fino a Windows 2003 ma dal SP2 questa possibilità è stata rimossa per ragioni di sicurezza. Quindi attualmente l’acquisizione della memoria avviene mediante un driver da caricare a livello di kernel. Inoltre in passato ci sono stati alcuni problemi nell’uso di tool di campionatura della memoria a causa dell’uso esteso della virtualizzazione. Cioè si quei sistemi che avevano il Virtual Secure Mode abilitato si verificano dei crash o dei blocchi della macchina. Ma poi anche questo problema è stato aggirato. Nella seconda parte di questa pagina prenderemo in esame anche l’analisi di file che non sono campionature di ram ma crashdump, swapfile e file di ibernazione. A questo proposito è consigliabile diversificare le sorgenti di acquisizione come è stato chiaramente spiegato nella nota di colore blu evidenziata nella spiegazione di LiME.
Campionature di RAM
FTK Imager
Questo tool è disponibile gratuitamente ed è scaricabile a questo link previa la compilazione dei propri dati. Al momento attuale (cioè 31 gennaio 2024) puoi bypassare la compilazione del form scaricandolo qui.
Campionatura
Per effettuare la cattura bisogna lanciare l’applicazione e quindi andare su FILE –> Capture Memory. Quindi si aprirà una finestra di dialog dove sarà necessario:
- indicare il percorso di destinazione mediante il bottone “Browse”.
- Indicare il nome del file di destinazione inserendolo nello spazio specifico
- Indicare se si vuole includere il pagefile.sys ed eventualmente il nome del pagefile (consigliato).
- Quindi fare click sul pulsante Capture Memory per iniziare il processo di acquisizione.
Attendere fino al termine del processo di campionatura.
WinPmem
WinPmem è il corrispettivo windows di LinPmem e OSXpmem. I vari *pmem sono i tool di campionatura di un framework gemello di volatility chiamato rekall e prodotto da google. Ho usato rekall per diverso tempo e devo dire che era un ottimo tool, molto performante e molto avanzato. Purtroppo il progetto è stato chiuso in quanto Mike Cohen, il team leader di rekall, ne ha concluso che era troppo oneroso stare dietro a tutte le modifiche dei vari kernel. Soprattutto Linux, che essendo un kernel in continuo sviluppo presenta continue modifiche anche importanti. Mike ha quindi iniziato un nuovo progetto chiamato Velociraptor. Per il download di WinPmem fare click qui. È consigliabile scaricare la versione mini del software facendo click sul banner di sinistra con scritto “releases”.
Campionatura
Per campionare la ram con winpmem bisogna lanciare il comando partendo da una shell powershell lanciata con i permessi di amministratore. Come per la versione per linux è consigliabile fare il download del tool da una macchina pulita e quindi spostare il exe su una chiavina usb pulita dove verrà anche salvato il sample della ram. Quindi per campionare inserire la chiavetta usb, lanciare una shell powershell con permessi di amministratore e a questo punto passare sulla chiavina col comando d:. Come segue:
PS > d:
PS > .\winpmem_mini_x64_rc2.exe ram_campione_windows10.raw
Belkasoft RAM Capturer
Per il download di questo tool fare click qui, inserire la propria email e rimanere in attesa della mail con il link di download. Belkasoft RAM capture
è anchesso un tool free.
Campionatura
La campionatura con questo tool è ancora più semplice dei precedenti, è sufficiente lanciare l’eseguibile, selezionare il path dove salvare il file di cattura, ciosè il percorso della penna usb e quindi fare click sul tasto capture.
Magnet RAM capture
Per il download del tool fare click su Magnet Forensics, compilare il form con i propri dati e quindi rimanere in attesa del link per il download.
Altre tipologie di sorgenti
In questa parte prendere in considerazione l’acquisizione di altre fonti di dati per l’analisi forense. Queste sono:
- File di ibernazione
- file di Page e file di swap
- file di crashdump
File di ibernazione
Il file di ibernazione sebbene sia una fonte di dati alternativa si tratta sempre di una copia della RAM (Random Access Memory) compresso. Ricordiamo che la modalità di ibernazione è una particolare modalità di risparmio energetico in cui la macchina viene quasi del tutto spenta. Quando questa modalità è abilitata e inserita il sistema operativo procede a fare una copia compressa della RAM su file proprio per mettere la macchina in una modalità congelata oppure di sospensione energetica. La copia della RAM compressa viene fatta sul file hiberfil.sys
prima che la macchina venga spenta. Naturalmente nel file di ibernazione è presente tutta la ram compresi i file aperti e che potrebbero non essere più presenti sul disco. Una volta acquisito il file di ibernazione è possibile analizzarlo come se fosse la campionatura della ram.
FTK Imager
È possibile catturare il file di ibernazione da una macchina potenzialmente infetta anche utilizzando il già citato tool FTK Imager. Procedere come segue:
- Aprire o lanciare FTK Imager
- Andare su
file
e click - Andare su
Add Evidence Item..
e click - Selezionare
Logical Drive
- Andare su
Next
e click - Dal menu a tendina selezionare il
Disco c:\
- andare su
Finish
e click
[]: