【Security Hub修復手順】[EC2.181] EC2 起動テンプレートは、アタッチされた EBS ボリュームの暗号化を有効にする必要があります
こんにちは、コンサルティング部の村瀬です。
皆さん、お使いの AWS 環境のセキュリティチェックはしていますか?
本記事では、AWS Security Hub による AWS 環境のセキュリティ状況スコアリングに該当する項目についての修復手順をご紹介します。
本記事の対象コントロール
[EC2.181] EC2 起動テンプレートは、アタッチされた EBS ボリュームの暗号化を有効にする必要があります
[EC2.181] EC2 launch templates should enable encryption for attached EBS volumes
前提条件
本記事は AWS Security Hub で「AWS 基礎セキュリティのベストプラクティススタンダード」を利用されている方向けの内容となります。
AWS Security Hub の詳細についてはこちらのブログをご覧ください。
対象コントロールの説明
このコントロールは、EC2 起動テンプレートで指定されたすべての EBS ボリュームで暗号化が有効化されているかチェックします。
起動テンプレートのブロックデバイスマッピングで Encrypted パラメータが false のものが含まれる場合、このコントロールは失敗します。
本コントロールは起動テンプレート内で「明示的に指定された」暗号化設定のみを評価します。
アカウントレベルの EBS デフォルト暗号化、AMI のブロックデバイスマッピング、ソーススナップショットの暗号化状態は評価対象外です。
対応しない場合のリスク
EBS ボリュームの暗号化を有効化していない場合、ディスクに保存されたデータが不正にアクセスされるリスクがあります。
たとえばスナップショットを意図せず別アカウントに共有してしまった場合や、AWS のインフラ層への不正侵入があった場合に、データを平文で読み取られる可能性があります。
対応しなくてよいケース
弊社では、本コントロールへの個別対応は必須としていません。理由は以下の通りです。
- アカウントレベルの「EBS 暗号化のデフォルト」をリージョン単位で有効化していれば、起動テンプレートで暗号化を明示していなくても、実際にインスタンス起動時に作成される EBS ボリュームは暗号化されます
- EBS ボリュームの暗号化状態の管理は
[EC2.3] アタッチされた EBS ボリュームは保管時に暗号化する必要があります側に集約することで、保管時の暗号化状態は担保できます
そのため、アカウントレベルの EBS デフォルト暗号化を有効化済みであれば、本コントロールが FAILED のままでもリスクとして許容できます。
本番環境との設定の乖離を防ぐ観点から、可能であれば起動テンプレート側でも Encrypted=true を明示することを推奨します。
コントロールの確認方法
-
Security Hub コンソールを開く
-
左メニューから「検出結果」を選択

-
フィルターで対象のコントロール ID「EC2.181」を検索

-
詳細を確認する


ステークホルダーに確認
修復を行う前に、以下の点をステークホルダーに確認してください。
- 対象の起動テンプレートを利用している Auto Scaling グループや EC2 Fleet があるか
- 暗号化に利用する KMS キーの方針(AWS マネージドキー
aws/ebsを使うか、カスタマーマネージドキーを使うか) - 新しいバージョンをデフォルトに設定することで、既存の Auto Scaling グループの次回スケールアウト時に影響しないか
新しい起動テンプレートのバージョンを作成しデフォルトに設定するだけでは、既存のインスタンスや既存のボリュームには影響しません。
ただし、既存のインスタンスがリフレッシュ・置換されるタイミングで新バージョンの設定が反映されるため、運用フローへの影響有無を事前に確認してください。
修復手順
起動テンプレートは作成後に編集できないため、新しいバージョンを作成して各ブロックデバイスマッピングで暗号化を有効化したうえで、当該バージョンをデフォルトバージョンに指定します。
-
EC2 コンソールを開く
-
左メニューから「起動テンプレート」を選択

-
対象の起動テンプレートをクリック

-
「アクション」→「テンプレートを変更(新しいバージョンを作成)」を選択

-
「ソーステンプレート」で既存の最新バージョンを選択し、設定を読み込む
-
「ストレージ(ボリューム)」セクションを開き、各 EBS ボリュームの「暗号化済み」の項目を「暗号化なし」→「暗号化済み」に変更する

-
KMS キーを指定する。特別な要件がない限り AWS マネージドキー
aws/ebsを選択する(監査証跡やキーローテーション制御などのコンプライアンス要件がある場合は、カスタマーマネージドキーを選択する)
-
ページ下部の「テンプレートのバージョンを作成」を選択

作成に成功すると、次のような完了画面が表示されます。

-
起動テンプレート詳細画面に戻り、「アクション」→「デフォルトバージョンを設定」を選択

-
新しく作成したバージョン番号を選択し、「デフォルトバージョンとして設定」を選択

修復確認
修復後、Security Hub で検出結果が「PASSED」になることを確認します。

本コントロールは AWS Config の ec2-launch-templates-ebs-volume-encrypted ルールによる change-triggered 評価のため、Security Hub への反映には数分〜数十分かかる場合があります。
最後に
今回は、AWS Security Hub による AWS 環境のセキュリティ状況スコアリングに該当する項目についての修復手順をご紹介しました。
コントロールを修復して、お使いの AWS 環境のセキュリティをパワーアップさせましょう!







