Perché un analista SOC deve conoscere l’interno di Windows
In un blue team, la maggior parte degli endpoint aziendali gira su Windows. Saper distinguere un processo legittimo da uno anomalo, capire dove un attaccante nasconde la sua persistence e riconoscere un credential dumping sono competenze che il CBROPS colloca nella host-based analysis. L’obiettivo qui non è imparare tutti i dettagli del kernel, ma capire quali artefatti guardare e cosa significano dal punto di vista della sicurezza.
Processi, thread e memoria
Un processo è un contenitore di risorse: uno spazio di indirizzamento virtuale privato, uno o più thread (le unità che vengono realmente schedulate sulla CPU), e una tabella di handle. Ogni thread esegue codice all’interno della memoria del processo; la memoria viene allocata in regioni che possono essere private, mapped (file mappati) o image (moduli DLL/EXE caricati).
Concetti chiave per l’analisi:
- PID/PPID: ogni processo ha un identificativo e un parent PID. Un albero anomalo (es. un processo Office che genera
cmd.exeopowershell.exe) è un classico indicatore. - Handle: riferimenti a oggetti kernel (file, chiavi di registry, altri processi, mutex). Un handle in
readverso lo spazio di memoria di un altro processo critico è sospetto. - Memoria iniettata: codice in regioni
privatemarcate eseguibili (RWX), senza un file su disco associato, suggerisce process injection o code hollowing.
Services e WMI
I services sono processi che girano in background, spesso con privilegi elevati (LocalSystem), gestiti dal Service Control Manager. Sono un obiettivo tipico perché un servizio malevolo parte automaticamente al boot e con alti privilegi: è insieme persistence e potenziale privilege escalation.
WMI (Windows Management Instrumentation) è un framework di gestione. Gli attaccanti lo abusano per esecuzione remota e per persistence tramite event subscription (una tripletta EventFilter + EventConsumer + Binding): un evento di sistema fa scattare l’esecuzione di codice senza scrivere una classica autorun. È persistence “fileless” e più difficile da individuare.
Windows Registry e persistence
Il Registry è il database gerarchico di configurazione (hive come HKLM, HKCU). È il primo posto dove cercare persistence.
| Meccanismo | Artefatto tipico | Nota di sicurezza |
|---|---|---|
| Run keys | HKLM\...\CurrentVersion\Run e RunOnce, equivalenti in HKCU |
Eseguono un programma a ogni logon |
| Services | HKLM\SYSTEM\CurrentControlSet\Services |
Avvio automatico, spesso SYSTEM |
| Scheduled Tasks | ...\Schedule\TaskCache + file in System32\Tasks |
Trigger a tempo o a evento |
| WMI subscription | classi in root\subscription |
Fileless, evasivo |
Regola pratica: HKCU agisce nel contesto del solo utente, HKLM a livello di macchina (di norma richiede privilegi admin). Un valore in HKLM\...\Run che punta a un eseguibile in %TEMP% o %APPDATA% è un segnale forte.
LSASS: il bersaglio del credential dumping
lsass.exe (Local Security Authority Subsystem Service) gestisce l’autenticazione e mantiene in memoria segreti derivati: hash NTLM, ticket Kerberos, talvolta password in chiaro. Per questo è il bersaglio numero uno del credential dumping (tecnica tipo Mimikatz).
Cosa cercare:
- Un processo che apre un handle a
lsass.execon dirittiPROCESS_VM_READ. - La creazione di un dump di memoria di LSASS (es. tramite
comsvcs.dll MiniDump, o un.dmpinatteso). - Utility di dump legittime (
procdump,Task Manager) usate contro LSASS in orari o contesti anomali.
Un dump di LSASS significa che l’attaccante può estrarre credenziali offline e riutilizzarle per lateral movement e privilege escalation (es. pass-the-hash, pass-the-ticket). Il dump in sé non è un exploit del kernel: è furto di segreti da un processo legittimo.
Trappole tipiche d’esame
- Un
.dmpdi lsass.exe o un handle read verso lsass → credential dumping, non “crash di sistema”. Il significato è furto di credenziali, non instabilità. - Voce in
HKCU\...\Runche lancia un eseguibile da%APPDATA%→ persistence utente, non semplice configurazione. Non serve admin: agisce al logon di quell’utente. - Scheduled task o servizio con avvio automatico e path sospetto → persistence + possibile privilege escalation (il task/servizio può girare come SYSTEM), non “attività di manutenzione”.
- EventFilter + EventConsumer in
root\subscription(WMI) → persistence fileless; l’assenza di un file autorun classico non significa “sistema pulito”. winword.exeooutlook.exeche generapowershell.exe/cmd.exe→ catena PPID anomala (esecuzione malevola), non normale uso dell’applicazione Office.