Task2 Event Viewer
Windowsシステム内でイベントログにアクセスする方法
- イベントビューア(eventvwr.msc)
- Wevtutil.exe
- Get-WinEvent
ログファイルの保存場所
C:\Windows\System32\winevt\Logs
Task3 wevtutil.exe
ヘルプ
wevtutil.exe /? wevtutil.exe [COMMAND] /?
タスク2の解答
- Powershellを起動後、
wevtutil.exe el | Measure-Object
で確認。 wevtutil.exe qe /?
の1行目の出力を確認。wevtutil.exe qe /?
の/{lf | logfile}
の行を確認。wevtutil.exe qe /?
の/{q | query}
の行を確認。- 解答不要。
- Application
wevtutil.exe qe /?
の/{rd | reversedirection}
の行を確認。wevtutil.exe qe /?
の/{c | count}
の行を確認。
Task4 Get WinEvent
フィルタリング(基本)
Get-WinEvent -LogName Application | Where-Object { $_.ProviderName -Match 'WLMS' }
フィルタリング(ハッシュテーブル)
Get-WinEvent -Filterhashtable @{ LogName='Application' ProviderName='WLMS' } # 使用例 Get-WinEvent -FilterHashtable @{LogName='Microsoft-Windows-PowerShell/Operational'; ID=4104} | Select-Object -Property Message | Select-String -Pattern 'SecureString'
タスク4の解答
- 解答不要。
- Get-WinEventのオンラインヘルプの Example1のコマンドを実行した結果を確認。
- Get-WinEventのオンラインヘルプの Example8のコマンドの"Policy"部分を"*PowerShell+"に変更して実行した結果を確認。
- Get-WinEventのオンラインヘルプの Example9のコマンドを
| Measure-Object
のようにパイプで渡して出力された結果を確認。 - -MaxEvents
- ここの「Filterling by Level」の欄に載っている。
Task5 XPath Queries
使用例
# アプリケーションログからイベントIDが100のイベントを表示 Get-WinEvent -LogName Application -FilterXPath '*/System/EventID=100' # アプリケーションログからプロバイダー名が"WLMS"にマッチするイベントを表示 Get-WinEvent -LogName Application -FilterXPath '*/System/Provider[@Name="WLMS"]' # アプリケーションログからイベントIDが101でかつプロバイダー名が"WLMS"にマッチするイベントを表示 Get-WinEvent -LogName Application -FilterXPath '*/System/EventID=101 and */System/Provider[@Name="WLMS"]' # セキュリティログからTargetUserNameが"System”にマッチするイベントを表示 Get-WinEvent -LogName Security -FilterXPath '*/EventData/Data[@Name="TargetUserName"]="System"'
タスク6の解答
Get-WinEvent -LogName Application -FilterXPath '*/System/Provider[@Name="WLMS"] and */System/TimeCreated[@SystemTime="2020-12-15T01:09:08.940277500Z"]'
Get-WinEvent -LogName Security -FilterXPath '*/EventData/Data[@Name="TargetUserName"]="Sam" and */System/EventID=4720'
- 2の実行結果を確認。
- 2の実行結果を確認。
- 2の実行結果を確認。
- 2の実行結果を確認。
Task6 Event IDs
リソース
Task7 Putting theory into practive
タスク7の解答
- PowerShellダウングレード攻撃についてGoogleで検索。
- cdでC:\Users\Administrator\Desktopに移動した後、
Get-Winevent -path .\merged.evtx -FilterXPath '*/System/EventID=400'
を実行し結果を確認。 - Googleで「log clear event id」等で調べると、ID=104が出てくるのでイベントビューアでID=104でフィルタする。結果は1つのみなのでそのイベントの詳細画面のXML Viewを表示し、「Event Record ID」欄を確認する。
- 3と同じ画面で「Computer」欄を確認する。
Get-Winevent -path .\Desktop\merged.evtx -FilterXPath '*/System/EventID=4104 and */EventData/Data[@Name="ScriptBlockText"]' -oldest -maxevents 1 | fl -property *
の結果を確認。- 5の結果から「TimeCreated」欄を確認
- 5の結果から「ProcessID」欄を確認。
- Googleで「Administrators Group Sid」と検索してみる。Microsoftのページがヒットしたので、内容を確認。BuiltinのAdministratorsグループのSIDの情報が記載されている。
- Googleで「Windows Event ID group enumerate」と検索してみると、4788、4799の情報が出てくる。内容を確認すると解答としては4799が相応しそう。