
Une collection de SPL (Search Processing Language) de Splunk pour la chasse aux menaces avec CrowdStrike Falcon.
Une collection de Search Processing Language (SPL) de Splunk pour la chasse aux menaces avec CrowdStrike Falcon
Développée et maintenue par l'équipe Intelligent Response, i-secure co., Ltd.
Cette requête est inspirée par Red Canary's research. Pour une explication en thaï, consultez notre blog.
Idea:
NewExecutableRenamed.TargetFileName de l'événement NewExecutableRenamed avec un nom de fichier disponible dans le champ ImageFileName de l'événement ProcessRollup2.ComputerName, timestamp, ImageFileName et CommandLine comme colonnes.event_simpleName="NewExecutableRenamed"
| rename TargetFileName as ImageFileName
| join ImageFileName
[ search event_simpleName="ProcessRollup2" ]
| table ComputerName SourceFileName ImageFileName CommandLine
Cette requête est inspirée par Red Canary's research. Pour une explication en thaï, consultez notre blog.
Idea:
DnsRequest et NetworkConnectIP4. Nous allons utiliser l'événement DnsRequest dans cette requête.ContextProcessId de l'événement DnsRequest avec TargetProcessId de l'événement ProcessRollup2.ComputerName, timestamp, ImageFileName et CommandLine comme colonnes.Comme notre requête de chasse nécessite une liste des binaires/fichiers LOL connus pour le filtrage, nous devons énumérer une liste de fichiers disponibles sur LOLBAS-Project/LOLBas, ce qui peut être fait simplement avec une expression grep : grep -Poh "(?<=Name:\s)[A-Za-z0-9_-]+.exe$" OSBinaries/
event_simpleName="DnsRequest"
| rename ContextProcessId as TargetProcessId
| join TargetProcessId
[ search event_simpleName="ProcessRollup2" (FileName=Atbroker.exe OR FileName=Bash.exe OR FileName=Bitsadmin.exe OR FileName=Certutil.exe OR FileName=Cmd.exe OR FileName=Cmstp.exe OR FileName=Control.exe OR FileName=Cscript.exe OR FileName=Csc.exe OR FileName=Dfsvc.exe OR FileName=Diskshadow.exe OR FileName=Dnscmd.exe OR FileName=Esentutl.exe OR FileName=Eventvwr.exe OR FileName=Expand.exe OR FileName=Extexport.exe OR FileName=Extrac32.exe OR FileName=Findstr.exe OR FileName=Forfiles.exe OR FileName=Ftp.exe OR FileName=Gpscript.exe OR FileName=Hh.exe OR FileName=Ie4uinit.exe OR FileName=Ieexec.exe OR FileName=Infdefaultinstall.exe OR FileName=Installutil.exe OR FileName=Jsc.exe OR FileName=Makecab.exe OR FileName=Mavinject.exe OR FileName=Mmc.exe OR FileName=Msconfig.exe OR FileName=Msdt.exe OR FileName=Mshta.exe OR FileName=Msiexec.exe OR FileName=Odbcconf.exe OR FileName=Pcalua.exe OR FileName=Pcwrun.exe OR FileName=Presentationhost.exe OR FileName=Print.exe OR FileName=Regasm.exe OR FileName=Regedit.exe OR FileName=Register-cimprovider.exe OR FileName=Regsvcs.exe OR FileName=Regsvr32.exe OR FileName=Reg.exe OR FileName=Replace.exe OR FileName=Rpcping.exe OR FileName=Rundll32.exe OR FileName=Runonce.exe OR FileName=Runscripthelper.exe OR FileName=Schtasks.exe OR FileName=Scriptrunner.exe OR FileName=Sc.exe OR FileName=SyncAppvPublishingServer.exe OR FileName=Verclsid.exe OR FileName=Wab.exe OR FileName=Wmic.exe OR FileName=Wscript.exe OR FileName=Wsreset.exe OR FileName=Xwizard.exe) ]
| table ComputerName timestamp ImageFileName DomainName CommandLine
Cette requête est inspirée par Red Canary's research. Pour une explication en thaï, consultez notre blog.
Idea:
DNSRequest ou NetworkConnectIP4 ; dans cette requête, nous utiliserons NetworkConnectIP4.ContextProcessId_decimal avec TargetProcessId_decimal sur les événements ProcessRollup2.RemoteIP, RemotePort_decimal, ImageFileName, UserName et UserSid_readable.event_simpleName="NetworkConnectIP4"
| rename ContextProcessId_decimal as TargetProcessId_decimal
| join TargetProcessId_decimal
[ search event_simpleName=ProcessRollup2 ]
| table RemoteIP RemotePort_decimal ImageFileName UserName UserSid_readabl
Cette requête est inspirée par Red Canary's research. Pour une explication en thaï, consultez notre blog.
Idea:
DNSRequest.ContextProcessId de l'événement DNSRequest avec TargetProcessId sur les événements ProcessRollup2 et SyntheticProcessRollup2.TargetProcessId_decimal de Explorer.exe à partir de l'événement ProcessRollup2, puis de la joindre à la sous-recherche imbriquée interne chargée de trouver PowerShell.exe qui possède le même ParentProcessId_decimal que le TargetProcessId_decimal de Explorer.exe.Notez que lorsque ParentProcessId_decimal est utilisé, vous devrez peut-être étendre la fenêtre de recherche plus que d'habitude, car certains processus, en particulier les processus système, ont généralement une durée de fonctionnement élevée mais ont récemment été exploités de manière abusive.
event_simpleName="DnsRequest"
| rename ContextProcessId as TargetProcessId
| join TargetProcessId
[ search (event_simpleName="ProcessRollup2" OR event_simpleName="SyntheticProcessRollup2") AND FileName="explorer.exe"
| rename TargetProcessId_decimal as ParentProcessId_decimal
| join ParentProcessId_decimal
[ search event_simpleName="ProcessRollup2" FileName="powershell.exe" ]]
| table ComputerName timestamp ImageFileName DomainName CommandLine
Cette requête est inspirée par MENASEC's research.
CrowdStrike dispose d'une catégorie d'événements nommée RegSystemConfigValueUpdate pour ce type de comportement. Cependant, LastLoggedOnUser et LastLoggedOnSAMUser ne sont pas considérés comme une configuration système. Ainsi, nous ne pouvons détecter qu'une tentative de modification de RDP-Tcp\PortNumber.
event_simpleName="RegSystemConfigValueUpdate" AND RegObjectName="*\RDP-Tcp" AND RegValueName="PortNumber"
| rename RegNumericValue_decimal as "NewRDPPort"
| table timestamp, ComputerName, NewRDPPort
Cette requête est inspirée par MENASEC's research
Aucun événement lié à cette activité
ComputerName, timestamp, ImageFileName, DomainName et CommandLine.