Microsoft Defender for Cloud の推奨事項/セキュリティスコアをチューニングする

# はじめに
Microsoft Defender for Cloud では、対象の Azure サブスクリプションに対してセキュリティスコアが採点され、Azure セキュリティベンチマークを基準にした推奨事項が表示されます。
ただ、デフォルトの推奨事項の内容が自社環境の基準と合わず、チューニングをしないまま放置してしまいセキュリティスコアや、推奨事項の内容が残ったままになっていたりしませんか？

本記事は、Microsoft Defender for Cloud 運用の最初の登竜門となるであろう誤検知チューニングについてご紹介いたします。

# チューニング方法サマリー
Microsoft Defender for Cloud の推奨事項チューニングは、以下のような方法が提供されています。
ルールそのものを無効化する 1 案以外は、全て例外設定によるチューニング方式になります。


| レベル | 手法 | チューニングする対象 | 概要 | 活用 |
| ---- | ---- | ---- | ---- | ---- |
| 1 | 環境設定から事前に用いないルールを除外する | サブスクリプション | - 環境設定から「適用除外の作成」を用いて、事前にルールを除外する<BR>- 除外設定からルールそのものを無効化する（オプション） | 自社に適合しない推奨事項を元から無効化する |
| 2 | 例外設定で管理グループ単位で無効化する | 管理グループ | Defender for Cloud からルールの例外設定を用いて、管理グループ単位で無効化する | 管理グループを利用しているケース<BR>グループ毎にポリシーを分ける |
| 3 | 例外設定でサブスクリプション単位で無効化する | サブスクリプション | Defender for Cloud からルールの例外設定を用いて、サブスクリプション単位で無効化する | 個々のサブスクリプション毎に有効・無効をチューニングする（例：本番環境/検証環境で分かれるなど） |
| 4 | 例外設定でリソース単位で無効化する | リソース | Defender for Cloud からルールの例外設定を用いて、各リソース単位で無効化する | 個別のリソース毎に有効化/無効化を検討したいケース |


# チューニング方法概要
## <a id="sec1"></a>1.ルールを事前に無効化する
Microsoft Defender for Cloud の推奨事項は「ASC Default」といった Azure Policy によって動作しています。個々のパラメータについては、Microsoft Defender for Cloud の環境設定より、「セキュリティポリシー」-> 「ASC Default (subscription: XXX)」を選択し、「適用除外の作成」をクリックすると、Azure ポリシーのリストから事前に除外する設定を行うことが出来ます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/653790/e28a793b-ef86-82af-79af-b145aee04517.png)

適用除外の作成を選択すると、対象のレベル（全体を選択するのであればサブスクリプション）を選ぶことが出来ます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/653790/5eb9b845-2174-1905-bedb-42959fde7c57.png)

その後、個々の Azure ポリシールールを一括で無効化することが出来るようになります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/653790/0bd17a7e-6f9a-b2df-50dc-b26e1392f18e.png)

試しに、全ルールを無効化して反映させてみます。（全ルールが除外対象ポリシー）
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/653790/54264023-40a0-1266-44e0-a4136e88cb65.png)

すると、推奨事項の画面からは、セキュアスコアが100%になることを確認しました。
リソース側のチェックは出来ているので、Azure Policy のルールは動作していますが、セキュアスコアの対象からは外れていることが分かります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/653790/2b757e42-cd31-56b7-cacb-f8b910a7289c.png)

推奨事項のルールそのものを無効化する場合は、環境設定の「セキュリティポリシー」より、「割り当ての編集」を選択すると、パラメータ画面から設定することも可能です。こちらの場合は、ルールの判定も行わない設定になりますので、ケースに応じて使い分けると良いのではと思います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/653790/4a3ca31e-96e5-7be4-cd57-99549d94437a.png)



## <a id="sec2"></a>2.例外設定を用いて、「管理グループ」単位で無効化する
Microsoft Defender for Cloud の推奨事項の個別事項から、"Exempt"ボタンを選択すると適用除外を選択することが出来ます。適用除外の最大値は管理グループ単位で無効化をかけることが出来ます。
※この設定は、事前に管理グループを設計・設定し、対象の管理グループに対して「Azure セキュリティベンチマーク」の割り当てを行う必要があります。設定後は階層配下のグループに対して、MG (管理グループ）ユニット単位での無効化を設定することが出来るようになります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/653790/bc929913-1724-4a40-9f9a-ff9d6e582611.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/653790/592d286d-e454-c24c-a710-17ff7efdb439.png)

## <a id="sec3"></a>3.例外設定を用いて、「サブスクリプション」単位で無効化する
一番多いチューニングはこちらの設定になるのではないかと思います。
個々の CSPM 推奨事項に対して、「サブスクリプション」単位で無効化をチューニングする方法です。
サブスクリプション分割では、本番/検証/開発といったステージング環境や、重要なリソース（例：機密情報など）を保管するサブスクリプションといった単位での分割を行うことが多いです。
Microsoft Defender for Servers/SQL/KeyVault/Storage/AppServices などの脅威検知サービスを必須にする、しないといった推奨事項など、サブスクリプション単位で管理するのが良いのではと思います。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/653790/fa02f09b-cc42-73d4-b9be-d2511cf9b2d2.png)

## <a id="sec3"></a>4. 例外設定を用いて、「リソース単位」で無効化する
最小の例外設定は個別リソース毎の設定になります。
サブスクリプション内において、個々のリソース毎に推奨事項の例外ルールを設定する場合は、「選択したリソース」から個別のリソースを選択して例外設定を行いましょう。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/653790/745be254-a8e9-ddbc-e73d-e6783db82ffb.png)

なお、2 ～ 4 の例外設定を行った場合は、推奨事項にルール名は表示されます。
ルール内容の詳細を見ると「Not applicable resources」として対象外と設定されていることが分かります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/653790/51cd4c42-83e6-f33b-4870-694a5533b33e.png)


# まとめ
Microsoft Defender for Cloud の運用観点から、最初の登竜門となる推奨事項チューニングについてまとめてみました。どなたかの参考になれば幸いです。

＊本稿は、個人の見解に基づいた内容であり、所属する会社の公式見解ではありません。また、いかなる保証を与えるものでもありません。正式な情報は、各製品の販売元にご確認ください。