
Use o Terraform para criar seu próprio playground de escalonamento de privilégios AWS IAM vulnerável por design.
Use o Terraform para criar seu próprio playground vulnerável por design de escalonamento de privilégios AWS IAM.

O IAM Vulnerable usa o binário do Terraform e suas credenciais AWS para implantar mais de 250 recursos IAM na sua conta AWS selecionada. Em minutos, você pode começar a aprender como identificar e explorar configurações IAM vulneráveis que permitem escalonamento de privilégios.
Olá a todos. O IAM Vulnerable ainda é imensamente útil para entender os blocos básicos de escalonamento de privilégios AWS IAM. No entanto, alguns anos após criar o IAM Vulnerable, criei o CloudFoxable, uma versão estilo CTF que ensina os fundamentos do teste de penetração em nuvem de forma mais holística. - @sethsec
Junte-se a nós no servidor Discord do RedSec
🦊 Atualmente, caminhos de escalonamento de privilégios suportados: 31
Post do Blog: IAM Vulnerable - Um Playground de Escalonamento de Privilégios AWS IAM
Este início rápido descreve uma abordagem opinionada para colocar o IAM Vulnerable em funcionamento na sua conta AWS o mais rápido possível. Você pode já ter muitas dessas etapas concluídas, ou pode querer ajustar coisas para funcionar com sua configuração atual. Confira a seção Outros Casos de Uso neste repositório para opções de configuração adicionais.
aws sts get-caller-identity.git clone https://github.com/BishopFox/iam-vulnerablecd iam-vulnerable/terraform initexport TF_VAR_aws_local_profile=PROFILE_IN_AWS_CREDENTIALS_FILE_IF_OTHER_THAN_DEFAULTexport TF_VAR_aws_local_creds_file=FILE_LOCATION_IF_NON_DEFAULTterraform planterraform applycp ~/.aws/credentials ~/.aws/credentials.backuptail -n +7 aws_credentials_file_example | sed s/111111111111/$(aws sts get-caller-identity | grep Account | awk -F\" '{print $4}')/g >> ~/.aws/credentialsLimpeza
Sempre que quiser remover todos os recursos criados pelo IAM Vulnerable, você pode executar estes comandos:
cd iam-vulnerable/terraform destroyLimpeza Alternativa (Quando o Estado do Terraform é Perdido)
No caso de você ter implantado o iam-vulnerable usando Terraform, mas não tem mais acesso ao arquivo de estado (e terraform destroy não funciona), você pode usar os seguintes scripts de limpeza:```bash
./cleanup-scripts/cleanup_iam_vulnerable.py --dry-run
./cleanup-scripts/cleanup_iam_vulnerable.sh --dry-run
Estes scripts irão:
- Identificar automaticamente todos os recursos vulneráveis do IAM na sua conta AWS
- Mostrar exatamente o que será excluído antes de prosseguir
- Excluir recursos na ordem adequada para evitar conflitos de dependência
- Suportar perfis AWS e fornecer logs detalhados
**Importante**: Sempre execute com `--dry-run` primeiro para ver o que seria excluído. Consulte `cleanup-scripts/CLEANUP_README.md` para instruções detalhadas de uso.
## Que recursos foram criados?
O binário Terraform acabou de usar as credenciais do seu perfil de conta AWS padrão para criar:
** 31 usuários, funções e políticas** cada um com um caminho de exploração único para acesso administrativo à conta playground
* Alguns usuários, grupos, funções e políticas adicionais que são necessários para concretizar certos caminhos de exploração
* Alguns usuários, grupos, funções e políticas adicionais que testam as capacidades de detecção de outras ferramentas
Por padrão, toda função criada por este módulo Terraform pode ser assumida pelo usuário ou função que você usou para executar o Terraform.
* Se preferir que o Terraform use um perfil diferente do perfil padrão, ou se preferir codificar o ARN da `assume_role_policy`, veja [Outros Casos de Uso](#other-use-cases).
## Quanto isso vai custar?
Implantar o IAM vulnerable em sua **configuração padrão não custará nada**. Veja a próxima seção para aprender como habilitar módulos não padrão que incorrem em custos, e quanto cada módulo custará por mês se você implantá-lo.
# Uma Abordagem Modular