SCPによるAWS IAM Access Analyzer、AWS Security Hub、Amazon Detectiveの無効化拒否設定

記事タイトルとURLをコピーする

こんにちは! CS課でOJTをしていた日高です!

AWS Organizationsを利用していてセキュリティサービスの無効化・削除を拒否したい場合ってよくあるケースだと思います。
本記事ではOJT期間中に検証する機会があった IAM Access Analyzer、AWS Security Hub、Amazon Detectiveの無効化・削除拒否のSCPをご紹介したいと思います。

AWS IAM Access Analyzer

AWS IAM Access Analyzerの概要

AWS IAM Access Analyzer は、AWSリソースに紐付いているポリシーを検査し、他AWSアカウントや外部のインターネット等からのアクセスを可能とするような設定がされているか否か、つまり管理者として"意図せぬ公開設定がされていないか"を検出および可視化してくれる機能となります。

新規または更新されたポリシーを継続的に監視し、付与されたアクセス許可を数学的なロジックや推論を使用して分析してくれます。アクセス制御状況のインパクトを集約、可視化し、利用されているアカウントの外側からの意図しないアクセスからリソースが保護されていることの確認に活用出来ます。

AWS公式ドキュメントにはこのように書いてあります。
詳しくご覧になりたい方は下記リンクをご覧ください。

AWS IAM Access Analyzer には、次の機能があります。 IAM Access Analyzer の機能は、外部エンティティと共有されている組織とアカウントのリソースを識別するのに役立ちます。 IAM Access Analyzer は、ポリシーの文法およびベストプラクティスに対して IAM ポリシーを検証します。 IAM Access Analyzer は、AWS CloudTrail ログでのアクセスアクティビティに基づいた IAM ポリシーを生成します。

https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/what-is-access-analyzer.html抜粋

AWS IAM Access Analyzerの削除拒否のSCP

アナライザーの削除拒否のSCPになります。
Actionの「DeleteAnalyzer」が指定したアナライザーを削除する権限になるので、Effectで「Deny」にすることでアナライザーを削除することを拒否するという内容になっています。

{
    "Version": "2012-10-17",
    "Statement": {
        "Effect": "Deny",
        "Action": "access-analyzer:DeleteAnalyzer",
        "Resource": "*"
    }
}

AWS IAM Access AnalyzerのService Authorization Referenceはこちらになります。

docs.aws.amazon.com

マネジメントコンソールでの検証結果

上記のSCPをつけた状態でアナライザーを削除しようとすると、画像のようにエラーが発生して削除することができませんでした。

AWS Security Hub

AWS Security Hubの概要

AWS Security Hub は、AWSのセキュリティ関連のサービスのアラートや検知した情報を集約、整理、優先順位を付けて一元管理できるサービスになります。

AWS公式ドキュメントにはこのように書いてあります。
詳しくご覧になりたい方は下記リンクをご覧ください。

AWS Security Hub では、AWS のセキュリティ状態を包括的に把握することが可能で、セキュリティ業界標準およびベストプラクティスに照らした環境チェックを行うのに有効です。

Security Hub は、AWS アカウント、サービス、およびサポートされているサードパーティーパートナー製品からセキュリティデータを収集するため、セキュリティの傾向を分析し、最も優先度の高いセキュリティ問題を特定するのに役立てることができます。

https://docs.aws.amazon.com/ja_jp/securityhub/latest/userguide/what-is-securityhub.html抜粋

AWS Security Hubの無効化拒否のSCP

AWS Security Hub の無効化拒否のSCPになります。
Actionの「DisableSecurityHub」がAWS Security Hubを無効にする権限を付与するので、Effectで「Deny」にすることでAWS Security Hub の無効化を拒否する設定になっています。

{
    "Version": "2012-10-17",
    "Statement": {
        "Effect": "Deny",
        "Action": "securityhub:DisableSecurityHub",
        "Resource": "*"
    }
}

AWS Security HubのService Authorization Referenceはこちらになります。

docs.aws.amazon.com

マネジメントコンソールでの検証結果

上記のSCPをつけた状態でAWS Security Hubを無効化にしようとすると、画像のようにエラーが発生して削除することができませんでした。

Amazon Detective

Amazon Detectiveの概要

Detective = 探偵という意味がある通り、AWS上の探偵的な役割を持つサービスです。
基本的には各種サービスによって収集されたデータをAmazon Detectiveが受信し、受信したデータを基に詳細な調査が行えます。
この詳細な調査の部分を簡単にしてくれるサービスがAmazon Detectiveとなります。

AWS公式ドキュメントにはこのように書いてあります。
詳しくご覧になりたい方は下記リンクをご覧ください。

Amazon Detective を使用すると、セキュリティに関する検出結果や疑わしいアクティビティの根本原因の分析、調査、および迅速な特定を行います。Detective は、AWS リソースからログデータを自動的に収集します。その後、機械学習、統計分析、グラフ理論を使用して、セキュリティ調査をより迅速かつ効率的に行うのに役立つビジュアライゼーションを生成します。Detective の事前に作成されたデータの集計、要約、およびコンテキストは、考えられるセキュリティ問題の性質と範囲を迅速に分析および特定するのに役立ちます。

Detective を使用すると、最長 1 年間の履歴イベントデータにアクセスできます。このデータは、選択した時間枠でのアクティビティのタイプと量の変化を示す一連のビジュアライゼーションを通じて利用できます。Detective GuardDuty はこれらの変更を調査結果に関連付けます。Detective のソースデータの詳細については、を参照してください動作グラフで使用されるソースデータ。

https://docs.aws.amazon.com/ja_jp/detective/latest/adminguide/what-is-detective.html抜粋

Amazon Detectiveの無効化拒否のSCP

Amazon Detectiveの無効化拒否のSCPになります。
Actionの「DeleteGraph」がセキュリティ情報の集約を停止する権限を付与するので、Effectで「Deny」にすることでAmazon Detectiveの無効化を拒否する設定になっています。

{
    "Version": "2012-10-17",
    "Statement": {
        "Effect": "Deny",
        "Action": "detective:DeleteGraph",
        "Resource": "*"
    }
}

Amazon DetectiveのService Authorization Referenceはこちらになります。

docs.aws.amazon.com

マネジメントコンソールでの検証結果

マネジメントコンソールでこの画面までは進むことができました。

しかし、「disable」と入力して「Amazon Detectiveを無効化」を選択するとエラーが発生して削除することができませんでした。

まとめ

SCPに触れるのは初めてでしたが、マルチアカウントの制御の仕方に少し触れられた感じがします。
本記事が誰かのお力になれば幸いです。

日高 僚太(執筆記事の一覧)

2024 Japan AWS Jr. Champions / 2024 Japan AWS All Certifications Engineers

EC部クラウドコンサルティング課所属。2022年IT未経験でSWXへ新卒入社。
記事に関するお問い合わせや修正依頼⇒ hidaka@serverworks.co.jp