AWS Security Hub を有効化する

# はじめに

AWS Security Hub の機能の中に、AWS が考えるセキュリティのベストプラクティスに沿っていないものを検出してくれる機能があります。例えば、Security Group が不用意に開放されしまっていることや、S3 Bucket が Public 公開されている点を検出してくれます。自分たちでリソースを一つずつ確認していくのは大変な作業なので、セキュリティ対策の第一歩目として検出結果から検討をしていくことも出来ます。



AWS Security Hub を有効化する手順を、1ステップずつ載せていきます。



# 検出結果の例

AWS Security Hub を使うと、セキュリティのベストプラクティスに沿っていないものを自動検出できます。次の画像が、検出結果の例です。

![image-20220616013655742.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/9d9baef9-fe61-79cd-bf79-3d5d805b6e4e.png)



検出された結果が重要度と共に一覧化されています。タイトルをクリックすると、検出された詳細な情報と、検出対象の AWS リソースを確認できます。また、修復手順をクリックすることで、詳細な AWS Document を確認することもできます。

![image-20220616014223386.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/4110527a-1f63-cada-3e4b-c18f140847d1.png)



# AWS Config の有効化

AWS マネージメントコンソール上部の検索ボックスに **Config** と入力して、出現した **Config** を選択します

![image-20220616011935532.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/4a5ba19d-ed53-aed4-73f8-126f7f626cd7.png)



**今すぐ始める** を選択します

![image-20240719121836876.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/506f026a-512e-c8fd-d6ee-282b551b8871.png)



**カスタマイズ可能なオーバーライドのあるすべてのリソースタイプ** を選択します。そして、リソースタイプにある グローバルに記録されたすべての IAM リソースタイプを **削除** を押します。Security Hub で IAM に関するセキュリティ基準のチェックをしたいので、記録をするために削除をおします。

![image-20240719122551459.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/aa0819ea-6b78-d80d-b20a-f4f7a8a0973d.png)



このまま **次へ** を押します。

![image-20240719122833492.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/d1c43325-e8a3-1fbb-d856-1e36a78659db.png)



ルールは何も選択せず、そのまま **次へ** を押します。必要に応じて有効化していただいて問題ありません。

![image-20220616012349233.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/9eae32f5-9b86-822f-1762-69daf938be43.png)



**確認** を押します

![image-20240719122923869.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/5efad56e-cb8d-3285-fcd9-7dda94cac31f.png)



AWS Config が有効化されました。

![image-20240719123001457.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/bf3b56b1-61a6-d8e2-5012-263fdd857fbf.png)



# AWS Security Hub の有効化

AWS マネージメントコンソール上部の検索ボックスに **Security Hub**と入力して、出現した **Security Hub** を選択します

![image-20220616012642758.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/97de3c74-a0b1-7652-e26c-6a2e08c99620.png)



**Security Hub に移動** を選択します

![image-20220616012719749.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/eb675c9f-d517-695f-8eb9-d375c273cfe9.png)



確認したいセキュリティ基準を **チェックオン** にしたあとで、**Security Hub の有効化** を押します。特にこだわりが無ければ、まずは基礎セキュリティの 1 つをチェックオンでよいと思います。あとから追加が可能です。

![image-20240719123343362.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/1eb3eaac-28ac-47fc-488c-49afcb84498c.png)



有効化ができました。2 時間ほど後に Security Hub の検出結果が表示されるはずです。

![image-20240719123440925.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1002774/3e67cb93-ea79-9d3d-b118-f3d183fd4ec1.png)



# Security Hub で「データなし」になる原因

網羅しているわけではないですが、いくつかの原因が考えられます。

- AWS Config のレコード記録で、「グローバルリソース」を記録していない
  - ※ AWS アカウント内のうち、1個のリージョンでグローバルリソースを有効にする。複数のリージョンで有効にすると、重複した検出を行うためコストが若干もったいない
- AWS Config に付与している IAM Role の Policy が不足している