Prevenção do problema do substituto confuso entre serviços - Amazon EC2 Auto Scaling

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 do problema do substituto confuso entre serviços

O problema de "confused deputy" é uma questão de segurança em que uma entidade que não tem 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 em um problema confuso de delegado. 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, AWS fornece ferramentas que ajudam você a proteger seus dados para todos os serviços com diretores de serviços que receberam acesso aos recursos em sua conta. Recomendamos o uso das chaves de contexto de condição global aws:SourceArn e aws:SourceAccount nas políticas de confiança para funções do serviço do Amazon EC2 Auto Scaling. Essas chaves limitam as permissões que o Amazon EC2 Auto Scaling concede a outro serviço ao recurso.

Os valores dos SourceAccount campos SourceArn e são definidos quando o Amazon EC2 Auto Scaling AWS Security Token Service usa AWS STS() para assumir uma função em seu nome.

Para usar as chaves de condição globais aws:SourceArn ou aws:SourceAccount, defina o valor como o nome do recurso da Amazon (ARN) ou a conta do recurso que que o Amazon EC2 Auto Scaling armazena. Sempre que possível, use aws:SourceArn, que é mais específico. Defina o valor como o ARN ou um padrão de ARN com curinga (*) para as partes desconhecidas do ARN. Se você não conhece o ARN do recurso, use aws:SourceAccount em vez disso.

O exemplo a seguir mostra como é possível usar as chaves de contexto de condição global aws:SourceArn e aws:SourceAccount no Amazon EC2 Auto Scaling para evitar o problema do substituto confuso.

Exemplo: uso das chaves de condição aws:SourceArn e aws:SourceAccount

A função de serviço é uma função que um serviço assume para realizar ações em seu nome. Nos casos em que você quiser criar ganchos de ciclo de vida que enviem notificações para qualquer lugar que não seja a Amazon EventBridge, você deve criar uma função de serviço para permitir que o Amazon EC2 Auto Scaling envie notificações para um tópico do Amazon SNS ou fila do Amazon SQS em seu nome. Se quiser que apenas um grupo do Auto Scaling seja associado ao acesso entre serviços, você pode especificar a política de confiança da do perfil de serviço da seguinte forma.

Este exemplo de política de confiança usa declarações de condição para limitar a capacidade de AssumeRole na função de serviço somente para as ações que afetam o grupo do Auto Scaling especificado na conta especificada. As condições aws:SourceArn e aws:SourceAccount são avaliadas de forma independente. Qualquer solicitação para usar o perfil de serviço deve atender às duas condições.

Antes de usar essa política, substitua os valores de Região, ID da conta, UUID e nome de grupo por valores válidos da sua conta.

{ "Version": "2012-10-17", "Statement": { "Sid": "ConfusedDeputyPreventionExamplePolicy", "Effect": "Allow", "Principal": { "Service": "autoscaling.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:autoscaling:region:account_id:autoScalingGroup:uuid:autoScalingGroupName/my-asg" }, "StringEquals": { "aws:SourceAccount": "account_id" } } } }

No exemplo anterior:

  • O elemento Principal especifica a entidade principal de serviço do serviço (autoscaling.amazonaws.com).

  • O elemento Action especifica a açãosts:AssumeRole.

  • O elemento Condition especifica as chaves de condição globais aws:SourceArn e aws:SourceAccount. O ARN da fonte inclui o ID da conta, portanto, não é necessário usar aws:SourceAccount com aws:SourceArn.

Mais informações

Para obter mais informações, consulte Chaves de contexto de condição globais da AWS, O problema de confused deputy e Modificar a política de confiança de uma função (console) no Manual do usuário do IAM.