CrowdStrike Falcon による脅威ハンティングのための Splunk Search Processing Language (SPL) コレクション
i-secure co., Ltd. の Intelligent Response チームによって開発・保守されています。
このクエリは Red Canary のリサーチ に着想を得ています。タイ語での説明は 当社ブログ をご覧ください。
考え方:
NewExecutableRenamed がすでにあることが判明しました。NewExecutableRenamed イベントの TargetFileName フィールドを、ProcessRollup2 イベントの ImageFileName フィールドで利用可能なファイル名と関連付けます。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 イベントを使用します。DnsRequest イベントの ContextProcessId フィールドを、ProcessRollup2 イベントの TargetProcessId と関連付けます。ComputerName、timestamp、ImageFileName、CommandLine を列とする結果テーブルを作成します。このハンティングクエリではフィルタリング用に既知の LOL バイナリ/ファイルの一覧が必要なため、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 を ProcessRollup2 イベントの TargetProcessId_decimal と関連付けます。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 イベントで特定します。DNSRequest の ContextProcessId フィールドを、ProcessRollup2 イベントと SyntheticProcessRollup2 イベントの TargetProcessId と関連付けます。ProcessRollup2 イベントから Explorer.exe の TargetProcessId_decimal を特定します。次に、Explorer.exe の TargetProcessId_decimal と同じ ParentProcessId_decimal を持つ PowerShell.exe を見つける役割を担う内側のネストされたサブサーチと結合します。ComputerName、、、、 を列とする結果テーブルを作成します。ParentProcessId_decimal を使用する場合は、検索範囲を通常よりも長くする必要があることに注意してください。一部のプロセス、特にシステムプロセスは通常稼働時間が長いですが、最近悪用される可能性があるためです。
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 のリサーチ に着想を得ています。
このアクティビティに関連するイベントはありません
timestampImageFileNameDomainNameCommandLine