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.exe o powershell.exe) è un classico indicatore.
  • Handle: riferimenti a oggetti kernel (file, chiavi di registry, altri processi, mutex). Un handle in read verso lo spazio di memoria di un altro processo critico è sospetto.
  • Memoria iniettata: codice in regioni private marcate 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.exe con diritti PROCESS_VM_READ.
  • La creazione di un dump di memoria di LSASS (es. tramite comsvcs.dll MiniDump, o un .dmp inatteso).
  • 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 .dmp di lsass.exe o un handle read verso lsass → credential dumping, non “crash di sistema”. Il significato è furto di credenziali, non instabilità.
  • Voce in HKCU\...\Run che 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.exe o outlook.exe che genera powershell.exe/cmd.exe → catena PPID anomala (esecuzione malevola), non normale uso dell’applicazione Office.