Amazon Web Services ブログ

Amazon GuardDuty が Amazon EKS ランタイムモニタリングをサポートするようになりました

Amazon GuardDuty が 2017 年にリリースされて以来、GuardDuty は AWS CloudTrail イベントログ、Amazon Virtual Private Cloud (Amazon VPC) フローログ、DNS クエリログ、Amazon Simple Storage Service (Amazon S3) データプレーンイベント、Amazon Elastic Kubernetes Service (Amazon EKS) 監査ログ、Amazon Relational Database Service (Amazon RDS) ログインイベントなど、複数の AWS データソースにわたって 1 分あたり数百億ものイベントを分析して、AWS アカウントとリソースを保護してきました。

2020 年に GuardDuty は Amazon S3 保護機能を追加し、S3 データアクセスイベントと設定を継続的にモニタリングおよびプロファイリングして Amazon S3 での不審なアクティビティを検出しました。昨年、GuardDuty は、アカウント内の既存および新規 EKS クラスターの Kubernetes 監査ログを分析してコントロールプレーンのアクティビティをモニタリングする Amazon EKS Protection、EBS ボリュームを使用して EC2 インスタンスまたはコンテナワークロードに存在する悪意のあるファイルをスキャンする Amazon EBS マルウェア対策Amazon Aurora データベースに保存されているデータに対する潜在的な脅威を特定する Amazon RDS Protectionをリリースしました — 最近、一般提供が開始されました

GuardDuty は、さまざまな AWS データソースを使用して、機械学習 (ML)、異常検知、ネットワークモニタリング、悪意のあるファイルの発見を組み合わせています。脅威が検出されると、GuardDuty は自動的に AWS Security HubAmazon EventBridge、および Amazon Detective にセキュリティの検出結果を送信します。これらの統合により、AWS とパートナーサービスのモニタリングを一元化し、マルウェアの検出結果への対応を自動化し、GuardDuty によるセキュリティ調査を実施できます。

3月30日、Amazon GuardDuty EKS ランタイムモニタリングの一般提供についてお知らせします。30 件以上のセキュリティの検出結果からランタイムの脅威を検出して EKS クラスターを保護できます。新しい EKS ランタイムモニタリングは、ファイルアクセス、プロセス実行、ネットワーク接続など、個々のコンテナランタイムアクティビティの可視化を追加するフルマネージド EKS アドオンを使用しています。

GuardDuty では、EKS クラスター内の侵害の可能性がある特定のコンテナを特定し、個々のコンテナから基盤となる Amazon EC2 ホストやより広い AWS 環境に権限をエスカレートさせようとする試みを検出できるようになりました。GuardDuty EKS ランタイムモニタリングの検出結果は、潜在的な脅威を特定してエスカレートする前に封じ込めるためのメタデータコンテキストを提供します。

GuardDuty での EKS ランタイムモニタリングの設定
使用を開始するには、まず GuardDuty コンソールで数回クリックするだけで EKS ランタイムモニタリングを有効にできます。

EKS ランタイムモニタリングを有効にすると、GuardDuty はアカウントのすべての既存および新規の EKS クラスターのランタイムアクティビティイベントのモニタリングと分析を開始できます。アカウント内の既存および新規の EKS クラスターに必要な EKS 管理アドオンを GuardDuty でデプロイおよび更新させたい場合は、[Manage agent automatically] (エージェントを自動的に管理) を選択します。これにより、セキュリティエージェントがランタイムイベントを GuardDuty に配信するための VPC エンドポイントも作成されます。

EKS 監査ログモニタリング とランタイムモニタリングを一緒に設定すると、クラスターコントロールプレーンレベルと個々のポッドまたはコンテナオペレーティングシステムレベルの両方で最適な EKS Protection を実現できます。組み合わせて使用すると、脅威の検出がより状況に応じたものになり、迅速な優先順位付けと対応が可能になります。例えば、疑わしい動作を示すポッドでのランタイムベースの検出は、監査ログベースの検出によって強化できます。これは、そのポッドが昇格された権限で異常起動されたことを示します。

これらのオプションはデフォルトですが、設定可能です。いずれかのチェックボックスをオフにすると、EKS ランタイムモニタリングを無効にできます。EKS ランタイムモニタリングを無効にすると、GuardDuty は既存のすべての EKS クラスターのランタイムアクティビティイベントのモニタリングと分析をただちに停止します。GuardDuty を使用して自動エージェント管理を設定した場合、このアクションにより GuardDuty がデプロイしたセキュリティエージェントも削除されます。

詳細については、AWS ドキュメントの「EKS ランタイムモニタリングの設定」を参照してください。

GuardDuty エージェントを手動で管理
アカウントのクラスターごとに、GuardDuty エージェントを含む EKS 管理アドオンを手動でデプロイして更新する場合は、EKS Protection 設定で [Manage agent automatically] (エージェントを自動的に管理) のチェックを外します。

アドオンを手動で管理する場合は、セキュリティエージェントが GuardDuty にランタイムイベントを配信するための VPC エンドポイントの作成も担当します。VPC エンドポイントコンソールで[Create endpoint] (エンドポイントの作成) を選択します。手順で、[Service category] (サービスカテゴリ) に [Other endpoint services] (その他のエンドポイントサービス) を選択し、米国東部 (バージニア北部) リージョンの [Service name] (サービス名) に com.amazonaws.us-east-1.guardduty-data と入力して、[Verify service] (サービスの確認) を選択します。

サービス名が正常に確認されたら、EKS クラスターが存在する VPC とサブネットを選択します。[Additional settings] (追加設定) で [Enable DNS name] (DNS 名を有効にする) を選択します。セキュリティグループで、VPC (または EKS クラスター) からのインバウンドポート 443 が有効になっているセキュリティグループを選択します。

次のポリシーを追加して、VPC エンドポイントの使用を指定されたアカウントのみに制限します。

{
	"Version": "2012-10-17",
	"Statement": [
		{
			"Action": "*",
			"Resource": "*",
			"Effect": "Allow",
			"Principal": "*"
		},
		{
			"Condition": {
				"StringNotEquals": {
					"aws:PrincipalAccount": "123456789012"
				}
			},
			"Action": "*",
			"Resource": "*",
			"Effect": "Deny",
			"Principal": "*"
		}
	]
}

これで、EKS クラスターに Amazon GuardDuty EKS ランタイムモニタリングアドオンをインストールできるようになりました。Amazon EKS コンソールで EKS クラスタープロファイルの [Add-ons] (アドオン) タブでこのアドオンを選択します。

GuardDuty で EKS ランタイムモニタリングを有効にし、EKS クラスターに Amazon EKS アドオンをデプロイすると、aws-guardduty-agent というプレフィックスが付いた新しいポッドを表示できます。GuardDuty は、クラスター内のすべての EC2 ホストとコンテナからのランタイムアクティビティイベントの消費を開始するようになりました。次に、GuardDuty はこれらのイベントを分析して潜在的な脅威がないかを調べます。

これらのポッドは、さまざまなイベントタイプを収集し、脅威の検出と分析のために GuardDuty バックエンドに送信します。アドオンを手動で管理する場合は、新しい EKS クラスターを含め、モニタリングする EKS クラスターごとに以下の手順を実行する必要があります。

詳細については、AWS ドキュメントの「GuardDuty エージェントの手動管理」を参照してください。

EKS ランタイムセキュリティの検出結果の確認
GuardDuty が潜在的な脅威を検出してセキュリティの検出結果を生成すると、対応する検出結果の詳細を表示できます。これらのセキュリティの検出結果は、お客様の AWS 環境で EC2 インスタンス、コンテナワークロード、EKS クラスター、または一連の認証情報が侵害されたことを示しています。

テスト目的で EKS ランタイムモニタリングのサンプルの検出結果を生成する場合は、AWS ドキュメントの「GuardDuty でのサンプルの検出結果の生成」を参照してください。潜在的なセキュリティ問題の例を次に示します。EKS クラスターで新しく作成または最近変更されたバイナリファイルが実行されました。

EKS Protection の検出結果タイプの ResourceType (リソースタイプ) には、[Instance] (インスタンス)、[EKSCluster] (EKS クラスター)、または[Container] (コンテナ) を使用できます。検出結果の詳細の [Resource type] (リソースタイプ) が [EKSCluster] (EKS クラスター) の場合は、EKS クラスター内のポッドまたはコンテナが危険にさらされている可能性があることを示しています。 侵害された可能性のあるリソースタイプによっては、検出結果の詳細に Kubernetes ワークロードの詳細、EKS クラスターの詳細、またはインスタンスの詳細が含まれる場合があります。

プロセスの詳細や必要なコンテキストなどの [Runtime details] (ランタイムの詳細) には、監視されたプロセスに関する情報が記載され、ランタイムコンテキストには、疑わしい可能性のあるアクティビティに関する追加情報が記述されます。

侵害されたポッドまたはコンテナイメージを修正するには、AWS ドキュメントの「EKS ランタイムモニタリングの検出結果の修正」を参照してください。このドキュメントでは、リソースタイプごとに推奨修正手順について説明します。セキュリティの検出結果タイプの詳細については、AWS ドキュメントの「GuardDuty EKS ランタイムモニタリングの検出結果タイプ」を参照してください。

今すぐご利用いただけます
Amazon GuardDuty を EKS ランタイムモニタリングに使用できるようになりました。EKS ランタイムモニタリングを利用できるリージョンの全リストについては、地域固有の機能の提供状況をご覧ください。

EKS ランタイムモニタリング用 GuardDuty の最初の 30 日間は、既存の GuardDuty アカウントの追加料金なしでご利用いただけます。GuardDuty を初めて有効にした場合、EKS ランタイムモニタリングはデフォルトでは有効になっていないため、上記のように有効にする必要があります。GuardDuty の試用期間が終了すると、EKS ランタイムモニタリングの推定コストを確認できます。詳細については、「GuardDuty の料金」ページを参照してください。

詳細については、「Amazon GuardDuty ユーザーガイド」を参照し、AWS re:Post for Amazon GuardDuty にフィードバックを送信するか、通常の AWS サポート連絡先を通じてフィードバックを送信してください。

Channy

原文はこちらです。