0Pricing
Ethical Hacking Academy · Aula

Configurações incorretas de IAM

Funções permissivas demais

Configurações incorretas de IAM é uma aula grátis de Ethical Hacking Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Ethical Hacking Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Ethical Hacking Academy inclui 4 aulas no total.

Por que o IAM é o verdadeiro perímetro

Na nuvem, a identidade é o novo perímetro. O IAM (gerenciamento de identidade e acesso) decide quem pode fazer o quê. Uma falha no IAM permite que um invasor passe de um ponto de apoio com poucos privilégios ao controle total da conta.

  • Usuários, funções e contas de serviço são identidades
  • As políticas definem permissões
  • Políticas configuradas incorretamente são o principal risco da nuvem

A maioria das elevações de privilégio na nuvem é um problema de IAM.

Usuários, funções e políticas

O IAM da AWS tem três componentes básicos que você precisa entender:

  • Usuários — identidades de longa duração com chaves de acesso
  • Funções — identidades temporárias que podem ser assumidas por usuários ou serviços
  • Políticas — documentos JSON que concedem ou negam ações sobre recursos

Uma política vinculada de forma ampla demais é o que causa o excesso de permissões.

{
  "Effect": "Allow",
  "Action": "s3:GetObject",
  "Resource": "arn:aws:s3:::reports-bucket/*"
}

O perigo dos curingas

O padrão de IAM mais perigoso é a política com curinga. Ela concede todas as ações em todos os recursos.

Se um invasor comprometer uma identidade com essa política, terá controle de toda a conta.

{
  "Effect": "Allow",
  "Action": "*",
  "Resource": "*"
}

# Action:* Resource:* = full administrative control.
# Flag this everywhere it appears outside a break-glass admin role.

Enumerando suas próprias permissões

Assim que obtiver uma credencial, liste o que ela pode fazer. O IAM possui APIs de leitura que revelam as políticas vinculadas.

Algumas contas chegam a conceder iam:Get* e iam:List* a usuários comuns, entregando a você um mapa gratuito.

# List policies attached to a user
aws iam list-attached-user-policies --user-name devuser

# Get the JSON of a managed policy version
aws iam get-policy-version \
  --policy-arn arn:aws:iam::aws:policy/AmazonS3FullAccess \
  --version-id v1

Elevação de privilégio por meio de iam:PassRole

Uma elevação clássica: um usuário tem iam:PassRole e uma permissão para criar serviços. Ele pode iniciar um recurso que assume uma função com altos privilégios e herda o acesso dela.

  • O usuário possui ec2:RunInstances + iam:PassRole
  • Ele inicia uma instância EC2 com uma função de administrador vinculada
  • A instância passa a conter credenciais de administrador, que ele recupera

O usuário nunca teve acesso direto de administrador, mas conseguiu elevá-lo.

Combinações perigosas de permissões

Permissões individuais podem ser inofensivas, mas tornar-se caminhos de elevação quando combinadas. Entre as combinações de risco conhecidas estão:

  • iam:CreatePolicyVersion — reescrever uma política existente para conceder acesso de administrador
  • iam:AttachUserPolicy — vincular AdministratorAccess à própria identidade
  • iam:CreateAccessKey em outro usuário — roubar a identidade dele
  • sts:AssumeRole em uma função que confia excessivamente

As ferramentas enumeram essas combinações automaticamente.

Políticas de confiança e AssumeRole

As funções têm uma política de confiança que define quem pode assumi-las. Uma política de confiança ampla demais é uma porta dos fundos.

Se uma função confiar por engano na conta inteira ou até em uma conta externa, um invasor poderá assumi-la.

{
  "Effect": "Allow",
  "Principal": { "AWS": "arn:aws:iam::123456789012:root" },
  "Action": "sts:AssumeRole"
}

# Trusting the entire account root means ANY identity in it can assume the role.

Automatizando a descoberta de elevações

Verificar manualmente todas as combinações de políticas é trabalhoso. As ferramentas mapeiam os caminhos de elevação para você.

  • Pacu — estrutura de exploração da AWS com módulos de elevação de privilégios
  • PMapper — cria grafos das relações do IAM e encontra conexões de elevação
  • enumerate-iam — testa exaustivamente quais chamadas de API uma chave pode fazer
# Run Pacu's IAM privilege escalation enumeration
pacu
# > run iam__privesc_scan

# Build an IAM access graph and query it
pmapper graph create
pmapper query 'preset privesc *'

Políticas incorporadas e gerenciadas

As permissões podem ser concedidas de duas formas, e os invasores verificam ambas:

  • Políticas gerenciadas — reutilizáveis e vinculadas a várias identidades
  • Políticas incorporadas — inseridas diretamente em um único usuário ou função

As políticas incorporadas são fáceis de ignorar em auditorias, por isso muitas vezes ocultam permissões excessivas. Sempre enumere ambas ao avaliar uma identidade.

# Inline policies are listed separately from attached ones
aws iam list-user-policies --user-name devuser
aws iam get-user-policy --user-name devuser --policy-name custom-inline

Fortalecimento: privilégio mínimo

A solução para configurações incorretas do IAM é o privilégio mínimo: conceder somente as permissões exatas necessárias.

  • Substitua curingas por ações explícitas e ARNs de recursos
  • Use funções com credenciais de curta duração em vez de chaves de longa duração
  • Audite permissões não utilizadas com o Access Analyzer
  • Exija MFA para identidades privilegiadas

Seu relatório deve associar cada constatação a uma correção baseada em privilégio mínimo.

Permaneça dentro da autorização

Os testes de elevação de privilégio alteram ativamente o estado da conta. Tenha cuidado:

  • Criar políticas, chaves ou funções é uma ação intrusiva; obtenha aprovação por escrito
  • Documente cada alteração para que ela possa ser revertida
  • Dê preferência à enumeração somente leitura para comprovar um caminho antes de explorá-lo

Demonstrar que um caminho de elevação existe geralmente é suficiente; nem sempre é necessário explorá-lo completamente.

Verificação rápida

Qual combinação de permissões é um caminho clássico de elevação de privilégios na AWS?

Recapitulação: configurações incorretas do IAM

Você aprendeu por que o IAM é o verdadeiro perímetro da nuvem e como os invasores o exploram.

  • Políticas curinga Action:* Resource:* são catastróficas
  • iam:PassRole + criação de serviços permite a elevação de privilégios
  • Políticas de confiança amplas demais permitem que invasores assumam funções
  • Ferramentas como Pacu e PMapper automatizam a descoberta de caminhos
  • A correção é sempre o privilégio mínimo

A seguir, veremos o S3 e a exposição do armazenamento.

Perguntas Frequentes

A aula “Configurações incorretas de IAM” é grátis?

Sim — o texto completo de “Configurações incorretas de IAM” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Ethical Hacking Academy, atualize para CoddyKit PRO. O curso de Ethical Hacking Academy inclui 4 aulas no total.

O que vou aprender em “Configurações incorretas de IAM”?

Funções permissivas demais Você pratica Ethical Hacking Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Ethical Hacking Academy?

Nenhuma experiência prévia é necessária. Ethical Hacking Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.

Quanto tempo leva a aula “Configurações incorretas de IAM”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Ethical Hacking Academy?

Sim. Cada aula de Ethical Hacking Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Superfície de ataque na nuvem
  2. Configurações incorretas de IAM
  3. Exposição de S3 e armazenamento
  4. Metadados e SSRF
← Voltar para Ethical Hacking Academy