Aquest article és la primera part d'una sèrie sobre l'anàlisi de les amenaces de Sysmon. Totes les altres parts de la sèrie:
Part 1: Introducció a l'anàlisi de registres de Sysmon (estem aquí)
Part 2: Ús de dades d'esdeveniments de Sysmon per identificar amenaces
Part 3. Anàlisi en profunditat de les amenaces Sysmon mitjançant gràfics
Si treballeu en seguretat de la informació, probablement sovint haureu d'entendre els atacs en curs. Si ja teniu un ull entrenat, podeu cercar activitats no estàndard als registres "crues" no processats, per exemple, un script de PowerShell en execució.
Voleu entendre les idees bàsiques darrere de les amenaces que es mostren al registre de Sysmon? Descarrega la nostra guia
A la primera part de la nostra sèrie, veurem què podeu fer amb la informació bàsica de Sysmon. A la part 2, aprofitarem al màxim la informació del procés principal per crear estructures de compliment més complexes conegudes com a gràfics d'amenaça. A la tercera part, analitzarem un algorisme senzill que escaneja un gràfic d'amenaces per buscar activitats inusuals mitjançant l'anàlisi del "pes" del gràfic. I al final, se us recompensarà amb un mètode de detecció d'amenaces probabilistes net (i comprensible).
Part 1: Introducció a l'anàlisi de registres de Sysmon
Què us pot ajudar a entendre la complexitat del registre d'esdeveniments? En definitiva - SIEM. Normalitza els esdeveniments i simplifica la seva anàlisi posterior. Però no hem d'anar tan lluny, almenys no al principi. Al principi, per entendre els principis de SIEM, n'hi haurà prou amb provar la meravellosa utilitat gratuïta Sysmon. I és sorprenentment fàcil treballar amb ella. Segueix així, Microsoft!
Quines característiques té Sysmon?
En resum: informació útil i llegible sobre els processos (vegeu imatges a continuació). Trobareu un munt de detalls útils que no es troben al registre d'esdeveniments de Windows, però els més importants són els camps següents:
- ID de procés (en decimal, no hexadecimal!)
- Identificador del procés principal
- Línia d'ordres del procés
- Línia d'ordres del procés pare
- Hash d'imatge de fitxer
- Noms de les imatges dels fitxers
Sysmon s'instal·la com a controlador de dispositiu i com a servei: més detalls
Sysmon fa un gran salt endavant proporcionant informació útil (o com diuen els venedors, accionable) per ajudar a entendre els processos subjacents. Per exemple, vaig començar una sessió secreta
El registre de Windows mostra informació sobre el procés, però és de poca utilitat. A més els ID de procés en hexadecimal???
Per a un professional informàtic amb coneixements bàsics de la pirateria informàtica, la línia d'ordres hauria de ser sospitosa. L'ús de cmd.exe per executar una altra ordre i redirigir la sortida a un fitxer amb un nom estrany és clarament similar a les accions del programari de supervisió i control.
Ara donem una ullada a l'equivalent a l'entrada de Sysmon, observant quanta informació addicional ens proporciona:
Característiques de Sysmon en una captura de pantalla: informació detallada sobre el procés en forma llegible
No només veuràs la línia d'ordres, sinó també el nom del fitxer, la ruta a l'aplicació executable, el que Windows sap sobre ella ("Windows Command Processor"), l'identificador parental procés, línia d'ordres pare, que va llançar l'intèrpret d'ordres cmd, així com el nom del fitxer real del procés principal. Tot en un sol lloc, per fi!
Del registre de Sysmon podem concloure que amb un alt grau de probabilitat aquesta línia d'ordres sospitosa que vam veure als registres "crues" no és el resultat del treball normal de l'empleat. Ben al contrari, va ser generat per un procés semblant a C2 - wmiexec, com he esmentat anteriorment - i va ser generat directament pel procés de servei WMI (WmiPrvSe). Ara tenim un indicador que un atacant remot o una persona privilegiada està provant la infraestructura corporativa.
Presentació de Get-Sysmonlogs
Per descomptat, és fantàstic quan Sysmon posa els registres en un sol lloc. Però probablement seria encara millor si poguéssim accedir a camps de registre individuals mitjançant programació, per exemple, mitjançant ordres de PowerShell. En aquest cas, podríeu escriure un petit script de PowerShell que automatitzés la cerca d'amenaces potencials.
No vaig ser el primer a tenir una idea així. I és bo que en algunes publicacions del fòrum i GitHub
El primer punt important és la capacitat de l'equip
$events = Get-WinEvent -LogName "Microsoft-Windows-Sysmon/Operational" | where { $_.id -eq 1 -or $_.id -eq 11}
Si voleu provar l'ordre vosaltres mateixos, mostrant el contingut al primer element de la matriu $events, $events[0].Message, la sortida pot ser una sèrie de cadenes de text amb un format molt senzill: el nom del Camp Sysmon, dos punts i després el valor en si.
Hura! Emet el registre de Sysmon en format preparat per a JSON
Estàs pensant el mateix que jo? Amb una mica més d'esforç, podeu convertir la sortida en una cadena amb format JSON i després carregar-la directament en un objecte PS mitjançant una ordre potent
Mostraré el codi de PowerShell per a la conversió, és molt senzill, a la part següent. De moment, vegem què pot fer la meva nova ordre anomenada get-sysmonlogs, que vaig instal·lar com a mòdul PS.
En lloc d'aprofundir en l'anàlisi del registre de Sysmon mitjançant una interfície de registre d'esdeveniments incòmode, podem cercar sense esforç l'activitat incremental directament des d'una sessió de PowerShell, així com utilitzar l'ordre PS
Llista de shells de cmd llançats mitjançant WMI. Anàlisi de l'amenaça barata amb el nostre propi equip Get-Sysmonlogs
Meravellós! Vaig crear una eina per enquestar el registre de Sysmon com si fos una base de dades. En el nostre article sobre
Anàlisi de Sysmon i gràfics
Fem un pas enrere i pensem en el que acabem de crear. Bàsicament, ara tenim una base de dades d'esdeveniments de Windows accessible a través de PowerShell. Com he assenyalat anteriorment, hi ha connexions o relacions entre registres, mitjançant el ParentProcessId, de manera que es pot obtenir una jerarquia completa de processos.
Si has llegit la sèrie
Però amb la meva comanda Get-Sysmonlogs i una estructura de dades addicional que veurem més endavant al text (un gràfic, per descomptat), tenim una manera pràctica de detectar amenaces, que només requereix fer la cerca de vèrtex correcta.
Com sempre amb els nostres projectes de bloc DYI, com més treballeu analitzant els detalls de les amenaces a petita escala, més us adonareu de la complexitat que és la detecció d'amenaces a nivell empresarial. I aquesta consciència és extremadament punt important.
Ens trobarem amb les primeres complicacions interessants a la segona part de l'article, on començarem a connectar els esdeveniments Sysmon entre si en estructures molt més complexes.
Font: www.habr.com