Hello there, ('ω')ノ
PowerShellをつかってフレームワークで、アトミックテストを実行するのに。
使用できるメソッドは、ローカルとリモートがあって。
「ローカル」メソッドでは、フレームワークがインストールされているのと。
同じマシン上でアトミックテストを実行します。
「リモート」メソッドでは、フレームワークが 1 台のマシンにインストールされて。
PowerShellでリモート処理セッションを介して。
リモート マシンでアトミック テストを実行して。
リモート実行については、下記のサイトに書いてあって。
https://github.com/redcanaryco/invoke-atomicredteam/wiki/Execute-Atomic-Tests-(Remote)
今回は、T1218.010について。
コンマ区切りで、名前または番号で複数のテストを実行でて。
Invoke-AtomicTest T1218.010 -TestNumbers 2,3
もしくは、
Invoke-AtomicTest T1218.010 -TestNames "Regsvr32 remote COM scriptlet execution", "Regsvr32 local DLL execution"
テスト#2の実行中にアクセスが拒否されたのは。
Windows Defender がこの攻撃手法をブロックした結果で。
この2つのテストは、Windows 10 にない計算アプリを起動しようとしていて。
Windows Defender を無効にして。
リアルタイム保護を無効にして。
Set-MpPreference -DisableRealtimeMonitoring $true
再度、下記を実行すると正常に実行されて。
Invoke-AtomicTest T1218.010 -TestNumbers 2
他には、特定のT#内のすべてのテストを実行する場合は、下記のとおりで。
Invoke-AtomicTest T1218.010
実行すると、アトミック テスト定義のYAMLファイルの場所が表示されて。
PathToAtomicsFolder = C:\AtomicRedTeam\atomics
また、各アトミック テストには、GUIDと呼ばれる一意の識別子があって。
Atomic Test GUID: 449aa403-6aba-47ce-8a37-247d21ef0306
YAMLファイルや各テストの詳細で確認できて。
テスト名や番号の代わりにGUIDを指定してテストを実行することも。
Invoke-AtomicTest T1218.010 -TestGuids 449aa403-6aba-47ce-8a37-247d21ef0306
それからアトミックテストのログは下記で確認できて。
cat $env:TEMP\Invoke-AtomicTest-ExecutionLog.csv
Excelで表示すると読みやすく。
Best regards, (^^ゞ