sysmonログ活用虎の巻 ~情報まとめ~

はじめに
----
- sysmonを簡易EDRとして使う記事を作成してから**1**年以上経過しました。
    - [Splunkと一緒に。簡易EDRツールとしてのsysmonの真価に迫る ~その1: 概要編~](https://qiita.com/odorusatoshi/items/cb9e1cad00b5eb9efe9b)
- sysmonはその間も拡張を重ねて、2020.08.03時点で**Ver11**まで進化しています（当時はVer9、10あたり）
- 今後のsysmon活用に関する情報アップデートをこちらに追記していきます
- リモートワークが前提となり、社内LANを通らない環境が当たり前になってきた場合、エンドポイント上のフライトレコーダーの役割を担う**sysmonは必ず調査の助け**になると思いますのでご参考ください。

更新履歴
----
- 2020.08.03 新規作成
- 2020.08.18 イベント毎のkey,valueのスクショサンプルを追加
- 2020.11.20 相関ルールの参照元を追加
- 2021.02.16 EventID 24&25 追加

新たなsysmon NEWSを知る術!
---
- Twitterで以下アカウントをフォローしておく。目が怖いのと。オラフw
    - **SwiftOnSecurity**
    - **olafhartong**


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/22b25c83-7555-eb2b-9bf8-24b4f6e678ce.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/705bf41c-7e8d-4587-6a5b-0d91185bff5a.png)

sysmonのconfig設定Tips
----
- sysmonでFullロギングするとデータ量の割にノイズもおおく調査が困難になるので、sysmon用のconfigを準備します。
    - ↑SplunkのForwarderでは高度なロギングフィルタができないため
- sysmonロギングの**友**の紹介
    - [SwiftOnSecurity](https://github.com/SwiftOnSecurity/sysmon-config/blob/master/sysmonconfig-export.xml)
        - まず最初に参考にするならこれ。こちらのベースに対して、追加でinclude/excludeをカスタマイズしていく
    - [Olaf - sysmon-modular](https://github.com/olafhartong/sysmon-modular)
        - 次にこちらも参考に。MITER ATT&CKのTTPに基づいた、EventIDごとにconfigを用意してくれているので見やすい
- v11になったことでconfig内のscheme番号がかわっていますので変更すること。[参考](https://github.com/odorusatoshi/sysmon-config/blob/master/v4.3_sysmonconfig-export.xml)までに
   
       `<Sysmon schemaversion="4.3">`

EventIDごとのメモ
----
- **特にロギングしておきたいEventID**について説明

### Event Code 1: Process creation
- **マスト**です。不審なプロセス起動の証跡記録ができます
- CommandLineとParentCommandLineとHashesあたりをよくチェックします。

![スクリーンショット 2020-08-18 10.45.15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/392c6901-40db-2f8b-f3c9-8206351bec5d.png)

### Event Code 3: Network Connection
- 不審なプロセスが疎通する外部IPと脅威情報(IP Intelligence)の突合調査ができます
- どのapp（プロセス）がdestipとdestportを使っていたのかチェックします。

![スクリーンショット 2020-08-18 10.47.11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/02ecc318-5c69-03d9-be56-827e569ed8ed.png)

### Event Code 11: File creation
- プロセスが実行されないものの、ファイル作成されたイベントからhash値やファイル名調査ができます
- appによって作成されたTargetFilenameが記載されます。

![スクリーンショット 2020-08-18 10.50.21.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/b1c994a5-b309-fd80-45b0-6f7ed61cee8e.png)


### Event Codes 12, 13, 14: Registry key creation, deletion, and modification
- 不正プログラムによるレジストリ改変の兆候を記録します
    - https://attack.mitre.org/techniques/T1112/
- appがTargetObjectに対してどんなアクション（signature）を実施したかチェックします。

![スクリーンショット 2020-08-18 11.03.38.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/b8592daa-29d3-10a7-9075-2dc10afcf40e.png)

### Event Code 15: Alternate Data Stream creation
- インターネットからダウンロードされた不審ファイル（特に.bat、.vbs、.ps1、.cmdなどを含むファイル）の監視します
- appがダウンロードしたファイル（TargetFilename）をチェック

![スクリーンショット 2020-08-18 11.19.37.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/0f66b5df-12a2-6182-9508-1b8132b01916.png)


### Event Codes 17 and 18: Pipe creation and connection
- CobaltStrikeなどの攻撃ツールにて利用する名前付きパイプを使った横展開の活動を記録します
    - https://blog.cobaltstrike.com/2015/10/07/named-pipe-pivoting/）
    - https://blog.menasec.net/2019/04/detecting-namedpipe-pivoting-using.html
- Configルールの参考情報
    - https://github.com/olafhartong/sysmon-modular/tree/master/17_18_pipe_event

![スクリーンショット 2020-08-18 12.16.50.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/fd7a053d-eeeb-545c-b795-c245f4845a48.png)

### Event Codes 19, 20, and 21: WMI
- マルウェア（Nytetyaなど）が横展開活動を行う際にWMIを使う際の活動を記録します
- Configルールの参考情報
    - https://github.com/olafhartong/sysmon-modular/tree/master/19_20_21_wmi_event

### Event ID 22: DNSEvent (DNS query)
- 不審なプロセスが名前解決を行う外部ドメインと脅威情報(Domain Intelligence)の突合調査ができます
- QueryResultsがある時、QueryStatus=0になっている模様。なので名前解決に成功した場合がStatus=0になると理解しています。

![スクリーンショット 2020-08-18 12.22.18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/57b66517-3f4e-58bc-088c-dc5f7362a98a.png)


### Event ID 23: FileDelete (A file delete was detected)
- 攻撃者による証拠隠蔽の挙動を記録します
- Configルールの参考情報
    - https://github.com/olafhartong/sysmon-modular/tree/master/23_file_delete
- file削除は何でも記録しているので指定フォルダ配下のみを監視対象とするなどのinclude/exclude条件が必須

![スクリーンショット 2021-02-16 16.25.07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/bb2ec819-1e67-7159-1a7e-25fb38be81ee.png)



### Event ID 24: ClipboardChange (New content in the clipboard)
- Clipboard利用に関するイベントの解説 by falconforce
    - https://medium.com/falconforce/sysmon-12-0-eventid-24-31e0109c78e3
- Clipboardを使用したimage(プロセス)が記録されるが具体的に何がClipboardに利用されているかは分からない。。
- notepadに対してテキストのコピペした時にも記録されるのでconfigにてinclude/exclude条件を絞る必要あり

![スクリーンショット 2021-02-16 16.13.44.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/c6f1bfeb-7634-1b0c-c079-92dd531c5f41.png)


### Event ID 25: ProcessTampering (Process image change)
- 別のプロセスなどの外部ソースからprocess imageが変更されたときに発生
- 変更されたimage(process)が記録されるが、何が原因で変更されたかまではわからない。
- EventID:1 や EventID:11と併用してチェックする必要あり
 
![スクリーンショット 2021-02-16 16.14.32.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/3e0e3e67-f0be-6a57-ad43-02b1bdc176b0.png)


sysmonログを活用した分析ルールの参考
---

### Splunk Security Essentials
- [これ](https://splunkbase.splunk.com/app/3435/)を使えば間違いなし
![スクリーンショット 2020-11-20 8.48.53.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/bd754bd8-f80b-244f-3926-635210b1cfa7.png)

- Data SourceにてEDRを選択するとsysmonを使った分析ルールにフィルタされます
![スクリーンショット 2020-11-20 8.52.03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/63311cd3-0404-3431-123f-0447beb4b84e.png)

- 使い方の詳細はこちらの記事を参考ください
    - [無償のSplunk Security Essentialの使い方！](https://qiita.com/odorusatoshi/items/201af5bb1bbc40b832bc)

### Splunkmon — Taking Sysmon to the Next Level
- CRYPSIS社が用意したwhitepaper
    - https://www.crypsisgroup.com/splunkmon-taking-sysmon-to-the-next-level
- 疑似攻撃を実施した際に発生したsysmonイベントのログを見ながらサーチ方法の紹介をしているので非常に分かりやすいです。
![スクリーンショット 2020-11-20 9.11.39.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/6f560107-f534-77b6-80c0-185008727dd9.png)

### その他情報ソース

- 引用元:How to Go from Responding to Hunting with Sysinternals Sysmon
    - https://www.rsaconference.com/industry-topics/presentation/how-to-go-from-responding-to-hunting-with-sysinternals-sysmon

- 引用元:Advanced Incident Detection and Threat Hunting using Sysmon (and Splunk)
    - https://www.botconf.eu/wp-content/uploads/2016/11/PR12-Sysmon-UELTSCHI.pdf

- 引用元:Mimikatz実行痕跡の発見手法(IIJ)
    - https://www.iij.ad.jp/dev/tech/techweek/pdf/171108_02.pdf