侵害された可能性のある S3 バケットの修復 - Amazon GuardDuty

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

侵害された可能性のある S3 バケットの修復

環境内の侵害された可能性のある Amazon S3 バケットを修正するには、以下の推奨ステップに従います AWS 。

  1. 侵害された可能性のある S3 リソースを特定します。

    S3 GuardDuty の結果は、関連する S3 バケット、その Amazon リソースネーム (ARN)、およびその所有者を結果の詳細に一覧表示します。

  2. 疑わしいアクティビティのソースと使用されたAPI通話を特定します。

    使用されたAPI呼び出しは、検出結果の詳細APIに としてリストされます。ソースは IAMプリンシパル ( IAMロール、ユーザー、またはアカウント) になり、識別の詳細が検出結果に表示されます。ソースタイプに応じて、リモート IP アドレスまたはソースドメイン情報が利用可能になり、ソースが承認されたかどうかを評価するのに役立ちます。検出結果に Amazon EC2インスタンスの認証情報が含まれている場合、そのリソースの詳細も含まれます。

  3. コールソースが、識別されたリソースへのアクセスを許可されたかどうかを確認します。

    例えば、次の事項を検討します。

    • IAM ユーザーが関係していた場合、認証情報が侵害された可能性がありますか? 詳細については、「侵害された可能性のある AWS 認証情報の修正」を参照してください。

    • このタイプの をAPI呼び出した履歴がないプリンシパルから が呼び出された場合API、このソースにはこのオペレーションのアクセス許可が必要ですか? バケットの許可をさらに制限することはできますか?

    • ユーザー名 ANONYMOUS_PRINCIPALユーザータイプ AWSAccount のアクセスがあった場合、これは、バケットがパブリックであり、アクセスされたことを示します。このバケットはパブリックであるべきですか? そうでない場合は、S3 リソースを共有する代替ソリューションについて、以下のセキュリティに関するレコメンデーションを確認してください。

    • アクセスが、 のユーザータイプANONYMOUS_PRINCIPALを持つユーザー名からの正常なPreflightRequest呼び出しによるAWSAccountものである場合は、バケットにクロスオリジンリソース共有 (CORS) ポリシーが設定されていることを示します。このバケットにはCORSポリシーが必要ですか? そうでない場合は、バケットが不用意に公開されないようにし、S3 リソースを共有する代替ソリューションについて、以下のセキュリティに関するレコメンデーションを確認してください。詳細については、S3 ユーザーガイドの「クロスオリジンリソース共有 (CORS) の使用CORS」を参照してください。

  4. S3 バケットに機密データが含まれているかどうか判断します。

    Amazon Macie を使用して、S3 バケットに個人を特定できる情報 (PII)、財務データ、認証情報などの機密データが含まれているかどうかを判断します。Macie アカウントで機密データの自動検出が有効になっている場合は、S3 バケットの詳細を確認して S3 バケットのコンテンツをよりよく理解してください。Macie アカウントでこの機能が無効になっている場合、評価を早めるために有効にすることをおすすめします。または、機密データ検出ジョブを作成して実行し、S3 バケットのオブジェクトに機密データがないかを検査することもできます。詳細については、「機密ログデータをマスキングで保護する」を参照してください。

アクセスが許可されている場合は、検出結果を無視できます。https://console.aws.amazon.com/guardduty/ コンソールでは、個々の検出結果が表示されないように完全に抑制するルールを設定できます。詳細については、「抑制ルール」を参照してください。

S3 データが権限のない当事者によって公開またはアクセスされたと判断した場合は、次の S3 セキュリティに関する推奨事項を確認して、アクセス許可を厳しくし、アクセスを制限します。適切な修復ソリューションは、特定の環境のニーズによって異なります。

特定の S3 バケットアクセスのニーズに基づく推奨事項

次のリストは、特定の Amazon S3 バケットアクセスのニーズに基づく推奨事項を示しています。

  • S3 データ使用へのパブリックアクセスを一元的に制限するために、S3 はパブリックアクセスをブロックします。ブロックパブリックアクセス設定は、アクセスポイント、バケット、アカウントに対して 4 AWS つの異なる設定で有効にして、アクセスの粒度を制御できます。「S3 Block Public Access Settings」(S3 ブロックパブリックアクセス設定) を参照してください。

  • AWS アクセスポリシーを使用して、IAMユーザーが リソースにアクセスする方法やバケットにアクセスする方法を制御できます。詳細については、「バケットポリシーとユーザーポリシーの使用」を参照してください。

    さらに、S3 バケットポリシーで Virtual Private Cloud (VPC) エンドポイントを使用して、特定のVPCエンドポイントへのアクセスを制限できます。詳細については、Amazon S3 のVPCエンドポイントのバケットポリシーの例」を参照してください。

  • アカウント外の信頼されたエンティティへの S3 オブジェクトへのアクセスを一時的に許可するには、S3 URLを通じて署名付き を作成できます。このアクセスは、アカウントの認証情報を使用して作成され、使用される認証情報に応じて 6 時間から 7 日間使用できます。詳細については、S3 URLsで署名付き の生成」を参照してください。

  • 異なるソース間で S3 オブジェクトを共有する必要があるユースケースでは、S3 アクセスポイントを使用して、プライベートネットワーク内のオブジェクトのみへのアクセスを制限する許可セットを作成できます。詳細については、「Amazon S3 Access Points を使用したデータアクセスの管理」を参照してください。

  • 他の AWS アカウントに S3 リソースへのアクセスを安全に付与するには、アクセスコントロールリスト (ACL) を使用できます。詳細については、「 による S3 アクセスの管理ACLs」を参照してください。

S3 セキュリティオプションの詳細については、S3 セキュリティのベストプラクティス」を参照してください。