

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

# GuardDuty Malware Protection for AWS Backup
<a name="malware-protection-backup"></a>

**Topics**
+ [概要:](#malware-protection-backup-overview)
+ [Malware Protection for Backup の仕組み](malware-protection-backup-how-it-works.md)
+ [GuardDuty Malware Protection for Backup: IAM ロールのアクセス許可](malware-protection-backup-iam-permissions.md)
+ [**(オプション) Malware Protection for Backup を個別に開始する (コンソールのみ)**](malware-protection-backup-get-started-independent.md)
+ [Malware Protection for Backup のオンデマンドスキャンの開始](malware-protection-backup-start-on-demand-scan.md)
+ [Malware Protection for Backup でのスキャンステータスと結果のモニタリング](monitoring-malware-protection-backup-scans.md)
+ [Malware Protection for Backup のクォータ](malware-protection-backup-quotas.md)

## 概要:
<a name="malware-protection-backup-overview"></a>

 Malware Protection for Backup は、Amazon EBS スナップショット、Amazon EC2 AMIs、Amazon S3 リカバリポイントなどの AWS Backup で保護されたリソースをスキャンして、バックアップデータにマルウェアが存在する可能性を検出するのに役立ちます。 AWS Backup が保護されたバックアップリソースを作成または更新すると、GuardDuty はそのバックアップに対してマルウェアスキャンを実行して、環境に復元される前に悪意のある可能性のあるコンテンツを特定できます。

**Malware Protection for Backup の使用方法**

この機能は、アカウントで GuardDuty が有効になっているかどうかに応じて、次の 2 つのモードで使用できます。

1. GuardDuty を有効にして Malware Protection for Backup を使用する

   リージョンで GuardDuty が有効になっている場合、 AWS Backup は Malware Protection を GuardDuty の検出結果ワークフローと統合します。マルウェアスキャンの結果は、Amazon EventBridge と Amazon CloudWatch に加えて GuardDuty の検出結果に表示されます。

1. GuardDuty を有効にせずに Malware Protection for Backup を使用する

   Malware Protection for Backup は、完全な GuardDuty サービスを有効にすることなく、個別に使用できます。このモードでは、EventBridge と CloudWatch を通じてスキャン結果を完全に利用できます。

**Malware Protection for Backup を個別に使用する際の考慮事項**

GuardDuty を有効にせずに 機能を使用する場合:
+ バックアッププランの設定は、 AWS Backup で完全に管理されます。

GuardDuty は、バックアッププラン、ボールト、またはリソースタイプを選択するためのコントロールを提供しません。すべての有効化、スケジューリング、ポリシー設定は AWS Backup に残ります。
+ GuardDuty の検出結果は生成されません。

検出結果には、GuardDuty が有効になっている場合にのみ作成されるディテクター ID が必要です。Malware Protection を個別に使用する場合、スキャン結果は EventBridge イベントと CloudWatch メトリクスを通じてのみ表示されます。
+ GuardDuty コンソールからオンデマンドスキャンを開始できます。

GuardDuty が有効になっていない場合でも、GuardDuty コンソールには、サポートされているバックアップリソースタイプのオンデマンドマルウェアスキャンを開始するワークフローが用意されています。これにより、お客様は完全な GuardDuty サービスを必要とせずに、使い慣れた GuardDuty インターフェイスを使用できます。
+ GuardDuty 以外のお客様は、スキャン開始ワークフローにアクセスできます。

オンデマンドスキャンエントリポイントは、GuardDuty ディテクターがアカウントに存在するかどうかにかかわらず、Malware Protection for Backup を使用しているすべてのお客様が使用できます。
+ スキャンの動作とカバレッジは同じままです。

GuardDuty が有効になっているかどうかにかかわらず、この機能は同じマルウェア検出エンジンを使用して同じ AWS Backup リソースタイプをスキャンします。唯一の違いは、結果が公開される場所です。

このモデルを使用すると、GuardDuty のより広範な脅威検出機能を使用せずに、バックアップのマルウェアスキャンを採用できます。また、スキャンオペレーションを開始および表示するためのオプションの GuardDuty ベースのワークフローも提供します。

**Malware Protection for Backup の仕組み**

Malware Protection for Backup では、次の AWS バックアップで保護されたリソースをスキャンできます。
+ Amazon EBS snapshots
+ Amazon EC2 AMI
+ Amazon S3 リカバリポイント
+ [サポートされているリージョン](https://docs.aws.amazon.com/aws-backup/latest/devguide/backup-feature-availability.html#features-by-region)で AWS Backup Vault Lock を使用してロックされた (イミュータブル) ボールト (EBS/EC2 リカバリポイント)

*増分スキャン*

 AWS Backup は、多くのリソースタイプの増分変更をキャプチャします。GuardDuty には、バックアップの作成時または更新時に新規または変更されたブロックまたはオブジェクトのみをスキャンする機能があり、パフォーマンスを向上させ、スキャンオーバーヘッドを削減しながら、時間の経過とともにフルカバレッジを実現します。

*オンデマンドスキャン*

 サポートされているバックアップリソースでは、 AWS Backup または GuardDuty コンソールから直接、いつでもスキャンを開始できます。一般的なユースケースには、復元前のバックアップの検証、新しい脅威署名の公開後の古いデータの再チェック、定期的なコンプライアンススキャンの実行などがあります。

**注記**  
Malware Protection for Backup は、同じリージョンのバックアップリソースに対してのみ有効にできます。
GuardDuty はバックアップの読み取り専用コピーをスキャンします。バックアップコンテンツは変更されません。
スキャンは、標準ボールトとロック (イミュータブル) ボールトの両方で機能します。

# Malware Protection for Backup の仕組み
<a name="malware-protection-backup-how-it-works"></a>

このセクションでは、Malware Protection for Backup のコンポーネント、その仕組み、マルウェアスキャンのステータスと結果を確認する方法について説明します。

## 概要:
<a name="malware-protection-backup-overview"></a>

Malware Protection for Backup は、EBS スナップショット、EC2 イメージ (AMI)、EBS、EC2、EC2S3 リソースタイプに属する復旧ポイントにマルウェアが存在することを検出するのに役立つ機能です。スキャンに必要なアクセス許可と、スキャンカテゴリに応じて 1 つまたは 2 つのリソース ARNs を提供する IAM ロールを渡すことで、GuardDuty コンソールまたは API を介してオンデマンドマルウェアスキャンを開始できます。フルスキャンと増分スキャンの 2 つのスキャンカテゴリがあります。

### フルスキャンと増分スキャン
<a name="malware-protection-backup-scan-types"></a>

フルスキャンは、API がリソース ARN を受け入れ、そのリソース内のすべてのファイルをスキャンする場所です。一方、増分スキャンでは、同じリソースに属する 2 つのリソース ARNs を取得し、それらの間で変更されたファイルをスキャンします。たとえば、EBS ボリュームのスナップショットを作成するとします。snapshot*-1* と呼びます。このスナップショットでフルスキャンが実行された場合、GuardDuty はこのスナップショットに含まれるすべてのファイルをスキャンします。ここで、同じボリュームにいくつかのファイルが追加され、新しいスナップショットが作成されるとします。snapshot*-2* と呼びます。*snapshot-1* と *snapshot-2* の間で変更されたファイルはわずかであるため、これらの 2 つのスナップショットのリソース ARNs を使用して増分スキャンをトリガーできます。この場合、*snapshot-2* は`target`リソースと呼ばれ、*snapshot-1* は`base`リソースと呼ばれます。この用語は、ドキュメントの残りの部分で使用されます。この増分スキャンは、*snapshot-1* と *snapshot-2 *の間で変更されたファイルをスキャンします。

### 増分スキャンでの以前に感染したファイルの再スキャン
<a name="malware-protection-backup-rescanning-infected-files"></a>

増分スキャンの一環として、GuardDuty は以前に感染したファイルをベーススキャンから最大 365 日間再スキャンします。

### 増分スキャンの要件
<a name="malware-protection-backup-incremental-requirements"></a>

GuardDuty が増分スキャンを実行するには、次の要件を満たす必要があります。これらの要件のいずれかが満たされない場合、GuardDuty はスキャンをスキップします。
+ ベースリソースは過去 365 日以内にスキャンする必要があり、スキャン結果は `COMPLETED`または である必要があります`COMPLETED_WITH_ISSUES`。
+ ベースリソースには、ターゲットリソースの作成日より前の作成日が必要です。
+ スナップショットの場合、ベースリソースとターゲットリソースは同じ暗号化タイプである必要があります。
+ ベースリソースとターゲットリソースは同じ系統のものである必要があります。
  + EBS スナップショットと EBS 復旧ポイントの場合、暗号化タイプを変更せずに、同じボリュームから取得されるか、同じボリュームのコピーから取得されることを意味します。
  + S3 復旧ポイントの場合、ベースリソース ARN とターゲットリソース ARNs は、同じ基盤となる S3 バケットから作成する必要があります。
  + AMIs の場合、スナップショットのペアはベース AMI とターゲット AMI の間で比較され、増分スキャンのスナップショットを識別します。スナップショットの各ペアは、上記の条件を満たす必要があります。ターゲット AMI 内で、対応する一致するスナップショットがベース AMI にないスナップショットはスキップされます。

### 以前にスキャンしたバックアップリソースの再スキャン
<a name="malware-protection-backup-rescanning-resources"></a>

前回のマルウェアスキャンの開始時刻から 10 分後に、同じリソースで新しいオンデマンドマルウェアスキャンを開始できます。前回のマルウェアスキャンの開始から 10 分以内に新しいマルウェアスキャンが開始された場合、リクエストは次のエラーになり、このリクエストに対してスキャン ID は生成されません。インスタンスを再スキャンするステップは、オンデマンドマルウェアスキャンを初めて開始する場合と同じです。

## スキャンに必要な IAM ロール
<a name="malware-protection-backup-iam-role-required"></a>

フルスキャンまたは増分スキャンを開始するには、IAM ロールを渡す必要があります。このロールは、スキャンオペレーションの実行に必要なアクセス許可を提供します。 [GuardDuty Malware Protection for Backup: IAM ロールのアクセス許可](malware-protection-backup-iam-permissions.md)は、スキャンの実行に必要な関連する信頼ポリシーとともに、必要なアクセス許可の正確なリストを提供します。

## リソーススキャンのステータスと結果の確認
<a name="malware-protection-backup-reviewing-scan-status"></a>

GuardDuty は、スキャン結果イベントを Amazon EventBridge のデフォルトイベントバスに発行します。GuardDuty は at-least-once 配信を使用します。つまり、同じオブジェクトに対して複数のスキャン結果を受け取る可能性があります。アプリケーションは、重複した結果を処理できるように設計することをお勧めします。スキャンされた各オブジェクトには 1 回だけ課金されます。

詳細については、「[Malware Protection for Backup でのスキャンステータスと結果のモニタリング](monitoring-malware-protection-backup-scans.md)」を参照してください。

## 生成された検出結果の確認
<a name="malware-protection-backup-reviewing-findings"></a>

検出結果の確認は、GuardDuty で Malware Protection for Backup を使用しているかどうかによって異なります。次のシナリオを考えてみてください。

**GuardDuty サービスが有効になっている場合の Malware Protection for Backup の使用 (ディテクター ID)**

マルウェアスキャンがスキャンされた Backup リソース内の潜在的に悪意のあるファイルを検出すると、GuardDuty は関連する検出結果を生成します。検出結果の詳細を確認し、推奨手順に従って検出結果を修復できる可能性があります。Export [の検出結果の頻度](https://docs.aws.amazon.com/guardduty/latest/ug/guardduty_exportfindings.html#guardduty_exportfindings-frequency)に基づいて、生成された検出結果は S3 バケットと Amazon EventBridge イベントバスにエクスポートされます。

生成される検出結果タイプについては、「Malware Protection for Backup の検出[Malware Protection for Backup の検出結果タイプ](findings-malware-protection-backup.md)結果タイプ」を参照してください。

**Malware Protection for Backup を独立した機能として使用する (ディテクター ID なし)**

関連付けられたディテクター ID がないため、GuardDuty は検出結果を生成できません。バックアップリソースのスキャンステータスを知るには、GuardDuty が自動的にデフォルトのイベントバスに発行するスキャン結果を表示できます。

スキャンのステータスと結果の詳細については、「」を参照してください[Malware Protection for Backup でのスキャンステータスと結果のモニタリング](monitoring-malware-protection-backup-scans.md)。

**注記**  
 Malware Protection for S3 も使用している場合、S3 ファイルが以前に NO\$1THREATS\$1FOUND とタグ付けされていても、オブジェクトが属する Backup Recovery Point の脅威のリストに同じファイルが表示される可能性があります。これは、サービスがマルウェア署名を頻繁に更新するためで、ファイルのステータスが変更された可能性があります。このような場合、GuardDuty は元の S3 バケットの ファイルのタグに戻って更新しないことに注意してください。ファイルに更新されたタグを適用する唯一の方法は、オブジェクトをバケットに再アップロードするか、S3 のオンデマンドスキャン機能を使用することです。

# GuardDuty Malware Protection for Backup: IAM ロールのアクセス許可
<a name="malware-protection-backup-iam-permissions"></a>

## マルウェアスキャンのために提供される顧客ロール
<a name="malware-protection-backup-customer-role"></a>

GuardDuty Malware Protection は、バックアップリソース、つまりスナップショット、AMIsEBS/EC2/S3 リカバリポイントでスキャンが開始されたときに、顧客ロール (スキャナーロール) が提供されることを想定しています。このロールは、GuardDuty がこれらの特定のリソースでスキャンを実行するために必要なアクセス許可を提供します。このロールのアクセス許可ポリシーと信頼ポリシーは、 にあります[ロールのアクセス許可と信頼ポリシー](#malware-protection-backup-permissions-trust-policy)。以下のセクションでは、これらの各アクセス許可が必要な理由について説明します。

## アクセス許可の詳細
<a name="malware-protection-backup-permission-details"></a>
+ `ModifySnapshotAttribute` - 暗号化されていない、カスタマーマネージドキーで暗号化されたスナップショットに GuardDuty Malware Protection サービスアカウントからアクセスできるようにします。
+ `CreateGrant` - GuardDuty Malware Protection が、GuardDuty サービスアカウントがアクセスできるカスタマーマネージドキー暗号化スナップショットからカスタマーマネージドキー暗号化 EBS ボリュームを作成してアクセスできるようにします。
+ `RetireGrant` - GuardDuty Malware Protection が、暗号化されたスナップショットを読み取るためにカスタマーマネージドキーで作成された許可を廃止できるようにします。
+ `ReEncryptTo` および `ReEncryptFrom` - EBS がカスタマーマネージドキーで暗号化されたスナップショットへのアクセスを GuardDuty に許可し、そこから暗号化されたボリュームを作成するために必要です。お客様は、共有中のスナップショットの ReEncryption をキー移行と考える場合がありますが、スナップショットは作成後も顧客の観点から変更できません。
+ `ListSnapshotBlocks` および `GetSnapshotBlock` - EBS Direct APIsは、 AWS マネージドキー暗号化スナップショットのスナップショットブロックにアクセスするために使用されます。これは、 AWS マネージドキーで暗号化されたスナップショットにクロスアカウントでアクセスできないために行われます。
+ `Decrypt` - 増分スキャンの一部として EBS Direct APIs復号を許可します。
+ `ListChangedBlocks` - 2 つのスナップショット間で変更されたブロックのリストを取得するための増分スナップショットスキャンで使用される EBS Direct API。
+ `DescribeKey` - GuardDuty Malware Protection がカスタマーアカウントの AWS マネージドキーの keyId を決定できるようにします。
+ `DescribeImages` - AMI に属しているスナップショットのリストを取得するための AMI の説明を許可します。
+ `DescribeRecoveryPoint` - サービスが復旧ポイントの詳細を取得し、復旧ポイントのリソースタイプを検証できるようにします。
+ `CreateBackupAccessPoint`、`DescribeBackupAccessPoint`、 `DeleteBackupAccessPoint` - 復旧ポイントへのアクセスに必要なアクセスポイントの作成、説明、削除をサービスに許可します。
+ `kms:Decrypt` - S3 リカバリポイントスキャン中に、サービスが S3 リカバリポイント内のオブジェクトにアクセスできるようにします。

## ロールの保護
<a name="malware-protection-backup-securing-role"></a>

ロールは、GuardDuty Malware Protection サービスプリンシパルを信頼する信頼ポリシーで設定する必要があります。これにより、GuardDuty サービス以外のプリンシパルがこのロールを引き受けることはできません。さらに、 ではなく特定のリソースにポリシーを絞り込むことをお勧めします`*`。これには、スナップショット ID とキー ID が含まれます。これにより、ロールはそれらの特定のリソースにのみアクセスできるようになります。

**重要**  
設定が正しくないと、アクセス許可が不十分であるためにスキャンが失敗する可能性があります。

## GuardDuty Malware Protection が KMS AWS で許可を使用する方法
<a name="malware-protection-backup-kms-grants"></a>

GuardDuty Malware Protection では、KMS キーを使用するための[許可](https://docs.aws.amazon.com/kms/latest/developerguide/grants.html)が必要です。

暗号化されたスナップショットまたは暗号化されたスナップショットで構成される EC2 AMI でスキャンを開始すると、GuardDuty Malware Protection は [CreateGrant](https://docs.aws.amazon.com/kms/latest/APIReference/API_CreateGrant.html) リクエストを KMS に送信することで、ユーザーに代わって許可を作成します。 AWS これらの許可により、GuardDuty はアカウント内の特定のキーにアクセスできます。

GuardDuty Malware Protection では、カスタマーマネージドキーを次の内部オペレーションに使用する権限が必要です。
+ [DescribeKey](https://docs.aws.amazon.com/kms/latest/APIReference/API_DescribeKey.html) リクエストを AWS に送信して、マルウェアスキャン用に送信されたリソースが暗号化されている対称カスタマーマネージドキーに関する詳細を取得します。
+ [CreateVolume](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateVolume.html) API を使用して暗号化されたスナップショットから EBS ボリュームを作成し、同じキーでボリュームを暗号化します。
+ 増分スキャン中に [GetSnapshotBlock](https://docs.aws.amazon.com/ebs/latest/APIReference/API_GetSnapshotBlock.html) API を使用してスナップショットのスナップショットブロックにアクセスします。
+ KMS AWS に [Decrypt](https://docs.aws.amazon.com/kms/latest/APIReference/API_Decrypt.html) リクエストを送信して暗号化されたデータキーを復号し、スキャン中にスナップショット上のデータを読み取るために使用できます。

作成された権限はいつでも取り消すか、カスタマーマネージドキーへのサービスのアクセスを削除できます。その場合、GuardDuty はカスタマーマネージドキーによって暗号化されたデータにアクセスできず、そのデータに依存するオペレーションに影響します。

## GuardDuty Malware Protection 暗号化コンテキスト
<a name="malware-protection-backup-encryption-context"></a>

[暗号化コンテキスト](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#encrypt_context)は、データに関する追加のコンテキスト情報を含むキーと値のペアのオプションセットです。

データを暗号化するリクエストに暗号化コンテキストを含めると、 AWS KMS; は暗号化コンテキストを暗号化されたデータにバインドします。データを復号化するには、そのリクエストに (暗号化時と) 同じ暗号化コンテキストを含めます。

GuardDuty Malware Protection は、2 つの暗号化コンテキストのいずれかを使用します。

**暗号化コンテキスト 1:** キーは です`aws:guardduty:id`。

```
"encryptionContext": {
    "aws:guardduty:id": "snap-11112222333344"
}
```

この暗号化コンテキストは、CreateGrant、Decrypt、GenerateDataKeyWithoutPlaintext、ReEncryptTo、RetireGrant、DescribeKey のグラントオペレーションで使用されます。

この暗号化コンテキストと許可オペレーションを使用して、現在のリソースに 1 つの許可が作成されます。

**暗号化コンテキスト 2:** キーは です `aws:ebs:id`

```
"encryptionContext": {
    "aws:ebs:id": "snap-11112222333344"
}
```

この暗号化コンテキストは、ReEncryptFrom、Decrypt、RetireGrant、DescribeKey のグラントオペレーションで使用されます。

これらの暗号化コンテキストと権限オペレーションを使用して 3 つの権限が作成されます。`ReEncryptFrom` 許可オペレーションを使用したターゲットスナップショット上の 1 つ。`Decrypt, RetireGrant, DescribeKey` オペレーションを含むターゲットスナップショットの 2 番目のスナップショット。また、2 番目のグラントと同じグラントオペレーションを持つベーススナップショットの 3 つ目。

## ロールのアクセス許可と信頼ポリシー
<a name="malware-protection-backup-permissions-trust-policy"></a>

**アクセス許可ポリシー**

```
{
    "Version": "2012-10-17",		 	 	 
    "Statement": [{
            "Effect": "Allow",
            "Action": [
                "ebs:ListSnapshotBlocks",
                "ebs:ListChangedBlocks",
                "ebs:GetSnapshotBlock"
            ],
            "Resource": "arn:aws:ec2:*::snapshot/*"
        },
        {
            "Sid": "CreateGrantPermissions",
            "Effect": "Allow",
            "Action": "kms:CreateGrant",
            "Resource": "arn:aws:kms:*:*:key/*",
            "Condition": {
                "ForAnyValue:StringLike": {
                    "kms:EncryptionContext:aws:guardduty:id": "snap-*",
                    "kms:ViaService": [
                        "guardduty.*.amazonaws.com",
                        "backup.*.amazonaws.com"
                    ]
                },
                "ForAllValues:StringEquals": {
                    "kms:GrantOperations": [
                        "Decrypt",
                        "CreateGrant",
                        "GenerateDataKeyWithoutPlaintext",
                        "ReEncryptFrom",
                        "ReEncryptTo",
                        "RetireGrant",
                        "DescribeKey"
                    ]
                },
                "Bool": {
                    "kms:GrantIsForAWSResource": "true"
                }
            }
        },
        {
            "Sid": "CreateGrantPermissionsForReEncryptAndDirectAPIs",
            "Effect": "Allow",
            "Action": "kms:CreateGrant",
            "Resource": "arn:aws:kms:*:*:key/*",
            "Condition": {
                "ForAnyValue:StringLike": {
                    "kms:EncryptionContext:aws:ebs:id": "snap-*",
                    "kms:ViaService": [
                        "guardduty.*.amazonaws.com",
                        "backup.*.amazonaws.com"
                    ]
                },
                "ForAllValues:StringEquals": {
                    "kms:GrantOperations": [
                        "Decrypt",
                        "ReEncryptTo",
                        "ReEncryptFrom",
                        "RetireGrant",
                        "DescribeKey"
                    ]
                },
                "Bool": {
                    "kms:GrantIsForAWSResource": "true"
                }
            }
        },
        {
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeImages",
                "ec2:DescribeSnapshots"
            ],
            "Resource": "*"
        },
        {
            "Sid": "ShareSnapshotPermission",
            "Effect": "Allow",
            "Action": [
                "ec2:ModifySnapshotAttribute"
            ],
            "Resource": "arn:aws:ec2:*:*:snapshot/*"
        },
        {
            "Sid": "ShareSnapshotKMSPermission",
            "Effect": "Allow",
            "Action": [
                "kms:ReEncryptTo",
                "kms:ReEncryptFrom"
            ],
            "Resource": "arn:aws:kms:*:*:key/*",
            "Condition": {
                "StringLike": {
                    "kms:ViaService": "ec2.*.amazonaws.com"
                }
            }
        },
        {
            "Sid": "DescribeKeyPermission",
            "Effect": "Allow",
            "Action": "kms:DescribeKey",
            "Resource": "arn:aws:kms:*:*:key/*"
        },
        {
            "Sid": "DescribeRecoveryPointPermission",
            "Effect": "Allow",
            "Action": [
                "backup:DescribeRecoveryPoint"
            ],
            "Resource": "*"
        },
        {
            "Sid": "CreateBackupAccessPointPermissions",
            "Effect" : "Allow",
            "Action" : [
                "backup:CreateBackupAccessPoint"  
            ],
            "Resource": "arn:aws:backup:*:*:recovery-point:*"
        },
        {
            "Sid": "ReadAndDeleteBackupAccessPointPermissions",
            "Effect" : "Allow",
            "Action" : [
                "backup:DescribeBackupAccessPoint",
                "backup:DeleteBackupAccessPoint"     
            ],
            "Resource": "*"
        },
        {
            "Sid": "KMSKeyPermissionsForInstantAccess",
            "Effect": "Allow",
            "Action": [
                "kms:Decrypt"
            ],
            "Resource": "arn:aws:kms:*:*:key/*",
            "Condition": {
                "StringLike": {
                    "kms:ViaService": "backup.*.amazonaws.com"
                }
            }
        }
    ]
}
```

**信頼ポリシー**

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "malware-protection.guardduty.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

# **(オプション) Malware Protection for Backup を個別に開始する (コンソールのみ)**
<a name="malware-protection-backup-get-started-independent"></a>

 AWS アカウントの GuardDuty ステータスに関係なく、Malware Protection for Backup 脅威検出オプションの使用を開始する場合は、このオプションのステップを使用します。

GuardDuty で他の専用の保護プランも使用する場合は、Amazon GuardDuty サービスの使用を開始する必要があります。GuardDuty 保護プランの詳細については、[GuardDuty の機能](https://docs.aws.amazon.com/guardduty/latest/ug/what-is-guardduty.html#features-of-guardduty)」を参照してください。

## **Malware Protection for Backup の使用を開始する手順**
<a name="malware-protection-backup-steps-get-started-independent"></a>

1.  AWS マネジメントコンソールにサインインし、[https://console.aws.amazon.com/guardduty/](https://console.aws.amazon.com/guardduty/) で [https://console.aws.amazon.com/guardduty/](https://console.aws.amazon.com/guardduty/) コンソールを開きます。

1. **Malware Protection 機能の検出**を選択し、**開始**方法をクリックします。

1. **開始方法** をクリックすると、 AWS バックアップ機能や S3 Malware Protection 機能などのオプションから選択できます。  
![\[alt text not found\]](http://docs.aws.amazon.com/ja_jp/guardduty/latest/ug/images/malware_protection_backup_new_feature_console.png)

1. Malware Protection for Backup ページに移動し、**オンデマンドスキャンを開始する**か、**マルウェアスキャンを表示する**かを選択できます。  
![\[alt text not found\]](http://docs.aws.amazon.com/ja_jp/guardduty/latest/ug/images/malware_protection_backup_console.png)

# Malware Protection for Backup のオンデマンドスキャンの開始
<a name="malware-protection-backup-start-on-demand-scan"></a>

## コンソール
<a name="malware-protection-backup-console-start-scan"></a>

1.  AWS マネジメントコンソールにサインインし、[https://console.aws.amazon.com/guardduty/](https://console.aws.amazon.com/guardduty/) で GuardDuty コンソールを開きます。

1. **Malware Protection for Backup** に移動し、**オンデマンドスキャンの開始**をクリックします。

1. フルスキャンと増分スキャンのどちらかを選択します。

   1. フルスキャンを開始するには、スキャンするリソースのリソース ARN を入力します。

   1. 増分スキャンの場合は、ターゲットリソース ARN とベースラインリソース ARN を入力します。

   1. スキャンされるリソースが復旧ポイントの場合は、それが属する AWS バックアップボールトの名前も入力する必要があります。

1. サービスアクセス - リソースにアクセスしてスキャンを実行するために必要なアクセス許可を持つロールを選択する必要があります。**ポリシーの表示**をクリックして、ロールに必要な正確なアクセス許可と、必要な信頼ポリシーを表示します。

要件に基づいてポリシーを変更するか、アクセス許可を正確なリソースに絞り込むことができます。IAM ロールを作成または更新する方法の詳細については、「」を参照してください[GuardDuty Malware Protection for Backup: IAM ロールのアクセス許可](malware-protection-backup-iam-permissions.md)。

IAM ロールのアクセス許可に関する問題については、[「IAM ロールのアクセス許可のトラブルシューティングエラー](https://docs.aws.amazon.com/guardduty/latest/ug/troubleshoot-malware-protection-s3-iam-role-permissions-error.html)」を参照してください。

## API/CLI
<a name="malware-protection-backup-api-cli-start-scan"></a>

オンデマンドマルウェアスキャンを開始するリソース`resourceArn`の を受け入れる [StartMalwareScan](https://docs.aws.amazon.com/guardduty/latest/APIReference/API_StartMalwareScan.html) を呼び出します。増分スキャンを開始する場合は、 の を渡`baselineResourceArn`します`incrementalScanDetails`。スキャン設定の一部として、スキャンの開始に必要なすべてのアクセス許可を持つ IAM ロールも指定する必要があります。スキャンを正常に開始すると、`StartMalwareScan` は `scanId` を返します。`GetMalwareScan` API を呼び出して、開始されたスキャンの進行状況をモニタリングし、スキャンが完了したらスキャンの詳細を取得します。

# Malware Protection for Backup でのスキャンステータスと結果のモニタリング
<a name="monitoring-malware-protection-backup-scans"></a>

マルウェアスキャンが開始されると、GuardDuty はスキャンのステータスと結果をモニタリングするいくつかのメカニズムを提供します。次の表は、マルウェアスキャンに関連する値の一部を示しています。


| Category | 考えられる 値 | 
| --- | --- | 
|  [Scan status] (スキャンステータス)  |  `RUNNING`、 `COMPLETED`、 `COMPLETED_WITH_ISSUES`、 `FAILED`、 または `SKIPPED`  | 
|  スキャンカテゴリ  |  `FULL_SCAN`、または `INCREMENTAL_SCAN`  | 
|  [スキャンタイプ]  |  `GUARDDUTY_INITIATED`、`ON_DEMAND`、または `BACKUP_INITIATED`  | 
|  スキャン結果のステータス  |  `NO_THREATS_FOUND`、または `THREATS_FOUND`  | 

\$1スキャンが完了していない場合、スキャン結果ステータスが存在しない可能性があることに注意してください。THREATS\$1FOUND のスキャン結果ステータスは、GuardDuty がマルウェアの存在を検出したことを示します。

S3 復旧ポイントの場合、COMPLETED\$1WITH\$1ISSUES は、一部のファイルがスキップまたは失敗したことを示します。AMI の場合、COMPLETED\$1WITH\$1ISSUES は少なくとも 1 つのスナップショットがスキャンできなかったことを示します。スキップされた理由のリストについては、以下を参照してください。

スキャンは、さまざまな理由でスキップされる場合があります。次の表に、スキャンがスキップされる理由を示します。


| スキャンがスキップされた理由 | Reason | 
| --- | --- | 
|  ACCESS\$1DENIED  |  顧客ロールには、サービスがスキャンを実行するために必要なアクセス許可がありません  | 
|  RESOURCE\$1NOT\$1FOUND  |  スキャンしようとしているリソースがアカウントに存在しないか、スキャン中に削除されました  | 
|  SNAPSHOT\$1SIZE\$1LIMIT\$1EXCEEDED  |  スナップショットサイズが GuardDuty で現在サポートされているサイズを超えています  | 
|  INCREMENTAL\$1NO\$1DIFFERENCE  |  増分スキャンリクエストで指定されたリソースに違いはありません  | 
|  RESOURCE\$1UNAVAILABLE  |  リソースが想定どおりの状態ではありません。スキャンが増分の場合、基本復旧ポイントは AVAILABLE または COMPLETED 状態ではありません  | 
|  UNRELATED\$1RESOURCES  |  増分スキャンの場合 - ベースリソースと現在のリソースが同じ系統のものではない  | 
|  BASE\$1RESOURCE\$1NOT\$1SCANNED  |  増分スキャンの場合 - ベースリソースが以前にスキャンされていないか、完了したスキャンが見つかりませんでした  | 
|  BASE\$1CREATED\$1AFTER\$1TARGET  |  増分スキャンの場合 - ベースリソースの作成日が現在のリソースの作成日より大きい  | 
|  UNSUPPORTED\$1FOR\$1INCREMENTAL  |  リクエストされたリソースタイプは増分スキャンをサポートしていません  | 
|  UNSUPPORTED\$1AMI  |  パブリック AMI、エフェメラルストレージのみを持つ AMI、および使用可能な状態でない AMI はスキャンの対象ではありません  | 
|  UNSUPPORTED\$1SNAPSHOT  |  コールドストレージスナップショットはスキャンの対象ではありません  | 
|  UNSUPPORTED\$1COMPOSITE\$1RP  |  複合リソースタイプではスキャンはサポートされていません  | 
|  UNSUPPORTED\$1PRODUCT\$1CODE\$1TYPE  |  リクエストされたリソースには、スキャンをサポートしていない Amazon Marketplace 製品コードが含まれています  | 
|  AMI\$1SNAPSHOT\$1LIMIT\$1EXCEEDED  |  AMI の は 40 個を超えるスナップショットのスキャンをサポートしていません  | 
|  NO\$1EBS\$1VOLUMES\$1FOUND  |  リクエストされたリソースの Ebs ブロックデバイスマッピングが見つかりませんでした  | 
|  UNRELATED\$1RESOURCES  |  増分スキャンの場合 - ベースリソースの ARN は、予想されるリソースの ARN とは異なります。  | 
|  ALL\$1FILES\$1SKIPPED\$1OR\$1FAILED  |  スキャン内のすべてのファイルがスキップまたは失敗しました  | 

スキャン結果の保持期間は 90 日間です。任意のアクセス方法を選択して、マルウェアスキャンのステータスを追跡します。

**コンソールを使用したスキャンのモニタリング**

1. [https://console.aws.amazon.com/guardduty/](https://console.aws.amazon.com/guardduty/) で GuardDuty コンソールを開きます。

1. ナビゲーションペインで **[Malware scans]** (マルウェアウェアのスキャン) を選択します。

1. *[フィルター検索バー]* で利用可能な次の **[プロパティ]** によってマルウェアスキャンをフィルターできます。
   + **スキャン ID** – マルウェアスキャンに関連付けられた一意の識別子。
   + **アカウント ID** – マルウェアスキャンが開始されたアカウント。
   + **リソース ARN** – スキャンに関連付けられた Amazon リソースに関連付けられた Amazon リソースネーム (ARN)。
   + **リソースタイプ** – EC2 インスタンス、EBS スナップショット \$1 EC2 AMI、EBS リカバリポイント、EC2 リカバリポイント、S3 リカバリポイントなど、スキャンに関連付けられたリソースのタイプ。
   + **ステータス** – 実行中、スキップ済み、完了済み、問題ありで完了済み、失敗など、スキャンのスキャンステータス。
   + **スキャンタイプ** – これがオンデマンド、GuardDuty 実行型、またはバックアップ実行型のマルウェアスキャンであったかどうかを示します。

**API/CLI を使用したスキャンのモニタリング**
+ ListMalwareScans を呼び出して、`RESOURCE_ARN`、、`SCAN_ID`、、`ACCOUNT_ID``SCAN_TYPE GUARDDUTY_FINDING_ID`、`RESOURCE_TYPE`および `SCAN_STATUS`でマルウェアスキャンをフィルタリングできます`SCAN_START_TIME`。また、GetMalwareScan を呼び出して、スキャン ID を入力として指定することで、スキャンのより詳細なメタデータを取得することもできます。`GUARDDUTY_FINDING_ID` フィルタ条件は、`SCAN_TYPE` が GuardDuty によって開始されたときに利用できます。
+ 以下のコマンドで *filter-criteria* の例を変更し、`CriterionKey`一度に 1 つずつフィルタリングできます。のオプション`CriterionKey`は、`Resource_ARN`、、`SCAN_ID`、`ACCOUNT_ID`、`SCAN_TYPE`、`GUARDDUTY_FINDING_ID`、`SCAN_STATUS``RESOURCE_TYPE`、および です`SCAN_START_TIME`。*max-results* (最大 50) と *sort-criteria* を変更できます。`AttributeName` フィールドは に必須`sort-criteria`であり、 に設定する必要があります`scanStartTime`。次の例で、*赤字*の値はプレスホルダーです。アカウントに適した値に置き換えます。ListMalwareScans に以下`CriterionKey`と同じ を使用する場合は、例をフィルタリングする`EqualsValue`*リソースタイプ*に置き換えてください。

  ```
  aws guardduty list-malware-scans --max-results 25 --sort-criteria '{"AttributeName": "scanStartTime", "OrderBy": "DESC"}' --filter-criteria '{"FilterCriterion":[{"CriterionKey":"RESOURCE_TYPE", "FilterCondition":{"EqualsValue":"EBS_SNAPSHOT"}}] }'
  ```

  ```
  aws guardduty get-malware-scan --scan-id abc123
  ```
+ ListMalwareScans に対する上記のコマンドのレスポンスは、影響を受けるリソース (複数可) に関する詳細を含む最大 25 回のスキャンを返します。GetMalwareScan に対する上記のコマンドのレスポンスは、スキャンに関する詳細メタデータを含む 1 回のスキャンを返します。

**EventBridge を使用したスキャンのモニタリング**

Amazon EventBridge は、アプリケーションをさまざまなイベントソースのデータに簡単に接続できるようにするサーバーレスイベントバスサービスです。EventBridge は、独自のアプリケーション、Software-as-a-Service (SaaS) アプリケーション、Amazon のサービスからリアルタイムデータのストリームを配信し、そのデータを Lambda などのターゲットにルーティングします。これにより、サービスで発生したイベントをモニタリングし、イベント駆動型アーキテクチャを構築できます。詳細については、「[Amazon EventBridge ユーザーガイド](https://docs.aws.amazon.com/eventbridge/latest/userguide/)」を参照してください。

GuardDuty は、スキャンステータスが決定されると、EventBridge 通知をデフォルトのイベントバスに発行します。アカウントで EventBridge ルールを設定して、Amazon EventBridge と統合された他のサービスにイベントを送信できます。EventBridge の標準料金が適用されます。詳細については、「[Amazon EventBridge の料金](https://aws.amazon.com/eventbridge/pricing/)」を参照してください。

以下に示す値の多くは、この例のプレースホルダーであり、スキャンによって異なります。

**Malware スキャン結果イベント**

Backup の潜在的な詳細タイプ値:
+ GuardDuty Malware Protection EBS スナップショットスキャン結果」
+ GuardDuty Malware Protection EC2 AMI スキャン結果」
+ GuardDuty Malware Protection S3 Recovery Point スキャン結果」
+ GuardDuty Malware Protection EBS Recovery Point スキャン結果」
+ GuardDuty Malware Protection EC2 Recovery Point スキャン結果」

**サンプルイベントパターン:**

```
{
      "detail-type": ["GuardDuty Malware Protection EC2 AMI Scan Result"],
      "source": ["aws.guardduty"]
}
```

**脅威が見つからない EC2 AMI スキャンの通知スキーマの例:**

```
{
    "version": "0",
    "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
    "detail-type": "GuardDuty Malware Protection EC2 AMI Scan Result",
    "source": "aws.guardduty",
    "account": "1111222233334444",
    "time": "2025-11-01T00:00:00Z",
    "region": "us-east-1",
    "resources": ["arn:aws:ec2:us-east-1:1111222233334444:image/ami-1234567890abcdef0"],
    "detail": {
        "schemaVersion": "1.0",
        "scanStatus": "COMPLETED",
        "resourceType": "EC2_AMI",
        "scanId": "d41d8cd98f00b204e9800998ecf8427e",
        "scanStatusReason": null,
        "scanType": "ON_DEMAND",
        "triggerType": "GUARDDUTY",
        "scanCategory": "FULL_SCAN",
        "scanStartTime": 1234567890123,
        "scanCompleteTime": 2345678901234,
        "scanResultDetails": {
            "scanResultStatus": "NO_THREATS_FOUND",
            "uniqueThreatCount": null
        }
    }
}
```

**脅威が見つかった EC2 AMI スキャンの通知スキーマの例:**

```
{
    "version": "0",
    "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222",
    "detail-type": "GuardDuty Malware Protection EC2 AMI Scan Result",
    "source": "aws.guardduty",
    "account": "1111222233334444",
    "time": "2025-11-01T00:00:00Z",
    "region": "us-east-1",
    "resources": ["arn:aws:ec2:us-east-1:1111222233334444:image/ami-1234567890abcdef0"],
    "detail": {
        "schemaVersion": "1.0",
        "scanStatus": "COMPLETED",
        "resourceType": "EC2_AMI",
        "scanId": "d41d8cd98f00b204e9800998ecf8427e",
        "scanStatusReason": null,
        "scanType": "ON_DEMAND",
        "triggerType": "GUARDDUTY",
        "scanCategory": "FULL_SCAN",
        "scanStartTime": 1234567890123,
        "scanCompleteTime": 2345678901234,
        "scanResultDetails": {
            "scanResultStatus": "THREATS_FOUND",
            "uniqueThreatCount": 1,
            "threats": {
                "name": "EICAR-Test-File (not a virus)",
                "source": "AMAZON",
                "count": 2,
                "itemDetails": [{
                    "resourceArn": "arn:aws:ec2:us-east-1:1111222233334444:snapshot/snap-abcdef01234567890",
                    "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
                    "itemPath": "/eicar.txt",
                    "additionalInfo": {
                        "versionId": null,
                        "deviceName": "/dev/sdf"
                    }
                }]
            }
        }
    }
}
```

**スキップされた EC2 AMI スキャンの通知スキーマの例:**

```
{
    "version": "0",
    "id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333",
    "detail-type": "GuardDuty Malware Protection EC2 AMI Scan Result",
    "source": "aws.guardduty",
    "account": "1111222233334444",
    "time": "2025-11-01T00:00:00Z",
    "region": "us-east-1",
    "resources": ["arn:aws:ec2:us-east-1:1111222233334444:image/ami-1234567890abcdef0"],
    "detail": {
        "schemaVersion": "1.0",
        "scanStatus": "SKIPPED",
        "resourceType": "EC2_AMI",
        "scanId": "d41d8cd98f00b204e9800998ecf8427e",
        "scanStatusReason": "UNSUPPORTED_AMI",
        "scanType": "ON_DEMAND",
        "triggerType": "GUARDDUTY",
        "scanCategory": "FULL_SCAN",
        "scanStartTime": 1234567890123,
        "scanCompleteTime": 2345678901234,
       "scanResultDetails": {
            "uniqueThreatCount": null,
            "threats": null
        }
    }
}
```

# Malware Protection for Backup のクォータ
<a name="malware-protection-backup-quotas"></a>


**Malware Protection for Backup のクォータ**  

| クォータ名 | AWS デフォルトのクォータ値 | 調整可能かどうか | 説明 | 
| --- | --- | --- | --- | 
| すべてのリソースタイプの StartMalwareScan TPS 制限 | 10 | いいえ |  | 
| サポートされるスナップショットの最大サイズ | 2 TB | いいえ |  | 
| スナップショットと AMI スキャンでサポートされるファイルシステム |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ja_jp/guardduty/latest/ug/malware-protection-backup-quotas.html)  | いいえ |  | 
| マルウェアスキャンでサポートされている AMI 内のスナップショットの最大数 | フルスキャンの場合は 40。40 個を超える場合、GuardDuty はすべてのスナップショットのうち 40 個のみをスキャンします。増分スキャンの場合、スキャンはスキップされます。 | いいえ |  | 
| S3 復旧ポイント内のオブジェクトの最大サイズ | 100 GB | いいえ |  GuardDuty でマルウェアがスキャンされる S3 オブジェクトの最大サイズ。 このクォータは調整できませんが、より大きなオブジェクトをスキャンする必要がある場合は、サポートに連絡して、GuardDuty がユースケースのクォータを増やすことができるかどうかを判断してください。  | 
| アーカイブバイトの抽出 | 100 GB | いいえ |  GuardDuty がアーカイブファイルから抽出して分析できるデータの最大量。 GuardDuty は、100 GB を超えるアーカイブファイルの抽出をスキップします。  | 
| アーカイブファイルの抽出 | 10,000 | いいえ |  GuardDuty がアーカイブファイルから抽出して分析できるファイルの最大数。アーカイブに含まれているファイルの数が 10,000 を超える場合は、GuardDuty はアーカイブファイルをスキップする必要があります。  複合ファイルタイプは、これらの制限の対象となる可能性があります。ファイルタイプには、多目的インターネットメール拡張 (MIME) でエンコードされた E メールメッセージ、コンパイル済み Python (PYC) ファイル、コンパイル済み HTML ヘルプ (CHM) ファイル、すべてのインストーラ、および OpenDocument Format (ODF) ドキュメントが含まれますが、これらに限定されません。   | 
| アーカイブの最大深度 | 5 | いいえ | GuardDuty が抽出できるネストされたアーカイブの最大レベル。アーカイブにこの値を超えてファイルがネストされている場合、その分のネストされたファイルはスキップされます。 | 