Prometi, lá no SSRF (aula CSRF e SSRF: falsificando requisições no cliente e no servidor), que reencontraríamos aquela vulnerabilidade numa das cadeias de ataque mais emblemáticas e devastadoras da era da nuvem. Chegou a hora. Esta aula conecta conceitos de vários blocos — SSRF (web), IAM (nuvem), escalação de privilégios (pós-exploração) — numa única cadeia que representa como comprometimentos de nuvem reais frequentemente acontecem, incluindo alguns dos maiores vazamentos da história. É a demonstração suprema de como vulnerabilidades se encadeiam. Laboratório com contas de nuvem, sempre.
IAM: o coração da segurança de nuvem
Comece pela peça central da nuvem: o IAM (Identity and Access Management, Gerenciamento de Identidade e Acesso). O IAM é o sistema que controla quem (usuários, serviços, recursos) pode fazer o quê na nuvem — é o coração da segurança de nuvem, o equivalente ao controle de acesso do AD (Bloco XI) para o ambiente de nuvem. Na nuvem, tudo é governado por permissões IAM: uma máquina virtual, uma função serverless, um serviço — cada um tem uma identidade com certas permissões. E, como no AD, o problema central é o excesso de permissões: identidades com muito mais poder do que precisam, criando caminhos de escalação. O menor privilégio é a defesa suprema da nuvem, e sua ausência é o que torna a cadeia desta aula tão devastadora.
IMDS: a peça que liga a web à nuvem
Agora a peça que conecta a web à nuvem: o IMDS (Instance Metadata Service, Serviço de Metadados de Instância). Lembre da aula CSRF e SSRF: falsificando requisições no cliente e no servidor: os provedores de nuvem expõem, de dentro de cada instância (máquina virtual), um endpoint de metadados num endereço especial (o 169.254.169.254) que fornece informações sobre a instância — e, crucialmente, frequentemente contém as credenciais IAM temporárias da identidade associada àquela instância. Esse serviço existe por conveniência (permite que aplicações na instância obtenham credenciais automaticamente, sem hardcodá-las), mas é uma peça perigosa: qualquer coisa que consiga fazer uma requisição a esse endereço a partir da instância pode obter as credenciais de nuvem da instância.
A cadeia SSRF → IMDS → IAM → escalação
Agora encadeie, e veja a cadeia devastadora se formar. Passo 1: uma aplicação web na nuvem tem uma vulnerabilidade de SSRF (aula CSRF e SSRF: falsificando requisições no cliente e no servidor) — o atacante consegue fazer o servidor requisitar URLs que ele controla. Passo 2: o atacante usa o SSRF para fazer o servidor requisitar o IMDS (http://169.254.169.254/...) — algo que o atacante, de fora, não conseguiria, mas o servidor (por estar dentro da instância) consegue. Passo 3: o IMDS retorna as credenciais IAM temporárias da instância, que o SSRF exfiltra para o atacante. Passo 4: com essas credenciais, o atacante agora se autentica à API da nuvem como a instância, e — se o IAM da instância tem permissões excessivas (o erro comum) — ele acessa recursos, dados (aqueles buckets mal configurados), e escala privilégios dentro da conta de nuvem, potencialmente comprometendo a infraestrutura inteira. SSRF → IMDS → credenciais IAM → escalação. Foi exatamente assim que alguns dos maiores vazamentos de dados de nuvem da história ocorreram — uma única SSRF numa aplicação web desdobrando-se em comprometimento massivo.
As vulnerabilidades se encadeiam
Essa cadeia é a demonstração suprema de um tema central do curso: as vulnerabilidades raramente agem sozinhas — elas se encadeiam, e o impacto do encadeamento é muito maior que a soma das partes. Uma SSRF, isolada, pode parecer moderada. Mas SSRF + um IMDS acessível + IAM com permissões excessivas = comprometimento catastrófico da nuvem. Cada elo depende do anterior, e cada um explora uma fraqueza que, sozinha, seria menos grave. É o pensamento em cadeias de ataque (a attack tree da aula Threat modeling: STRIDE, DREAD, PASTA e attack trees, o BloodHound do Bloco XI) aplicado à nuvem — e é por isso que o pentester precisa enxergar não vulnerabilidades isoladas, mas os caminhos que as conectam. O defensor que corrige só a SSRF (sem endurecer o IMDS e o IAM) fecha um elo; o defensor que entende a cadeia fecha vários, criando defesa em profundidade.
Outras cadeias de nuvem
Há outras cadeias e vetores de nuvem que valem menção, todos seguindo a lógica de encadeamento. Credenciais vazadas → escalação IAM: uma chave exposta (aula Segurança em nuvem I: o modelo de responsabilidade compartilhada e as falhas comuns) com permissões que permitem escalar para permissões ainda maiores (um IAM mal configurado onde uma identidade pode conceder-se mais poder). Comprometimento de função serverless. Abuso de confiança entre contas (relações de confiança mal configuradas entre contas de nuvem). E movimentação lateral na nuvem — de um recurso comprometido para outros, o equivalente na nuvem da movimentação lateral do Bloco VIII. O padrão comum: um pé-dentro (credencial, SSRF, aplicação vulnerável) combinado com IAM excessivamente permissivo levando à escalação e ao comprometimento amplo.
Defender cada elo da cadeia
Do lado defensivo, as contramedidas atacam cada elo da cadeia — defesa em profundidade na sua forma mais clara. Contra o elo SSRF: as defesas de SSRF da aula CSRF e SSRF: falsificando requisições no cliente e no servidor (validar/restringir URLs, allowlist). Contra o elo IMDS: usar as versões protegidas do serviço de metadados — o IMDSv2 da AWS exige um passo adicional (um token obtido via uma requisição que o SSRF simples não consegue fazer), mitigando enormemente essa cadeia; habilitar o IMDSv2 e desabilitar o v1 é uma das mitigações de nuvem mais importantes. Contra o elo IAM: menor privilégio rigoroso (a defesa suprema — se a instância tem permissões mínimas, as credenciais roubadas valem pouco; ferramentas de análise de permissões IAM mapeiam e reduzem o excesso, como o BloodHound faz no AD). Transversalmente: monitoramento (detectar uso anômalo de credenciais — uma credencial de instância sendo usada de um IP externo é altamente suspeito), e a gestão de segredos e configuração já vista. A lição culminante: as vulnerabilidades se encadeiam, e a defesa robusta fecha múltiplos elos — porque quebrar qualquer elo da cadeia a interrompe, e quebrar vários é resiliência real.
Fecha o Bloco XV
Com esta aula, encerramos o Bloco XV — Superfícies Modernas. Você percorreu a computação de hoje: mobile (Android, iOS/MDM), IoT, OT/ICS, contêineres (Docker), orquestração (Kubernetes) e nuvem (fundamentos e a cadeia emblemática). Estes são os territórios onde o pentest moderno cada vez mais acontece, cada um com vetores próprios — mas todos governados pelos princípios fundamentais que o curso construiu: menor privilégio, configuração correta, não confiar em entradas, e o pensamento em cadeias de ataque.
Fontes e leituras recomendadas
- flaws.cloud e flaws2.cloud — laboratórios que ensinam exatamente essas cadeias
- Documentação do IMDSv2 (AWS) — a mitigação central
- HackTricks — "AWS/Azure/GCP Privilege Escalation" e SSRF para metadata
- Pentesting de nuvem: ferramentas como Pacu (AWS), ScoutSuite (auditoria multi-cloud)
Exercícios
-
O que é o IAM na nuvem, a que componente do AD ele é análogo, e qual seu problema central?
✓ Resposta:O IAM (Identity and Access Management) controla quem pode fazer o quê na nuvem — cada usuário, serviço e recurso tem uma identidade com permissões. É análogo ao controle de acesso do Active Directory. Seu problema central é o excesso de permissões: identidades com mais poder do que precisam, criando caminhos de escalação.
-
O que é o IMDS, por que ele existe, e por que é uma peça perigosa?
✓ Resposta:O IMDS (Instance Metadata Service) é um endpoint acessível de dentro de cada instância (no endereço
169.254.169.254) que fornece metadados e, frequentemente, as credenciais IAM temporárias da instância. Existe por conveniência (aplicações obtêm credenciais automaticamente, sem hardcodá-las). É perigoso porque qualquer coisa que faça uma requisição a esse endereço a partir da instância pode obter essas credenciais. -
Descreva a cadeia SSRF → IMDS → IAM → escalação, passo a passo.
✓ Resposta:Passo 1: uma aplicação web tem SSRF. Passo 2: o atacante usa o SSRF para fazer o servidor requisitar o IMDS (169.254.169.254), o que só é possível de dentro da instância. Passo 3: o IMDS retorna as credenciais IAM da instância, exfiltradas via SSRF. Passo 4: com as credenciais, o atacante autentica-se à API da nuvem como a instância e, se o IAM tem permissões excessivas, escala privilégios e compromete a infraestrutura.
-
Por que essa cadeia é a "demonstração suprema" do tema de encadeamento de vulnerabilidades?
✓ Resposta:Porque cada elo, isolado, seria menos grave (uma SSRF moderada), mas encadeados — SSRF + IMDS acessível + IAM excessivo — produzem comprometimento catastrófico. Demonstra que vulnerabilidades raramente agem sozinhas e que o impacto do encadeamento excede a soma das partes, exigindo enxergar caminhos, não falhas isoladas.
-
Cite a mitigação central para cada elo da cadeia (SSRF, IMDS, IAM).
✓ Resposta:SSRF: validar/restringir URLs (allowlist). IMDS: usar a versão protegida (IMDSv2), que exige um passo que o SSRF simples não consegue, e desabilitar o v1. IAM: menor privilégio rigoroso, para que credenciais roubadas de uma instância valham o mínimo possível.