Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 095

AWS IMDSv2

Revisado porCybersecurity entrepreneur & security researcher

O que é AWS IMDSv2?

AWS IMDSv2A substituição baseada em token de sessão para o AWS EC2 Instance Metadata Service, projetada para frustrar o roubo de credenciais via SSRF dos tokens de role de instâncias EC2, exigindo um token efêmero emitido por PUT em cada requisição.


O IMDSv2 é a segunda versão do EC2 Instance Metadata Service, introduzida pela AWS em novembro de 2019 como resposta direta ao vazamento da Capital One e a outros roubos de credenciais de nuvem impulsionados por SSRF. Naquele incidente, divulgado em 19 de julho de 2019, Paige Thompson ("erratic") abusou de uma falha de Server-Side Request Forgery em um firewall de aplicação web mal configurado para alcançar o endpoint link-local http://169.254.169.254/latest/meta-data/iam/security-credentials/. A role IAM excessivamente privilegiada do WAF, ISRM-WAF-Role, retornou credenciais STS temporárias que lhe permitiram listar e copiar dados de mais de 700 buckets S3 — cerca de 106 milhões de registros de clientes. O incidente acabou custando à Capital One uma multa de US$ 80 milhões do OCC e um acordo coletivo de US$ 190 milhões.

Como o IMDSv2 frustra o SSRF

Com o IMDSv1, qualquer GET ao IP de metadados retornava credenciais, então um Server-Side Request Forgery refletido ou direto bastava. O IMDSv2 torna o fluxo orientado a sessão: o cliente precisa primeiro fazer PUT /latest/api/token com um cabeçalho X-aws-ec2-metadata-token-ttl-seconds e, em seguida, enviar o token retornado em cada leitura por meio de X-aws-ec2-metadata-token. Um SSRF ingênuo não consegue facilmente emitir um PUT com um cabeçalho personalizado, e definir HttpPutResponseHopLimit: 1 impede que contêineres a um salto de rede de distância alcancem o serviço.

flowchart TD
  A[App with SSRF flaw] -->|GET 169.254.169.254| B{Metadata mode?}
  B -->|IMDSv1 optional| C[Returns IAM credentials]
  C --> D[Attacker exfiltrates S3 data]
  B -->|IMDSv2 required| E[Rejected: no session token]
  E --> F[PUT /latest/api/token + TTL header needed]
  F -->|SSRF cannot issue PUT| G[Credential theft blocked]

Defesas

Imponha HttpTokens: required em toda a organização por meio de uma SCP ou da configuração instance-metadata-defaults no nível da conta, fixe o limite de saltos em 1 e use descobertas de CSPM/Wiz para caçar AMIs legadas que ainda permitem o IMDSv1. Restrinja as políticas IAM das roles de instância ao menor privilégio, de modo que um token vazado renda pouco.

Exemplos

  1. 01

    Um launch template de EC2 define `HttpTokens: required` e `HttpPutResponseHopLimit: 1`, bloqueando tanto o acesso via IMDSv1 quanto o roubo de metadados a partir de contêineres.

  2. 02

    Uma descoberta de CSPM sinaliza toda instância EC2 que ainda permite IMDSv1 porque a AMI legada de CentOS foi lançada antes da política válida para toda a organização.

Perguntas frequentes

O que é AWS IMDSv2?

A substituição baseada em token de sessão para o AWS EC2 Instance Metadata Service, projetada para frustrar o roubo de credenciais via SSRF dos tokens de role de instâncias EC2, exigindo um token efêmero emitido por PUT em cada requisição. Pertence à categoria Segurança em nuvem da cibersegurança.

O que significa AWS IMDSv2?

A substituição baseada em token de sessão para o AWS EC2 Instance Metadata Service, projetada para frustrar o roubo de credenciais via SSRF dos tokens de role de instâncias EC2, exigindo um token efêmero emitido por PUT em cada requisição.

Como se defender contra AWS IMDSv2?

As defesas contra AWS IMDSv2 costumam combinar controles técnicos e práticas operacionais, conforme detalhado na definição acima.

Quais são outros nomes para AWS IMDSv2?

Nomes alternativos comuns: EC2 Instance Metadata Service v2, IMDSv2.

Termos relacionados