AWS Cloud Quest Security 学習記録 Day7: AWS Security and Compliance Overvi
はじめに
AWS Security Specialty取得を目指すAWS Cloud Quest学習の7日目として、AWSセキュリティとコンプライアンスの全体像について学習しました。これまで学んできた個別サービスの知識を統合し、AWSにおけるセキュリティの基本原則、包括的なセキュリティサービス群、そしてIAM(Identity and Access Management)の詳細について深く理解しました。
本日学習した内容:
- AWS Security and Compliance Overview
- 主要なAWSセキュリティサービス
- AWS Identity and Access Management (IAM) 詳細
- IAM Access Analyzer とアクセス分析
AWS Security and Compliance Overview
Security Overview
セキュリティの基本原則
AWS セキュリティは、AWS クラウドインフラストラクチャのコアに組み込まれており、以下の特徴があります:
- AWS サービスはクラウドでの独自のセキュリティ要件を満たす支援を提供
- クラウドでのセキュリティは、オンプレミスデータセンターのセキュリティと類似
- 設備とハードウェアの維持コストが不要という重要な違い
クラウドセキュリティの利点
コスト効率の向上:
- 物理的なセキュリティインフラストラクチャの維持不要
- 専用のセキュリティ人員の削減
- AWSが管理するセキュリティインフラストラクチャの活用
スケーラビリティ:
- 需要に応じたセキュリティリソースの拡張
- グローバルな脅威インテリジェンスの活用
- 最新のセキュリティ技術への自動アクセス
Compliance Overview
グローバルコンプライアンス対応
AWSは多様な規制要件に対応するため、数多くのグローバルおよび地域のコンプライアンスプログラムを維持しています:
対応する主要な規制・標準:
- PCI DSS:Payment Card Industry Data Security Standard
- HIPAA-HITECH:医療情報のプライバシーとセキュリティ
- FedRAMP:Federal Risk and Authorization Management Program
- GDPR:General Data Protection Regulation
- FIPS 140-2:暗号化モジュールのセキュリティ要件
- NIST 800-171:制御されていない情報システムでの制御情報の保護
包括的コンプライアンス制御
AWS は、事実上すべての規制機関の要件を満たすための包括的なコンプライアンス制御をサポート:
- 継続的なコンプライアンス監視
- 自動化されたコンプライアンスレポート
- 第三者による独立した監査
- 地域固有の規制要件への対応
Security and Compliance Services
AWS Security Hub
概要と目的
AWS Security Hub は、クラウドセキュリティポスチャー管理サービスであり、以下の機能を提供:
- AWS環境全体のセキュリティおよびコンプライアンス状況の包括的な表示
- 一元的なセキュリティダッシュボードによる統合管理
主要機能
データ収集と統合:
- 複数のAWSアカウントからのセキュリティデータ収集
- AWSサービスからのセキュリティ情報統合
- サポートされているサードパーティ製品からのデータ統合
分析と洞察:
- セキュリティトレンドの分析
- 優先度の高いセキュリティ問題の特定
- セキュリティ姿勢の継続的な評価
利用価値
- 複数のセキュリティツールからの情報を一元管理
- セキュリティインシデントの迅速な特定と対応
- コンプライアンス状況の可視化
AWS Artifact
サービス概要
AWS Artifact は、無料のセルフサービスポータルとして以下を提供:
- AWSコンプライアンス関連情報とレポートへのオンデマンドアクセス
- 監査と規制要件への対応支援
2つの主要コンポーネント
1. パブリック向けインターフェース:
- コンプライアンスレポートへのアクセス
- コンプライアンステンプレートのダウンロード
- セキュリティホワイトペーパーの閲覧
2. 内部管理ポータル:
- コンプライアンスチームによる報告管理
- レポートの公開と管理
- 組織内でのコンプライアンス情報共有
活用シナリオ
- 監査準備:必要なコンプライアンス文書の迅速な取得
- 規制対応:特定の規制要件に関する詳細情報の確認
- リスク評価:AWSのセキュリティ姿勢に関する包括的な理解
Amazon Inspector
サービス概要
Amazon Inspector は、継続的にAWSワークロードをスキャンする管理サービスです:
主要な検出対象:
- ソフトウェアの脆弱性
- 意図しないネットワーク露出
自動スキャン対象
1. Amazon Elastic Compute Cloud (EC2):
- コンピューティングインスタンスの自動検出とスキャン
- OSレベルの脆弱性検出
- アプリケーションの脆弱性評価
2. Amazon Elastic Container Registry (ECR):
- コンテナイメージの脆弱性スキャン
- イメージレイヤーごとの詳細分析
- 継続的な監視と更新
3. AWS Lambda Functions:
- Lambda関数のセキュリティ評価
- 依存関係の脆弱性検出
- 実行環境のセキュリティ分析
Inspector の価値
- プロアクティブなセキュリティ管理
- 自動化された継続的監視
- 包括的な脆弱性管理
Amazon GuardDuty
サービス概要
Amazon GuardDuty は、継続的に監視・分析を行う管理された脅威検出サービスです:
監視対象データソース:
- AWSデータソースの包括的な分析
- 潜在的なセキュリティ脅威の特定
検出技術
脅威インテリジェンス:
- グローバルな脅威インテリジェンスフィードの活用
- 既知の悪意のあるIPアドレス、ドメイン、URLの検出
機械学習:
- 異常な行動パターンの検出
- ベースライン行動からの逸脱の特定
- 進化する脅威への適応
検出される脅威の例
インフラストラクチャレベル:
- 侵害されたEC2インスタンス
- マルウェア感染
- Bitcoin マイニング等の不正な活動
アクセスレベル:
- 異常なログインパターン
- 権限昇格の試み
- 不審なAPI呼び出し
AWS Shield
サービス概要
AWS Shield は、DoS(Denial of Service)およびDDoS攻撃の検出、修復、防止に特化して設計されたサービスです:
主要機能
常時検出:
- 24時間365日の監視
- 攻撃パターンの継続的な分析
自動インライン緩和:
- リアルタイムでの攻撃緩和
- アプリケーションのダウンタイムとレイテンシーを最小化
- AWS サポートへの関与が不要
提供される保護
Shield Standard:
- すべてのAWSサービスで自動的に有効
- 一般的なネットワークおよびトランスポート層攻撃からの保護
Shield Advanced:
- より高度な攻撃からの保護
- 専門的なサポートチーム
- 攻撃に対するコスト保護
AWS Identity and Access Management (IAM)
IAM Overview
基本概念
AWS Identity and Access Management (IAM) は、AWSサービスとリソースへのアクセスをセキュアに管理するサービスです:
核となる機能:
- 認証(Authentication):誰がAWSにサインインできるかの制御
- 認可(Authorization):各ユーザーが何にアクセスできるかの制御
IAMの基本エンティティ
IAM User(IAMユーザー):
- AWSと相互作用する人またはアプリケーションを表すエンティティ
- 個別のセキュリティ認証情報を割り当て
- デフォルトでは、どのリソースにもアクセスできない
IAM Group(IAMグループ):
- ユーザーのコレクション
- グループ内の各ユーザーはグループの権限を継承
- 類似の職務を持つユーザーの管理を簡素化
権限管理の原則
デフォルト拒否:
- IAMユーザーはデフォルトでアカウント内のリソースにアクセス不可
- 明示的な権限付与が必要
IAMポリシーによる制御:
- IAMポリシーを適用して権限を付与
- AWSリソースへのアクセスの許可と拒否を制御
IAM Roles(IAMロール)
目的と動作:
- 通常はAWSリソースにアクセスできないユーザー、アプリケーション、サービスへのアクセス委任
- ロールを引き受ける(assume)と一時的なセキュリティ認証情報を提供
- ロールセッションの間のみ有効
利用シナリオ:
- EC2インスタンスから他のAWSサービスへのアクセス
- クロスアカウントアクセス
- 一時的な権限昇格
コスト構造
- IAMはAWSアカウントの機能として追加料金なし
- 他のAWSサービスの使用についてのみ課金
IAM Common Use Cases
1. 細かいアクセス制御
AWSリソースへの詳細なアクセス制御を提供:
- リソース単位での権限設定
- アクション単位での制御
- 条件ベースのアクセス制御
2. 条件付きアクセス制御
特定の条件を追加してユーザーのAWS使用を制御:
時間ベース制御:
- 特定の時間帯のみアクセス許可
- 営業時間外のアクセス制限
IPアドレス制御:
- 送信元IPアドレスに基づくアクセス制御
- 企業ネットワークからのみアクセス許可
SSL/TLS制御:
- 暗号化された接続の強制
- セキュアな通信の担保
多要素認証(MFA)制御:
- MFAデバイスでの認証を条件とするアクセス
- 高いセキュリティレベルの確保
3. アクセス分析
AWS環境全体のアクセス分析:
- セキュリティチームと管理者による迅速な検証
- 意図されたパブリックおよびクロスアカウントアクセスのみの確保
- 使用されているサービスへのアクセスのみに絞ったポリシーの特定と洗練
- 最小権限の原則の遵守
4. 多要素認証(MFA)
高特権ユーザーの保護:
-
MFA保護されたアカウントへのサインイン要件:
- ユーザー名
- パスワード
- MFAデバイスからの有効なMFAコード
サポートされるMFAデバイス:
- ハードウェアMFAトークン
- 仮想MFAデバイス(MFA対応モバイルデバイス等)
5. Identity Federation(ID連携)
企業ディレクトリとの統合:
- 既存のIDシステムを使用した従業員およびアプリケーションへのアクセス許可
- AWS Management Console、AWS Service API、リソースへの統合アクセス
サポートされる連携方式:
SAML 2.0 Federation:
- Security Assertion Markup Languageによる連携
- 企業のActive Directory等との統合
- **Single Sign-On (SSO)**の実現
OpenID Connect Federation:
- Google、Facebook等のソーシャルIDプロバイダーとの連携
- モバイルアプリケーションでの認証統合
AWS Directory Service:
- Microsoft Active DirectoryのAWSマネージド版
- オンプレミスADとの信頼関係構築
6. セキュリティ信頼性の確保
包括的なセキュリティ管理:
- ユーザーアクセスの一元管理
- 権限の可視化と監査
- セキュリティインシデントの迅速な対応
コンプライアンス支援:
- アクセスログの完全な記録
- 規制要件への対応
- 定期的なアクセス権見直し
IAM Best Practices
1. 最小権限の原則(Principle of Least Privilege)
基本原則:
- 業務遂行に必要最小限の権限のみ付与
- 権限の段階的な付与:最初は最小権限で開始し、必要に応じて拡張
- 定期的な権限見直し:不要になった権限の削除
実装例:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:GetObject"
],
"Resource": "arn:aws:s3:::specific-bucket/*"
}
]
}
2. 多要素認証(MFA)の必須化
高権限アカウントでのMFA:
- Root ユーザーのMFA有効化
- 管理者権限ユーザーのMFA必須設定
- センシティブなオペレーションでのMFA要求
条件付きアクセスでのMFA強制:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "*",
"Resource": "*",
"Condition": {
"Bool": {
"aws:MultiFactorAuthPresent": "true"
}
}
}
]
}
3. IAM Rolesの活用
ユーザーアカウントよりもRoleを優先:
- EC2インスタンス:インスタンスプロファイルでのRole使用
- Lambda関数:実行ロールでの権限管理
- クロスアカウントアクセス:AssumeRoleでの一時的な権限取得
4. 定期的な権限監査
アクセス権の継続的な見直し:
- Access Analyzerを使用した未使用権限の特定
- CloudTrailでのアクセスログ分析
- 定期的なユーザー権限レビュー
5. ポリシーの管理
ポリシーのバージョン管理:
- カスタムポリシーの変更履歴管理
- AWS管理ポリシーの更新追跡
- ポリシーシミュレーターでの事前検証
IAM Access Analyzer
サービス概要
IAM Access Analyzer は、組織およびアカウントにおけるリソース共有を分析し、セキュリティリスクを特定するサービスです:
主要機能
1. 外部アクセスの検出:
- 外部エンティティと共有されるリソースの特定
- 意図しないパブリックアクセスの発見
- クロスアカウント共有の可視化
2. 包括的なリソース分析:
Access Analyzer は以下のリソースタイプを分析可能:
ストレージ:
- Amazon S3 buckets
- Amazon EBS volume snapshots
- Amazon EFS file systems
コンピューティング:
- Amazon EC2 AMIs
- AWS Lambda functions
ネットワーキング:
- Amazon VPC security groups
セキュリティとアクセス管理:
- AWS IAM roles
- AWS KMS keys
その他:
- Amazon SQS queues
- Amazon SNS topics
動作原理
継続的な分析:
- 24時間365日の自動監視
- 新しいリソースの自動検出
- ポリシー変更の即座な反映
分析結果の提供:
- ダッシュボードでの視覚的な表示
- 詳細な分析レポート
- 修復推奨事項の提供
Access Analyzer の活用シナリオ
1. セキュリティ監査
定期的なセキュリティレビュー:
- 四半期または年次のセキュリティ監査での活用
- 外部共有リソースの包括的な把握
- コンプライアンス要件への対応確認
2. インシデント対応
セキュリティインシデント発生時:
- 影響範囲の迅速な特定
- 不正アクセスの可能性があるリソースの特定
- 緊急時の外部共有停止
3. 継続的な改善
セキュリティ姿勢の継続的な向上:
- 新しい外部共有の即座の検出
- ポリシー変更の影響評価
- 最小権限原則の維持
具体的な検出例
Amazon S3バケットの分析
{
"findingType": "ExternalAccess",
"resource": "arn:aws:s3:::example-bucket",
"principal": "*",
"action": ["s3:GetObject"],
"condition": {},
"status": "ACTIVE"
}
分析結果の解釈:
- パブリックアクセスが設定されたS3バケット
- 誰でもオブジェクトの読み取りが可能
- 修復推奨:必要に応じてアクセス制限を実装
IAM Roleの分析
{
"findingType": "ExternalAccess",
"resource": "arn:aws:iam::123456789012:role/CrossAccountRole",
"principal": "arn:aws:iam::999999999999:root",
"action": ["sts:AssumeRole"],
"condition": {},
"status": "ACTIVE"
}
分析結果の解釈:
- 外部アカウントからのRole引き受けが可能
- クロスアカウントアクセスの存在
- 確認推奨:意図された共有かどうかの検証
セキュリティ運用のベストプラクティス
1. 多層防御戦略
包括的なセキュリティアーキテクチャ
ネットワーク層:VPC、Security Groups、NACLs
├── アプリケーション層:WAF、Shield
├── データ層:KMS、S3暗号化
├── アクセス制御層:IAM、MFA
└── 監視・検出層:GuardDuty、Security Hub
2. 自動化された脅威対応
セキュリティオートメーション
Lambda関数による自動修復:
def lambda_handler(event, context):
# GuardDutyの検出結果を処理
finding = event['detail']
if finding['severity'] >= 7.0:
# 高リスクの場合、自動的にインスタンス隔離
isolate_instance(finding['service']['remoteIpDetails']['ipAddressV4'])
# Security Hubに結果を送信
send_to_security_hub(finding)
3. 継続的なコンプライアンス監視
AWS Config によるコンプライアンス管理
- リソース設定の継続的な監視
- コンプライアンス違反の自動検出
- 修復アクションの自動実行
4. インシデント対応計画
準備されたセキュリティプレイブック
侵害検出時の対応手順:
- インシデントの分類と優先度付け
- 影響範囲の特定(Access Analyzer活用)
- 封じ込めと根絶
- 復旧と事後分析
まとめ
学習した主要ポイント
- AWS Security and Complianceは、クラウドインフラストラクチャのコアに組み込まれた包括的なセキュリティサービス群
- Security Hub、Artifact、Inspector、GuardDuty、Shieldにより、検出から防御まで多層的なセキュリティを実現
- IAMは、認証・認可の中核サービスとして、細かいアクセス制御と条件付きアクセスを提供
- IAM Access Analyzerにより、外部共有リソースの継続的な監視と分析が可能
- 多層防御戦略と自動化により、エンタープライズグレードのセキュリティを実現
AWS Security Specialty取得に向けて
本日学習したAWSセキュリティの全体像は、Security Specialtyにおいて以下の観点から極めて重要です:
- 責任共有モデル:AWSとユーザーの責任範囲の明確な理解
- 包括的なセキュリティサービス群:各サービスの役割と連携方法
- IAMによる細かいアクセス制御:最小権限原則の実装方法
- 継続的な監視と分析:プロアクティブなセキュリティ管理
- コンプライアンス:規制要件への対応方法
Discussion