1. インフラストラクチャの保護
1.1. SEC 5. ネットワークの保護
1.1.1. ネットワークレイヤーを作成する
1.1.1.1. パブリック、プライベート、データベース用などサブネットの分割
1.1.1.2. Transit Gateway
1.1.2. すべてのレイヤーでトラフィックを制御する
1.1.2.1. 通信要件に応じた制御
1.1.2.2. セキュリティグループ、NACL、ルートテーブル
1.1.2.3. アプリケーションサーバの前段にCloudFrontやELB
1.1.2.4. VPCエンドポイント経由のアウトバウンド
1.1.3. 検査と保護を実装する
1.1.3.1. AWS WAF
1.1.3.2. AWS Firewall Manager
1.1.3.3. AWS Shield Advanced
1.1.4. ネットワーク保護を自動化する
1.1.4.1. AWS WAF セキュリティオートメーションソリューション
1.2. SEC 6. コンピューティングの保護
1.2.1. 脆弱性管理を実行する
1.2.1.1. コード、依存関係、インフラストラクチャ内の脆弱性スキャンとパッチ適用
1.2.1.1.1. EC2 Image Builder
1.2.1.1.2. Amazon CodeGuru
1.2.1.1.3. サードパーティ製の依存関係チェックツール
1.2.1.1.4. Amazon Inspector
1.2.1.1.5. ECR イメージスキャン
1.2.1.1.6. Fuzzing | OWASP
1.2.2. 攻撃対象領域を縮小する
1.2.2.1. OSを強化し、コンポーネント、ライブラリ、外部から利用可能なサービスを最小限に
1.2.2.1.1. CIS
1.2.3. ユーザーがリモートからアクションを実行できるようにする
1.2.3.1. Systems Manager
1.2.3.1.1. オートメーション
1.2.3.1.2. ドキュメント
1.2.3.1.3. Run Command
1.2.4. マネージドサービスを活用する
1.2.4.1. RDS、Lambda、ECSなど
1.2.5. ソフトウェアの整合性を検証する
1.2.5.1. 改ざんされていないかを検証する仕組みの実装
1.2.6. コンピューティング保護を自動化する
2. SEC 4. 検出
2.1. 設定
2.1.1. サービスとアプリケーションのログ記録を設定する
2.1.1.1. Cloud Trail、Config
2.1.1.2. GuardDuty、Security Hub
2.1.1.3. VPC フローログ
2.1.1.4. CloudWatch Logs
2.1.2. ログ、結果、メトリクスを一元的に分析する
2.1.2.1. 手動ではなくシステム化
2.1.2.2. 通知およびワークフローシステムとの統合
2.1.2.3. GuardDuty と Security Hubを活用
2.2. 調査
2.2.1. 実用的なセキュリティイベントを実装する
2.2.1.1. ランブックまたはプレイブック形式の調査プロセス
2.2.1.1.1. ランブック:事前定義された手順
2.2.1.1.2. プレイブック:文書化された調査プロセス
2.2.1.2. GuardDutyによる調査結果の生成
2.2.2. イベントへの応答を自動化する
2.2.2.1. EventBridge
2.2.2.2. GuardDuty
2.2.2.3. Config Rules
3. アイデンティティとアクセスの管理
3.1. SEC 2. アイデンティティ管理
3.1.1. アイデンティティ
3.1.1.1. 人的 ID
3.1.1.1.1. 人が使うID
3.1.1.2. マシン ID
3.1.1.2.1. EC2 や Lambda をはじめとした人以外が使うID
3.1.2. 一元化された ID プロバイダーを利用する
3.1.2.1. SAML 2.0 ベースプロバイダー
3.1.2.2. AWS SSO
3.1.2.3. Cognito
3.1.3. ユーザーグループと属性を活用する
3.1.3.1. 個別のユーザー単位で管理をしない
3.1.4. 強力なサインインメカニズムを使用する
3.1.4.1. 適切なパスワードポリシーの設定
3.1.4.2. MFA設定
3.1.5. 一時的な認証情報を使用する
3.1.5.1. 認証情報の動的な取得
3.1.5.1.1. SSO やフェデレーション
3.1.5.1.2. IAMロール
3.1.5.1.3. Cognito ID プール
3.1.5.1.4. AWS Systems Manager によるキーやパスワードを使用しないインスタンスアクセス
3.1.6. 定期的に認証情報を監査およびローテーションする
3.1.6.1. Config ルールによる検証の自動化
3.1.6.2. アクセスキーの代わりにIAMロール
3.1.7. シークレットを安全に保存して使用する
3.1.7.1. AWS Secrets Manager
3.2. SEC 3. Permissions Management
3.2.1. 組織のアクセス許可ガードレールを定義する
3.2.1.1. Organizations による共通コントロール
3.2.2. 最小権限のアクセスを付与する
3.2.2.1. 限定的に権限を与えてから拡張
3.2.2.2. Permissions Boundary
3.2.2.3. ABAC
3.2.3. パブリックおよびクロスアカウントアクセスの分析
3.2.3.1. IAM Access Analyzer
3.2.4. リソースを安全に共有する
3.2.4.1. AWS Resource Access Management
3.2.5. アクセス許可を継続的に削減する
3.2.5.1. IAM アクセスアドバイザー
3.2.6. 緊急アクセスのプロセスを確立する
3.2.6.1. 緊急時に使用する特権ロールなど
4. SEC 1. ワークロードを安全に運用する
4.1. ワークロードを安全に運用する
4.1.1. 脅威モデルを使用してリスクを特定し、優先順位をつける
4.1.2. 管理目標を特定および検証する
4.1.3. セキュリティ脅威に関する最新情報を入手する
4.1.4. セキュリティのレコメンデーションに関する更新情報を入手する
4.1.5. 新しいセキュリティサービスと機能を定期的に評価および実装する
4.1.6. パイプラインのセキュリティコントロールのテストと検証を自動化する
4.2. AWSアカウントの管理と分離
4.2.1. アカウントを使用してワークロードを分ける
4.2.2. AWS アカウントを保護する
4.2.2.1. Organizations による一元管理
4.2.3. アカウントを一元的に管理する
4.2.4. 制御を一括設定する
4.2.5. サービスとリソースを一括設定する
5. SEC 10. インシデントへの対応
5.1. クラウドレスポンスの設計目標
5.1.1. 対応目標の確立
5.1.1.1. 問題の抑制と軽減
5.1.1.2. 影響を受けるリソースの復旧
5.1.1.3. フォレンジックのためのデータ保持
5.1.2. ドキュメントプラン
5.1.2.1. インシデントへの応答、インシデント時の伝達、復旧計画
5.1.3. クラウドを使用して応答する
5.1.4. 持っているものと必要なものを知る
5.1.4.1. ログ、スナップショット、その他証拠をコピーして保持
5.1.5. 再デプロイメカニズムを使用する
5.1.5.1. 設定ミスに起因するセキュリティ異常に備える
5.1.6. 可能な場合は自動化する
5.1.7. スケーラブルなソリューションを選択する
5.1.8. プロセスを学び、改善する
5.2. 教育
5.2.1. 自動化されたプロセスにより短縮された工数を用いて継続的な教育を実施
5.3. 準備
5.3.1. 重要な人員と外部リソースを特定する
5.3.1.1. ステークホルダーの定義、実践的な演習
5.3.1.2. セキュリティパートナー
5.3.2. インシデント管理計画を作成する
5.3.2.1. プレイブック化
5.3.2.2. Trusted Advisor
5.3.2.3. GuardDuty
5.3.2.4. 繰り返し実行する
5.3.3. アクセスを事前プロビジョニングする
5.3.3.1. インシデント発生時に権限不足により対応が遅れることを防ぐ
5.3.3.2. 日常使用を避けるため使用時のアラート設定
5.3.4. ツールを事前デプロイする
5.3.4.1. セキュリティオートメーションによるアラート疲れの回避
5.3.4.2. 対応プロセスのプログラム化
5.3.4.3. Systems Managerの活用
5.3.5. フォレンジック機能を備える
5.4. シミュレーション
5.4.1. ゲームデーを実施する
5.4.1.1. 準備態勢の検証
5.4.1.2. 自信の向上
5.4.1.3. コンプライアンスの準拠
5.4.1.4. アーティファクトの生成
5.4.1.5. アジリティの段階的な改善
5.4.1.6. 高速化とツールの改善
5.4.1.7. コミュニケーションとエスカレーションの詳細化
5.4.1.8. まれで予期外の事態に備える
5.5. イテレーション
5.5.1. 封じ込めと復旧機能を自動化する
5.5.1.1. イベント駆動型の復旧対応
5.5.1.2. Lambdaによる自動修復
6. データ保護
6.1. SEC 7. データ分類
6.1.1. ワークロード内のデータを特定する
6.1.1.1. パブリックコンテンツか、個人情報か、知的財産かなど
6.1.1.2. 保護要件のレベルに合わせてコントロール
6.1.2. データ保護コントロールを定義する
6.1.2.1. IAM、Organizations、KMS、CloudHSM
6.1.3. データのライフサイクル管理を定義する
6.1.3.1. データを保持する期間、データ破壊プロセス、データアクセス管理
6.1.3.2. データ変換、データ共有
6.1.3.3. 可用性とアクセスのバランス
6.1.4. 識別および分類を自動化する
6.1.4.1. Amazon Macie(機械学習による機密データの検出、分類、保護)| AWS
6.2. SEC 8. 保管中のデータの保護
6.2.1. 安全なキー管理を実装する
6.2.1.1. AWS KMSは多数のAWSサービスと統合
6.2.2. 保管中に暗号化を適用する
6.2.2.1. S3のデフォルト暗号化
6.2.2.2. EC2のリージョン全体のデフォルト暗号化オプション
6.2.3. アクセスコントロールを適用する
6.2.3.1. アクセス、バックアップ、分離、バージョニング
6.2.3.2. Glacier のボールトロック
6.2.3.3. S3のオブジェクトロック
6.2.4. 暗号化キーの使用を監査する
6.2.4.1. KMS の使用を CloudTrail に記録
6.2.5. 人をデータから遠ざけるメカニズムを使用する
6.2.5.1. Systems Manager オートメーションによる自動化
6.2.5.2. データストアへの直接アクセスでなくダッシュボード経由
6.2.6. 保管時のデータの保護を自動化する
6.2.6.1. Config ルールによるEBS暗号化のチェック
6.2.6.2. Security Hub
6.3. SEC 9. 伝送中のデータの保護
6.3.1. 安全な鍵および証明書管理を実装する
6.3.1.1. ACM
6.3.2. 伝送中に暗号化を適用する
6.3.2.1. HTTPのブロックやリダイレクト
6.3.2.2. VPCへのVPNを使用したアクセス
6.3.3. ネットワーク通信を認証する
6.3.3.1. TLS
6.3.3.2. IPsec
6.3.4. 意図しないデータアクセスの検出を自動化する
6.3.4.1. GuardDuty
6.3.4.2. VPCフローログ+EventBridge
6.3.4.3. S3 Access Analyzer