fu3ak1's tech days

何事もシンプルに。主にAWS関連の記事を書いています

AWS Organizationsを活用したマルチアカウントのセキュリティサービス使用方法 ~7. Security Hub~

Organizationsシリーズ第七弾、SecurityHub編です。

Organizationsの紹介(はじめに編)はコチラ

前回はコチラ

AWS Security Hubとは

AWS Security Hub(以下、Security Hub)は、AWSアカウント内のセキュリティ状況やコンプライアンスの準拠状況を一箇所で確認できるサービスです。以下2種類の検出が可能です。

  • CIS AWS Foundations BenchmarkやPCI DSSといった基準に従ったコンプライアンスチェック
  • GuardDuty、Macie、Inspector、Firewall Manager、IAM Access Analyzerといった各種AWSのセキュリティサービスや3rd Partyのセキュリティサービスの検出、アラートの一元管理

過去に紹介したGuardDutyやIAM Access Analyzerの情報もこのSecurity Hubに集約して確認できます。

Organizationsを使用したマルチアカウント設定

Security Hubはアカウントの委任に対応しているため、マネジメント(親)アカウントではなくauditアカウントに集約する方針で設定していきます。

手順は以下のとおりです。

  1. メンバーアカウントへ委任
  2. Security Hubの有効
  3. 検出結果の確認

設定手順

実際にやっていきます。なお、前提としてSecurity Hubは全アカウントで無効状態から開始します。

1. メンバーアカウントへ委任

マネジメント(親)アカウントにログインし、Security Hubの画面へ遷移します。

初回は以下のように表示されるので、Security Hubに移動をクリックします。

f:id:fu3ak1:20210114221228p:plain

Security Hubの有効化画面が表示されますが、ここではまだ有効にせず、一番下に行きアカウントの委任を実行します。

f:id:fu3ak1:20210114221540p:plain

委任完了です。委任だけではSecurity Hubは有効になりません。

f:id:fu3ak1:20210114221652p:plain

2. Security Hubの有効

まずは、管理者として委任したauditアカウントにログインして有効にします。

f:id:fu3ak1:20210114221855p:plain

有効化後、設定ページを開くと以下のようにOrganization組織内のManagementアカウントとsystem01アカウントが表示されます。 一括でSecurity Hubを有効化できそうなボタンが表示されたのでこれを押下してみます。

f:id:fu3ak1:20210114222429p:plain

以下のようなメッセージが表示されます。警告用途かと思いますが、組織内に一律自動有効したい場合にはありがたい内容ですね。

f:id:fu3ak1:20210114222558p:plain

有効化すると以下のとおり、system01のみ有効になりました。組織のManagementアカウントは自動有効とならないようです。

委任前にManagementアカウントで組織単位で有効化すれば一気に全有効化できたかもしれません。(少し後悔)

f:id:fu3ak1:20210114223218p:plain

Managementアカウントの有効は、Managementアカウント自身で行う必要があるようなので、ログインして有効化します。

f:id:fu3ak1:20210114224149p:plain

Managementアカウントで有効になったら、再びauditアカウントにログインして戻ってきて、Memberに追加します。

f:id:fu3ak1:20210114224503p:plain

無事Memberになりました。

f:id:fu3ak1:20210114224712p:plain

3. 検出結果の確認

1ヵ所で集約できるはずなので、結果を見てみます。

GuardDutyを見てみます。Managemenetアカウントで、GuardDutyのサンプルイベントを発行しました。 auditアカウントで以下のように表示されています。

f:id:fu3ak1:20210114232210p:plain

無事、別アカウントの結果が見れました。と思ったのですが、少し疑問が残ります。 GuardDuty側ですでに情報の集約をしているので、GuardDuty側でauditに集約された情報があがってきている可能性もあります。

とゆうことで、コンプライアンスチェックについても別アカウントの情報が見れるか確認してみます。

コンプライアンスチェックは有効後、時間がかかるので1時間ほど待ちました。

以下のように、auditアカウントのSecurity Hubで、system01のコンプライアンスチェックが見えています。1アカウントに集約できていますね。

アカウントIDで情報をフィルタできるのでそれを使用しました。

f:id:fu3ak1:20210114233047p:plain

設定検証は以上です。

さいごに

今回はSecurity Hubの通知設定までは行いませんでしたが、EventBridgeを使用することで通知を行うことができます。すべての結果を通知してしまうとかなりの数になるので、あらかじめフィルタする情報は検討して通知を検討したほうが良いでしょう。

集まる情報量も多いので、まずは定期的にセキュリティ情報を確認する場所としてSecurity Hubを使用するのもありだと思います。

次回はAmazon Detectiveの予定です。

次回はコチラ