GuardDuty Protection contre les logiciels malveillants pour les sauvegardes : autorisations relatives aux rôles IAM - Amazon GuardDuty

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

GuardDuty Protection contre les logiciels malveillants pour les sauvegardes : autorisations relatives aux rôles IAM

Rôle du client fourni pour l'analyse des programmes malveillants

GuardDuty Malware Protection s'attend à ce qu'un rôle client (rôle de scanner) soit fourni lorsque des analyses sont lancées sur les ressources de sauvegarde, à savoir les instantanés, AMIs et EBS/EC2/S 3 points de restauration. Ce rôle fournit les autorisations requises GuardDuty pour effectuer l'analyse de ces ressources spécifiques. La politique d'autorisation et la politique de confiance relatives à ce rôle se trouvent dansAutorisations et politique de confiance pour le rôle. La section ci-dessous explique pourquoi chacune de ces autorisations est requise.

Informations sur les autorisations

  • ModifySnapshotAttribute- Permet d'accéder aux instantanés chiffrés par clé non chiffrés et gérés par le client par le compte du service GuardDuty Malware Protection.

  • CreateGrant- Permet à GuardDuty Malware Protection de créer et d'accéder à un volume EBS chiffré par clé gérée par le client à partir de l'instantané chiffré par clé gérée par le client auquel le compte de GuardDuty service a accès.

  • RetireGrant- Permet à GuardDuty Malware Protection de retirer les autorisations créées sur la clé gérée par le client pour lire des instantanés chiffrés

  • ReEncryptToet ReEncryptFrom - Requis par EBS pour donner GuardDuty accès aux instantanés chiffrés à l'aide de clés gérées par le client et pour créer des volumes chiffrés à partir de ceux-ci. Bien que les clients puissent considérer ReEncryption un instantané pendant le partage comme une transition essentielle, les instantanés restent immuables du point de vue du client une fois créés.

  • ListSnapshotBlockset GetSnapshotBlock - EBS Direct APIs sont utilisés pour accéder aux blocs d'instantanés pour un instantané chiffré AWS par clé gérée. Cela est dû au fait que les instantanés chiffrés AWS par clé gérée ne sont pas accessibles autrement entre comptes.

  • Decrypt- Permet de déchiffrer les instantanés de base chiffrés par clé gérée par le client lorsqu'ils sont téléchargés en mémoire à l'aide d'EBS Direct dans le APIs cadre d'une analyse incrémentielle.

  • ListChangedBlocks- L'API EBS Direct est utilisée dans le cadre de l'analyse incrémentielle des instantanés pour obtenir la liste des blocs modifiés entre deux instantanés.

  • DescribeKey- Permet à GuardDuty Malware Protection de déterminer le keyID de la clé AWS gérée dans le compte client.

  • DescribeImages- Permet de décrire une AMI pour obtenir la liste des instantanés appartenant à l'AMI.

  • DescribeRecoveryPoint- Permet au service de récupérer les détails du point de restauration et de vérifier le type de ressource pour le point de restauration.

  • CreateBackupAccessPoint,DescribeBackupAccessPoint, DeleteBackupAccessPoint - Permet au service de créer, de décrire et de supprimer le point d'accès requis pour accéder aux points de restauration.

  • kms:Decrypt- Permet au service d'accéder aux objets d'un point de restauration S3 lors d'une analyse du point de restauration S3.

Sécuriser le rôle

Le rôle doit être configuré avec une politique de confiance qui approuve le principal du service GuardDuty Malware Protection. Cela garantit qu'aucun principal autre que le GuardDuty service ne peut assumer ce rôle. En outre, nous vous encourageons à limiter les politiques à des ressources spécifiques plutôt qu'à*. Cela inclut les identifiants de capture instantanée et les identifiants de clé. Cela garantira que le rôle donne accès uniquement à ces ressources spécifiques.

Important

Une configuration incorrecte peut entraîner des échecs d'analyse en raison d'autorisations insuffisantes.

Comment la protection contre les GuardDuty malwares utilise les subventions dans AWS KMS

GuardDuty La protection contre les programmes malveillants nécessite des autorisations pour utiliser vos clés KMS.

Lorsque vous lancez une analyse sur un instantané chiffré ou une EC2 AMI composée d'instantanés chiffrés, GuardDuty Malware Protection crée des autorisations en votre nom en envoyant une CreateGrantdemande à AWS KMS. Ces autorisations donnent GuardDuty accès à une clé spécifique de votre compte.

GuardDuty La protection contre les programmes malveillants nécessite l'autorisation d'utiliser votre clé gérée par le client pour les opérations internes suivantes :

  • Envoyez DescribeKeydes demandes AWS à pour obtenir des informations sur la clé symétrique gérée par le client avec laquelle la ressource soumise pour une analyse des programmes malveillants est cryptée.

  • Créez un volume EBS à partir d'un instantané chiffré à l'aide de l'CreateVolumeAPI et chiffrez-le avec la même clé.

  • Accédez aux blocs de snapshots présents sur le snapshot via l'GetSnapshotBlockAPI lors d'une analyse incrémentielle.

  • Envoyez des demandes de déchiffrement à AWS KMS pour déchiffrer les clés de données chiffrées afin qu'elles puissent être utilisées pour lire les données de l'instantané pendant l'analyse.

Vous pouvez révoquer l'autorisation créée ou supprimer l'accès du service à la clé gérée par le client à tout moment. Si vous le faites, vous GuardDuty ne pourrez accéder à aucune des données chiffrées par la clé gérée par le client, ce qui affectera les opérations qui dépendent de ces données.

GuardDuty Contexte de chiffrement de la protection contre les

Un contexte de chiffrement est un ensemble facultatif de paires clé-valeur qui contient des informations contextuelles supplémentaires sur les données.

Lorsque vous incluez un contexte de chiffrement dans une demande de chiffrement de données, AWS KMS ; lie le contexte de chiffrement aux données chiffrées. Pour déchiffrer les données, vous devez inclure le même contexte de chiffrement dans la demande.

GuardDuty Malware Protection utilise l'un des deux contextes de chiffrement.

Contexte de chiffrement 1 : La clé estaws:guardduty:id.

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

Ce contexte de chiffrement est utilisé avec les opérations de subvention : CreateGrant, Decrypt, GenerateDataKeyWithoutPlaintext,, ReEncryptTo RetireGrant, DescribeKey.

Une autorisation est créée sur la ressource actuelle avec ce contexte de chiffrement et ces opérations de subvention.

Contexte de chiffrement 2 : la clé est aws:ebs:id

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

Ce contexte de chiffrement est utilisé avec les opérations de subvention : ReEncryptFrom, Décrypter, RetireGrant, DescribeKey.

Trois autorisations sont créées avec ces contextes de chiffrement et ces opérations de subvention. Un sur le cliché cible de l'opération de ReEncryptFrom subvention. Un second sur le snapshot cible avec les Decrypt, RetireGrant, DescribeKey opérations. Et une troisième sur l'instantané de base avec les mêmes opérations de subvention que la deuxième subvention.

Autorisations et politique de confiance pour le rôle

Politique d'autorisations

{ "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" } } } ] }

Politique de confiance

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