
مجموعة من لغة معالجة البحث (SPL) الخاصة بـ Splunk لصيد التهديدات باستخدام CrowdStrike Falcon
مجموعة من لغة معالجة البحث في Splunk (SPL) لاصطياد التهديدات باستخدام CrowdStrike Falcon
تم التطوير والصيانة بواسطة فريق Intelligent Response من i-secure co., Ltd.
هذا الاستعلام مستوحى من بحث Red Canary. للشرح باللغة التايلاندية، يرجى الاطلاع على مدونتنا.
الفكرة:
NewExecutableRenamed.TargetFileName في حدث NewExecutableRenamed مع اسم ملف متوفر في حقل ImageFileName في حدث ProcessRollup2.ComputerName وtimestamp وImageFileName وCommandLine كأعمدة.event_simpleName="NewExecutableRenamed"
| rename TargetFileName as ImageFileName
| join ImageFileName
[ search event_simpleName="ProcessRollup2" ]
| table ComputerName SourceFileName ImageFileName CommandLine
هذا الاستعلام مستوحى من بحث Red Canary. للشرح باللغة التايلاندية، يرجى الاطلاع على مدونتنا.
الفكرة:
DnsRequest وNetworkConnectIP4. سنستخدم حدث DnsRequest في هذا الاستعلام.ContextProcessId من حدث DnsRequest مع حقل TargetProcessId في حدث ProcessRollup2.ComputerName وtimestamp وImageFileName وCommandLine كأعمدة.نظرًا لأن استعلام الاصطياد لدينا يتطلب قائمة بالملفات/الثنائيات المعروفة (LOL binaries) للتصفية، فإننا بحاجة إلى تعداد قائمة الملفات المتوفرة في LOLBAS-Project/LOLBas، ويمكن ذلك ببساطة عبر تعبير 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
هذا الاستعلام مستوحى من بحث Red Canary. للشرح باللغة التايلاندية، يرجى الاطلاع على مدونتنا.
الفكرة:
DNSRequest أو NetworkConnectIP4، وفي هذا الاستعلام سنستخدم NetworkConnectIP4.ContextProcessId_decimal مع TargetProcessId_decimal في أحداث ProcessRollup2.RemoteIP وRemotePort_decimal وImageFileName وUserName و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
هذا الاستعلام مستوحى من بحث Red Canary. للشرح باللغة التايلاندية، يرجى الاطلاع على مدونتنا.
الفكرة:
DNSRequest.ContextProcessId في DNSRequest مع TargetProcessId في حدثي ProcessRollup2 وSyntheticProcessRollup2.TargetProcessId_decimal الخاص بـ Explorer.exe من حدث ProcessRollup2، ثم الربط مع البحث الفرعي المتداخل الداخلي المسؤول عن العثور على PowerShell.exe الذي يمتلك نفس ParentProcessId_decimal كقيمة TargetProcessId_decimal الخاصة بـ Explorer.exe.انتبه إلى أنه عند استخدام ParentProcessId_decimal، قد تحتاج إلى تمديد نطاق البحث لفترة أطول من المعتاد؛ لأن بعض العمليات، خاصة عمليات النظام، عادةً ما تكون مدة تشغيلها (uptime) طويلة ولكنها قد تتعرض للاستغلال مؤخرًا.
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
هذا الاستعلام مستوحى من بحث MENASEC.
لدى CrowdStrike فئة أحداث تُسمى RegSystemConfigValueUpdate لهذا النوع من السلوك. ومع ذلك، فإن LastLoggedOnUser وLastLoggedOnSAMUser لا يُعتبران ضمن إعدادات النظام. لذلك، يمكننا فقط اكتشاف محاولات تعديل RDP-Tcp\PortNumber.
event_simpleName="RegSystemConfigValueUpdate" AND RegObjectName="*\RDP-Tcp" AND RegValueName="PortNumber"
| rename RegNumericValue_decimal as "NewRDPPort"
| table timestamp, ComputerName, NewRDPPort
هذا الاستعلام مستوحى من بحث MENASEC
لا توجد أحداث متعلقة بهذا النشاط
ComputerName وtimestamp وImageFileName وDomainName وCommandLine.