Prevenção contra o ataque do “substituto confuso” em todos os serviços - AWS X-Ray

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Prevenção contra o ataque do “substituto confuso” em todos os serviços

“Confused deputy” é um problema de segurança no qual uma entidade sem permissão para executar uma ação pode coagir uma entidade mais privilegiada a executá-la. Em AWS, a falsificação de identidade entre serviços pode resultar no problema confuso do deputado. A personificação entre serviços pode ocorrer quando um serviço (o serviço de chamada) chama outro serviço (o serviço chamado). O serviço de chamada pode ser manipulado de modo a usar suas permissões para atuar nos recursos de outro cliente de uma forma na qual ele não deveria ter permissão para acessar. Para evitar isso, a AWS fornece ferramentas que ajudam você a proteger seus dados para todos os serviços com entidades principais de serviço que receberam acesso aos recursos em sua conta.

Recomendamos usar as chaves de contexto de condição aws:SourceArnaws:SourceAccountaws:SourceOrgID,, e aws:SourceOrgPathsglobal nas políticas de recursos para limitar as permissões que o xraylong concede a outro serviço ao recurso. Use aws:SourceArn se quiser associar apenas um recurso ao acesso entre serviços. Use aws:SourceAccount se quiser permitir que qualquer recurso nessa conta seja associado ao uso entre serviços. Use aws:SourceOrgID se quiser permitir que qualquer recurso de qualquer conta de uma organização seja associado ao uso entre serviços. Use aws:SourceOrgPaths se quiser associar qualquer recurso das contas em um caminho do AWS Organizations seja associado ao uso entre serviços. Para obter mais informações sobre como usar e entender os caminhos, consulte Compreender o caminho da AWS Organizations entidade.

A maneira mais eficaz de se proteger contra o problema do substituto confuso é usar a chave de contexto de condição global aws:SourceArn com o ARN completo do recurso. Se você não souber o ARN completo do recurso ou especificar vários recursos, use a chave de condição de contexto global aws:SourceArn com caracteres curinga (*) para as partes desconhecidas do ARN. Por exemplo, .arn:aws:servicename:*:123456789012:*

Se o valor do aws:SourceArn não contiver o ID da conta, como um ARN de bucket do Amazon S3, você deverá usar ambos, a aws:SourceAccount e o aws:SourceArn para limitar as permissões.

Para se proteger do problema de "confused deputy" em grande escala, use a chave de contexto de condição global aws:SourceOrgID ou aws:SourceOrgPaths com o ID ou o caminho da organização do recurso nas políticas baseadas em recursos. As políticas que incluem a chave aws:SourceOrgID ou aws:SourceOrgPaths incluem automaticamente as contas corretas e você não tem que atualizar manualmente as políticas quando adiciona, remove ou move contas na organização.

O exemplo a seguir mostra como você pode usar as chaves de contexto de condição aws:SourceAccount global aws:SourceArn e as chaves de contexto no xray para evitar o confuso problema auxiliar.

{ "Sid": "BlockCrossAccountUnlessSameSource", "Effect": "Deny", "Principal": { "AWS": "*" }, "Action": [ "kms:Decrypt", "kms:GenerateDataKeyWithoutPlaintext" ], "Resource": "*", "Condition": { "StringNotEquals": { "aws:PrincipalAccount": "123456789012", "aws:SourceAccount": "123456789012" }, "ArnNotLike": { "aws:SourceArn": "arn:*:*:*:123456789012:*" } } }