Sysmon scrive nel proprio canale del registro eventi. In Visualizzatore eventi è Registri applicazioni e servizi → Microsoft → Windows → Sysmon → Operativo. Da linea di comando è Microsoft-Windows-Sysmon/Operational, e su disco C:WindowsSystem32winevtLogsMicrosoft-Windows-Sysmon%4Operational.evtx. Per esportarlo, esegui questo comando da un prompt con privilegi elevati:
wevtutil epl "Microsoft-Windows-Sysmon/Operational" C:logssysmon.evtx
Se il canale non esiste, Sysmon non è installato. Su la maggior parte delle macchine è ancora uno strumento Sysinternals separato che qualcuno deve implementare.
Sysmon è la cosa più vicina che Windows ha a un registratore di volo. Cattura gli alberi dei processi con comandi e hash completi, connessioni di rete per processo, query DNS, e modifiche a file e registro. Prime Core ha 12074 regole sigma scritte per dati Sysmon, mappate a 645 tecniche MITRE ATT&CK. Ecco come verificare che sia in esecuzione, esportare ciò che ha registrato e indagarlo in LogTotal.
Prima di iniziare
È in esecuzione? Controlla il servizio:
sc query sysmon64
Su sistemi a 32-bit il servizio è chiamato sysmon. Vuoi lo STATO: IN ESECUZIONE.
Cosa sta registrando? Sysmon registra solo ciò che il suo file di configurazione gli dice di registrare. Senza un file di configurazione, ottieni un piccolo set predefinito basato sulla creazione dei processi. La maggior parte del valore proviene da una configurazione sintonizzata, come quella di SwiftOnSecurity o il sysmon-modular di Olaf Hartong. Per vedere quella corrente, esegui sysmon64 -c (il file binario si trova in C:Windows). Salva quel risultato accanto alla tua esportazione. Chiunque analizzi il file chiederà perché non ci sono eventi di rete, e la configurazione risponderà a questo.
Quanto indietro nel tempo va? Sysmon è loquace, e il suo canale ha un limite di dimensione come qualsiasi altro registro. Esegui wevtutil gl “Microsoft-Windows-Sysmon/Operational” e controlla maxSize. Su un server occupato, un registro di dimensioni predefinite può coprire sorprendentemente poco tempo.
Hai bisogno di un prompt elevato per esportare.
Esporta il registro
In Visualizzatore eventi, fai clic destro su Operativo sotto Sysmon e scegli Salva tutti gli eventi come…, mantenendo il tipo .evtx . Da linea di comando, puoi filtrare mentre esporti:
:: ultime 24 ore
wevtutil epl "Microsoft-Windows-Sysmon/Operational" C:logssysmon_24h.evtx /q:"*[System[TimeCreated[timediff(@SystemTime) <= 86400000]]]"
:: solo creazione dei processi
wevtutil epl "Microsoft-Windows-Sysmon/Operational" C:logssysmon_proc.evtx /q:"*[System[(EventID=1)]]"
Cosa cercare
| ID evento | Cosa registra | Perché è importante |
|---|---|---|
| 1 | Creazione di processi, con riga di comando, hash e genitore | La spina dorsale di quasi ogni indagine |
| 3 | Connessione di rete per processo | Spesso filtrato dalle configurazioni a causa del volume |
| 10 | Un processo che apre un altro | Accesso a lsass.exe è il segnale classico di dumping di credenziali (T1003.001) |
| 11 | File creato | Payloads rilasciati, archivi preparati |
| 12,13,14 | Modifiche del registro | Chiavi di esecuzione e altre persistenze |
| 22 | Query DNS per processo | Quale processo ha cercato quel dominio |
| 4,16 | Stato del servizio Sysmon e configurazione modificata | Un attaccante che spegne Sysmon o neutralizza la sua configurazione |
Se gli eventi si fermano semplicemente a un certo punto, cerca l’evento 16 o 4 appena prima del gap. Poi controlla il registro di sistema per il servizio Sysmon che viene interrotto.
Carica e rivedi in LogTotal
LogTotal legge EVTX nativamente, quindi non c’è nulla da convertire. Una cosa da sapere prima: LogTotal non sterilizza ancora i file EVTX. Tratta un caricamento EVTX come consegnare il file grezzo. Usalo liberamente per le macchine di test, ma per gli host di produzione, ottieni un sì da chi gestisce i dati prima.
- Carica. Apri logtotal.com e carica il file.
- Rivedi. [PROOF: what the results screen shows for Sysmon data, and how findings map to rules and ATT&CK techniques]
Quando va storto
| Sintomo | Causa probabile | Fix |
|---|---|---|
| Il canale specificato non è stato trovato | Sysmon non è installato | Controlla con sc query sysmon64 |
| Il canale esiste ma contiene quasi nulla | Nessuna configurazione, o una configurazione che filtra quasi tutto | Controlla sysmon64 -c |
| Eventi di processo ma nessun evento di rete | La configurazione esclude l’evento 3, che è comune | Progettato così; controlla la configurazione prima di assumere che non sia successo nulla |
| Gli eventi si fermano a un certo punto | Sysmon fermato, disinstallato o riconfigurato | Cerca gli eventi 4 e 16, e il registro di Sistema |
| Sono presenti solo le ultime poche ore | Il registro è pieno e in sovrascrittura | Controlla maxSize; per la cronologia usa il tuo SIEM |
| Accesso negato | Il prompt non è elevato | Esegui come amministratore |
FAQ
Sysmon è installato di default?
Nella maggior parte delle macchine, no. È un download gratuito di Sysinternals che devi distribuire e configurare tu stesso. Microsoft ha annunciato Sysmon integrato per le nuove versioni di Windows, quindi verifica con che cosa le tue build effettivamente vengono fornite.
L’analista ha bisogno della mia configurazione di Sysmon?
Non per leggere gli eventi, ma spiega i vuoti. Invia l’output di sysmon64 -c insieme all’esportazione.
Esiste Sysmon per Linux?
Sì. Scrive su syslog invece di un canale EVTX; lo tratteremo in una guida separata.