Threat HuntingとMITRE ATT&CKとSplunk


はじめに
---
- Splunkをセキュリティ監視で利用する際に、[SSE](https://qiita.com/odorusatoshi/items/201af5bb1bbc40b832bc)や[ESCU](https://splunkbase.splunk.com/app/3449/)、Threat Intelligenceといった攻撃を検知するためのテクノロジーが用意されている
- ただし、SSEやESCUのappに含まれるスケジュールサーチ条件を単純に全部有効化しても**有効活用は難しい**。理由は。
    - ルール一つ一つの意味を理解し、過検知を緩和するチューニングが必要
    - マシンスペックの限界（同時サーチ実行数の上限）を迎えるから

- **いきなり100点の監視を目指す前に、自分たちのできる所から監視レベルを強化していくため**に参考となる以下のフレームワークを元にSplunkの各種appや機能をまとめてみた
    - [MITRE ATT&CK](https://attack.mitre.org/)
    - [The Pyramid of Pain](https://detect-respond.blogspot.com/2013/03/the-pyramid-of-pain.html)
- 注意：**個人の見解です**


対策の考え方
---
- 参考となるフレームワークの一つとしてSqrrl社※の提唱するThreat Hunting Maturity Modelという考え方がある
    - https://medium.com/@sqrrldata/the-cyber-hunting-maturity-model-6d506faa8ad5
    - ※ 2018年にはAmazonに買収されたアメリカのセキュリティ企業です。

 ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/475e7c79-601b-9b90-4d5e-5c763958e161.png)

### Level0
- IDS/SIEMのアラートを**リアクティブ※**に対応する。ただしログ分析のための集約がされていない状態。
    - ※リアクティブな対応はThreatHuntingではなくIncident Response

![スクリーンショット 2020-12-15 9.37.27.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/2e9659e7-0ac9-e13e-bb49-6d7579c8b374.png)

- Level1以降のイメージは後述します。

具体的な対策方法
---
- Sqrrl社のDavidJBiancoが説明する「痛みのピラミッド」（**個人的に大好きな整理の仕方**）を元にMITRE ATT&CKやYARAルールやTIなどの各種技術がどこに相当する対策なのか整理されています
- 痛みのピラミッドのコンセプトは**「調査が容易なhash値やIPアドレスの情報は、攻撃者にとってもすぐに変更できてしまう情報のため、いくら見つけて止めてももぐらたたき的な作業になってしまう。攻撃を見つけるために効果の高いインヂケーターはなんでしょうか？それは、一番上の攻撃側の手法を理解し、それに合わせた監視を行うことです。大変タフな作業ですが攻撃者にとっても一番手強い相手になります。」**ということを表しています。

![スクリーンショット 2020-12-15 10.09.46-min.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/964202e9-a8b8-2aac-3be9-956a1987b32f.png)

- 上のイメージは痛みのピラミッドのフレームに合わせて、前述したThreat Hunting Maturity ModelのLevel1とLevel2をマッピングしてみました。

- その上で、SplunkおよびSplunk Enterprise Securityの機能をマッピングしてみます。

![スクリーンショット 2020-12-15 10.00.42-min.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/d3032690-6cf5-e491-c185-9c1d591ff4dd.png)

- **ここで気づいていただきたいのは、SSEやESCUで提供されるルールはLevel2相当である点です。より攻撃者の視点に近い場所でログ分析をする必要があります**

- 各LevelごとにSplunkを利用した場合の調査フローイメージを重ねてみます。

### Threat Hunting Maturity Model Level1
- 一部の脅威インテリジェンスを活用し、基本的なログ集約もできている状態

- Splunk Core利用ユーザなら
    - 特定の脅威インテリジェンスを連携するappを利用
    - エンドポイント横断調査画面などを用意できている
    
![スクリーンショット 2020-12-15 9.39.46.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/af64e6f2-78e6-7824-049a-a986fd9da40f.png)

- Splunk Enterprise Security利用ユーザなら
    - Threat Intelligence Frameworkを利用して複数の脅威インテリジェンスを連携
    - インシデントレビューページを利用して、アラートとアセットを一元可視化
    
![スクリーンショット 2020-12-15 9.46.25.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/4e5c51dc-3954-4980-1472-5f7fab3cbe68.png)

### Threat Hunting Maturity Model Level2
- 第三者提供の脅威情報を活用する、企業全体からログを集約している（データ収集ルールが浸透している）状態
    - **目指したい姿（正直、ここまでできているだけでもすごいと思う）**
    - Splunk ES前提となっている理由は、データ収集ポリシーが運用されていて複数の異なるベンダー製品のログが1つのSIEM基盤に集まっている場合CIM化された高速化データモデルを利用する方がはるかに便利です。そのためCIMデータモデルをあますことなく活用できるEnterprise Securityを利用するほうがどう考えても楽です。

![te-min (1).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/185759/e3e5d49f-2628-ed1f-f190-7b09d921b781.png)

- **リスクスコア分析**
    - MITRE ATT&CKのルール１つ１つにリスク値をもたせて、システム/ユーザ単位にスコア加重をして一定のスコアを超えた対象をアラート調査する考え方。2020年の.confセッションでも活用セッションが増えていた注目の考え方

### Level3 / Level4 以降はイメージがついてないので割愛させていただきます。
- 独自のTI活用や、独自TIの共有がテーマになっています。


まとめ
---
- Threat Huntingに有効な分析手法としてMITRE ATT&CKフレームワークが利用できる
- MITRE ATT&CKフレームワークに基づいた分析ルール/サーチ条件はSplunkのESCU/SSEを参考に試すことができる
- ただしThreat Huntingに至る前に、Threat Intelligence(IP,URL,Domainなど)を活用したLevel1の実現が先