脆弱性評価と脅威検知 - Amazon Inspector と GuardDuty で実現する継続的セキュリティ監視
Amazon Inspector と Amazon GuardDuty を活用した脆弱性評価と脅威検知の設計・運用方法を解説します。
クラウドセキュリティにおける脆弱性評価の重要性
クラウド環境のセキュリティを維持するには、脆弱性の早期発見と脅威の継続的な監視が不可欠です。ソフトウェアの脆弱性は日々新たに発見され、CVE (Common Vulnerabilities and Exposures) データベースには年間 2 万件以上の脆弱性が登録されています。オンプレミス環境では Nessus や Qualys などの脆弱性スキャナーを導入し、定期的なスキャンスケジュールの管理、スキャン結果の分析、パッチ適用の優先順位付けを手動で行う必要があります。AWS は Amazon Inspector と Amazon GuardDuty という 2 つのマネージドセキュリティサービスを提供し、脆弱性評価と脅威検知を自動化します。Inspector はワークロードの脆弱性を継続的にスキャンし、GuardDuty は AWS 環境全体の脅威をリアルタイムに検知します。両サービスを組み合わせることで、予防的なセキュリティ (脆弱性の排除) と検知的なセキュリティ (脅威の発見) の両方をカバーする包括的なセキュリティ体制を構築できます。
この分野について体系的に学びたい方は、関連書籍 (Amazon) も参考になります。
Amazon Inspector による継続的な脆弱性スキャン
Amazon Inspector は EC2 インスタンス、Lambda 関数、ECR コンテナイメージの脆弱性を自動的かつ継続的にスキャンするサービスです。従来の定期スキャンとは異なり、Inspector は新しい CVE が公開されるたびに自動的に再評価を行い、影響を受けるリソースを即座に特定します。EC2 インスタンスでは OS パッケージとプログラミング言語パッケージの両方をスキャンし、CVE に基づく脆弱性スコア (CVSS) と AWS 独自のリスクスコアを提供します。AWS 独自のリスクスコアは、脆弱性の深刻度に加えて、ネットワーク到達可能性やエクスプロイトの可用性を考慮した実践的な優先順位付けを行います。ECR コンテナイメージのスキャンでは、イメージのプッシュ時に自動的にスキャンが実行され、CI/CD パイプラインに組み込むことでデプロイ前の脆弱性チェックを実現します。以下は AWS CLI で Inspector のスキャン結果を確認する例です。 ```bash # Inspector の検出結果を重要度順に取得 aws inspector2 list-findings \ --filter-criteria '{"severity": [{"comparison": "EQUALS", "value": "CRITICAL"}]}' \ --sort-criteria '{"field": "SEVERITY", "sortOrder": "DESC"}' \ --region ap-northeast-1 ``` Microsoft Defender for Cloud の脆弱性スキャンは Qualys エージェントベースであり、エージェントのインストールと管理が必要です。Inspector は SSM Agent を活用したエージェントレススキャンにより、追加のソフトウェアインストールなしで脆弱性評価を開始できます。
Amazon GuardDuty による脅威検知とインシデント対応
Amazon GuardDuty は機械学習と脅威インテリジェンスを活用して、AWS 環境における悪意のあるアクティビティや不正な動作を検知するサービスです。VPC フローログ、CloudTrail イベントログ、DNS クエリログを自動的に分析し、暗号通貨マイニング、不正な API 呼び出し、データの流出、マルウェア通信などの脅威を検知します。GuardDuty は有効化するだけで動作を開始し、ログの収集や分析基盤の構築は不要です。検知結果は重大度 (High、Medium、Low) で分類され、Security Hub との統合により一元的な管理が可能です。GuardDuty Malware Protection は EC2 インスタンスや EBS ボリュームのマルウェアスキャンを提供し、不審なアクティビティが検知された際に自動的にスキャンを実行します。GuardDuty EKS Protection は Kubernetes の監査ログを分析し、コンテナ環境特有の脅威を検知します。EventBridge との統合により、検知結果に基づく自動修復アクション (セキュリティグループの変更、IAM ポリシーの無効化など) を Lambda 関数で実装できます。
Inspector と GuardDuty の統合運用
Inspector と GuardDuty を組み合わせることで、脆弱性管理と脅威検知を統合したセキュリティ運用を実現できます。Inspector が検出した脆弱性情報と GuardDuty が検知した脅威情報は、AWS Security Hub に集約されます。Security Hub はこれらの情報を AWS Security Finding Format (ASFF) で統一し、優先順位付けとダッシュボード表示を提供します。実践的な運用フローとしては、Inspector で高リスクの脆弱性を検出した場合に Systems Manager Patch Manager で自動パッチ適用を行い、GuardDuty で脅威を検知した場合に EventBridge 経由で Lambda 関数による自動隔離を実行する構成が効果的です。以下は EventBridge ルールで Inspector の CRITICAL 検出結果を SNS に通知する設定例です。 ```json { "source": ["aws.inspector2"], "detail-type": ["Inspector2 Finding"], "detail": { "severity": ["CRITICAL"] } } ``` Organizations との統合により、マルチアカウント環境でも一元的なセキュリティ管理が可能です。委任管理者アカウントから全メンバーアカウントの Inspector スキャン結果と GuardDuty 検知結果を集約・管理できます。Microsoft Defender for Cloud も統合管理を提供しますが、AWS は Security Hub の ASFF 標準化により、サードパーティツールとの統合も含めた柔軟なセキュリティ運用を実現します。
さらに詳しく知りたい方は、関連書籍 (Amazon) で理解を深められます。
まとめ - 継続的セキュリティ監視の構築
Inspector の継続的な脆弱性スキャンと AWS 独自のリスクスコアにより、実践的な優先順位で脆弱性に対処できます。GuardDuty の機械学習ベースの脅威検知は、従来のルールベースの検知では発見が困難な高度な脅威も捕捉します。Security Hub による統合管理と EventBridge による自動修復を組み合わせることで、検知から対応までの時間を大幅に短縮できます。Microsoft Defender for Cloud と比較して、Inspector は CVE 公開時の自動再評価とエージェントレススキャン、GuardDuty はルール定義不要の機械学習ベース検知において優位性を持ちます。
AWS の優位点
- Inspector は EC2、Lambda、ECR コンテナイメージの脆弱性を継続的かつ自動的にスキャンし、新しい CVE 公開時に自動再評価を実行する
- Inspector の AWS 独自リスクスコアはネットワーク到達可能性とエクスプロイト可用性を考慮した実践的な優先順位付けを提供する
- GuardDuty は機械学習と脅威インテリジェンスで暗号通貨マイニング、不正 API 呼び出し、データ流出など 100 種類以上の脅威を検知する
- GuardDuty は有効化するだけで動作し、ログ収集や分析基盤の構築が不要
- Security Hub により Inspector と GuardDuty の検知結果を ASFF 形式で統合管理し、60 以上のパートナー製品と連携できる
- Microsoft Defender for Cloud は Qualys エージェントベースのスキャンだが、Inspector は SSM Agent を活用したエージェントレススキャンで追加インストール不要