翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
IPv4 および のセキュリティグループ進入ルールで単一ホストネットワークエントリをチェックします。 IPv6
作成者: SaiJeevan Devireddy (AWS)、Ganesh Kumar (AWS)、John Reynolds (AWS)
環境:本稼働 | テクノロジー: ネットワーク、セキュリティ、アイデンティティ、コンプライアンス | AWS サービス: Amazon SNS、AWS CloudFormation、Amazon CloudWatch、AWSLambda、Amazon VPC |
[概要]
このパターンは、Amazon Web Services (AWS) リソースが仕様を満たしていない場合に通知するセキュリティコントロールを提供します。インターネットプロトコルバージョン 4 (IPv4) とIPv6セキュリティグループのソースアドレスフィールドの両方で単一ホストネットワークエントリを検索する AWS Lambda 関数を提供します。Lambda 関数は、Amazon CloudWatch Events が Amazon Elastic Compute Cloud (Amazon EC2) AuthorizeSecurityGroupIngressAPI呼び出しを検出すると開始されます。Lambda 関数のカスタムロジックは、セキュリティグループの進入ルールの CIDRブロックのサブネットマスクを評価します。サブネットマスクが /32 (IPv4) または /128 () 以外のものであると判断された場合、Lambda 関数は Amazon Simple Notification Service (Amazon IPv6) を使用して違反通知を送信しますSNS。
前提条件と制限
前提条件
アクティブなAWSアカウント
違反の通知を受信する E メールアドレス
機能制限
このセキュリティモニタリングソリューションはリージョン別であり、モニタリングする各AWSリージョンにデプロイする必要があります。
アーキテクチャ
ターゲットテクノロジースタック
Lambda 関数
SNS トピック
Amazon EventBridge ルール
ターゲット アーキテクチャ
自動化とスケール
AWS Organizations を使用している場合は、AWSCloudformation StackSets を使用して、モニタリングする複数のアカウントにこのテンプレートをデプロイできます。
ツール
AWS サービス
AWS CloudFormation は、Infrastructure as Code を使用してAWSリソースをモデル化およびセットアップするのに役立つサービスです。
Amazon EventBridge は、独自のアプリケーション、Software as a Service (SaaS) アプリケーション、および AWSのサービスからリアルタイムデータのストリームを配信し、そのデータを Lambda 関数などのターゲットにルーティングします。
AWS Lambda は、サーバーのプロビジョニングや管理を行わずにコードの実行をサポートします。
Amazon Simple Storage Service (Amazon S3) は、拡張性の高いオブジェクトストレージサービスで、ウェブサイト、モバイルアプリケーション、バックアップ、データレイクなど、幅広いストレージソリューションに使用できます。
Amazon SNS は、ウェブサーバーや E メールアドレスなど、パブリッシャーとクライアント間のメッセージの配信または送信を調整して管理します。サブスクライバーは、サブスクライブしているトピックに対して発行されたすべてのメッセージを受信します。また、同じトピックのサブスクライバーはすべて同じメッセージを受信します。
コード
添付のコードには以下が含まれます。
Lambda セキュリティコントロールコード (
index.py
) を含む .zip ファイルLambda コードをデプロイするために実行する CloudFormation テンプレート (
security-control.yml
ファイル)
エピック
タスク | 説明 | 必要なスキル |
---|---|---|
Lambda コード用の S3 バケットを作成します。 | Amazon S3 コンソール | クラウドアーキテクト |
S3 バケットに Lambda コードをアップロードします。 | 「添付ファイル」セクションで提供されている Lambda コード ( | クラウドアーキテクト |
タスク | 説明 | 必要なスキル |
---|---|---|
Python バージョンを変更する。 | Attachments セクションで提供されている CloudFormation テンプレート ( たとえば、コード内で Python ランタイムバージョンのサポートに関する最新情報については、AWSLambda ドキュメント を参照してください。 | クラウドアーキテクト |
AWS CloudFormation テンプレートをデプロイします。 | AWS CloudFormation コンソールで、S3 バケットと同じAWSリージョンに CloudFormation テンプレート () をデプロイします | クラウドアーキテクト |
S3 バケット名を指定します。 | S3 バケット パラメータには、最初のエピックで作成した S3 バケットの名前を指定します。 | クラウドアーキテクト |
Lambda ファイルの Amazon S3 キー名を指定します。 | S3 キーパラメータには、S3 バケット内の Lambda コード .zip ファイルの Amazon S3 ロケーションを指定します。先頭にスラッシュを含めないでください (たとえば、 | クラウドアーキテクト |
通知用 E メールアドレスを提供します。 | 通知メールパラメータには、違反通知を受け取るメールアドレスを指定します。 | クラウドアーキテクト |
ロギングのレベルを定義します。 | Lambda ロギングレベルのパラメータでは、Lambda 関数のロギングレベルを定義します。次のいずれかの値を選択します。
| クラウドアーキテクト |
タスク | 説明 | 必要なスキル |
---|---|---|
サブスクリプションを確認します。 | CloudFormation テンプレートが正常にデプロイされると、新しいSNSトピックが作成され、指定した E メールアドレスにサブスクリプションメッセージが表示されます。違反通知を受信するには、このメールサブスクリプションを確認する必要があります。 | クラウドアーキテクト |
関連リソース
AWS CloudFormation コンソールでのスタックの作成 (AWS CloudFormation ドキュメント)
のセキュリティグループ VPC (Amazon VPCドキュメント)
添付ファイル
このドキュメントに関連する追加コンテンツにアクセスするには、次のファイルを解凍してください。「attachment.zip」