Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
iam-vulnerable — Use o Terraform para criar seu próprio playground de escalonamento de privilégios AWS IAM vulnerável por design. | Kitploit
Ferramentas/GitHubGitHub/bishopfox/iam-vulnerable
Escalada de PrivilégiosAnálise de VulnerabilidadesTestes de PenetraçãoSegurança na NuvemGerenciamento de Identidade e Acesso (IAM)Aprendizado e EducaçãoLabs e Prática
GitHubbishopfox/iam-vulnerable

iam-vulnerable

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

Ver Repositório
585107há 11 mesesRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
Site

IAM Vulnerable

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.

O irmão mais velho do IAM Vulnerable - CloudFoxable

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

Playground Intencionalmente Vulnerável

  • CloudFoxable - Um Sandbox Gamificado de Hacking em Nuvem

Quer conversar sobre IAM-Vulnerable, CloudFox e CloudFoxable?

Junte-se a nós no servidor Discord do RedSec

🦊 Atualmente, caminhos de escalonamento de privilégios suportados: 31

Índice

  • IAM Vulnerable
  • Recommended Approach
  • Detailed Usage Instructions
  • Quick Start
    • What resources were just created?
    • How much is this going to cost?
  • A Modular Approach
    • Free resource modules
    • Non-free resource modules
  • Supported Privilege Escalation Paths
  • Other Use Cases
  • FAQ

Abordagem Recomendada

  1. Selecione ou crie uma conta AWS - NÃO use uma conta que tenha recursos de produção ou dados sensíveis.
  2. Crie seu playground vulnerável - Use este repositório para criar os principais IAM e políticas que suportam 31 caminhos únicos de escalonamento de privilégios AWS IAM.
  3. Faça sua lição de casa - Aprenda sobre os 21 caminhos originais de escalonamento de privilégios pioneirados por Spencer Gietzen.
  4. Hackeie, hackeie - Pratique exploração no seu novo playground usando o guia de Gerben Kleijn.
  5. Aumente o nível - Execute suas ferramentas contra sua nova conta de playground IAM privesc (ou seja, Cloudsplaining, AWSPX, Principal Mapper, Pacu).

Instruções Detalhadas de Uso

Post do Blog: IAM Vulnerable - Um Playground de Escalonamento de Privilégios AWS IAM

Início Rápido

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.

  1. Selecione ou crie uma conta AWS. (NÃO use uma conta que tenha recursos de produção ou dados sensíveis!)
  2. Crie um usuário não root com acesso administrativo que você usará ao executar o Terraform.
  3. Crie uma chave de acesso para esse usuário.
  4. Instale a AWS CLI.
  5. Configure sua AWS CLI com seu usuário admin recém-criado como perfil padrão.
  6. Confirme que sua CLI está funcionando como esperado executando aws sts get-caller-identity.
  7. Instale o binário do Terraform e adicione o local do binário ao seu PATH.
  8. git clone https://github.com/BishopFox/iam-vulnerable
  9. cd iam-vulnerable/
  10. terraform init
  11. (Opcional) export TF_VAR_aws_local_profile=PROFILE_IN_AWS_CREDENTIALS_FILE_IF_OTHER_THAN_DEFAULT
  12. (Opcional) export TF_VAR_aws_local_creds_file=FILE_LOCATION_IF_NON_DEFAULT
  13. (Opcional) terraform plan

Limpeza

Sempre que quiser remover todos os recursos criados pelo IAM Vulnerable, você pode executar estes comandos:

  1. cd iam-vulnerable/
  2. terraform destroy

Limpeza 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

Python version (requires boto3)

./cleanup-scripts/cleanup_iam_vulnerable.py --dry-run

Bash version (requires AWS CLI and jq)

./cleanup-scripts/cleanup_iam_vulnerable.sh --dry-run

root@kitploit:~
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

O IAM Vulnerable agrupa certos recursos em módulos. Alguns módulos estão habilitados por padrão (aqueles que não têm implicações de custo), e outros estão desabilitados por padrão (aqueles que incorrem em custos se implantados). Dessa forma, você pode habilitar módulos específicos conforme necessário.

Por exemplo, quando estiver pronto para brincar com caminhos de exploração como `ssm:StartSession` que envolvem recursos fora do IAM, você pode implantar e desmontar esses recursos sob demanda, descomentando o módulo no arquivo `iam-vulnerable/main.tf` e reexecutando `terraform apply`:```
# Uncomment the next four lines to create an ec2 instance and related resources
#module "ec2" {
#  source = "./modules/non-free-resources/ec2"
#  aws_assume_role_arn = (var.aws_assume_role_arn != "" ? var.aws_assume_role_arn : data.aws_caller_identity.current.arn)
#}

Depois de descomentar o módulo ec2, execute:``` terraform init terraform apply

root@kitploit:~
Você implantou agora os componentes necessários para experimentar os caminhos de privesc do SSM.

## Módulos de Recursos Gratuitos

Não há custo para qualquer coisa implantada dentro de `free-resources`:

| Nome | Status Padrão | Custo Estimado | Descrição |
| --- | --- | --- | --- |
| privesc-paths  | Ativado | Nenhum | Contém todos os caminhos de privesc do IAM |
| tool-testing  | Ativado | Nenhum | Contém casos de teste que avaliam as capacidades das diferentes ferramentas de privesc do IAM |

## Módulos de Recursos Não Gratuitos

A implantação desses módulos adicionais pode gerar custos:

| Nome | Status Padrão | Custo Estimado | Descrição | Necessário para |
| --- | --- | --- | --- | --- |
| EC2  | Desativado | :heavy_dollar_sign: <br> $4.50/mês | Cria uma instância EC2 e um grupo de segurança que permite SSH de qualquer lugar | `ssm-SendCommand` <br> `ssm-StartSession` <br> `ec2InstanceConnect-SendSSHPublicKey` |
| Lambda | Desativado | :slightly_smiling_face: <br> O custo mensal depende do uso (o custo deve ser zero) | Cria uma função Lambda  | `Lambda-EditExistingLambdaFunctionWithRole` |
| Glue | Desativado | :heavy_dollar_sign::heavy_dollar_sign::heavy_dollar_sign::heavy_dollar_sign: <br> $4/hora | Cria um endpoint de desenvolvimento Glue | `Glue-UpdateExistingGlueDevEndpoint` |
| SageMaker | Desativado | Ainda não tenho certeza | Cria um notebook SageMaker | `sageMakerCreatePresignedNotebookURL` |
| CloudFormation | Desativado |  :slightly_smiling_face: <br> $0.40/mês pelo segredo criado via CloudFormation. Nada ou quase nada pela pilha em si | Cria uma pilha CloudFormation que cria um segredo no gerenciador de segredos | `privesc-cloudFormationUpdateStack` |

# Caminhos de Escalação de Privilégio Suportados

| Nome do Caminho | Nome do Perfil Vulnerável do IAM | Módulos Não Padrão Necessários | Referências de Exploração |
| --- | --- | --- | --- |
| **Categoria: Permissões IAM em Outros Usuários** |   |   |   |
| IAM-CreateAccessKey | privesc4  | Nenhum  | :fox_face: [Well, That Escalated Quickly - Privesc 04](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws) <br> :lock: [s3cur3.it IAMVulnerable - Part 3](https://s3cur3.it/home/practicing-aws-security-with-iamvulnerable-part-3) |
| IAM-CreateLoginProfile | privesc5  | Nenhum  | :fox_face: [Well, That Escalated Quickly - Privesc 05](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws) <br> :lock: [s3cur3.it IAMVulnerable - Part 3](https://s3cur3.it/home/practicing-aws-security-with-iamvulnerable-part-3)  |
| IAM-UpdateLoginProfile | privesc6  | Nenhum  | :fox_face: [Well, That Escalated Quickly - Privesc 06](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws) <br> :lock: [s3cur3.it IAMVulnerable - Part 3](https://s3cur3.it/home/practicing-aws-security-with-iamvulnerable-part-3)  |
| **Categoria: PassRole para Serviço** |   |  |   |
| CloudFormation-PassExistingRoleToCloudFormation | privesc20  | Nenhum  |:fox_face: [Well, That Escalated Quickly - Privesc 20](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws)   |
| CodeBuild-CreateProjectPassRole| privesc-codeBuildProject  | Nenhum  |   |
| DataPipeline-PassExistingRoleToNewDataPipeline| privesc21  | Nenhum  | :fox_face: [Well, That Escalated Quickly - Privesc 21](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws)  |
| EC2-CreateInstanceWithExistingProfile| privesc3  | Nenhum  | :fox_face: [Well, That Escalated Quickly - Privesc 03](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws) <br> :lock: [s3cur3.it IAMVulnerable - Part 2](https://s3cur3.it/home/practicing-aws-security-with-iamvulnerable-part-2) |
| Glue-PassExistingRoleToNewGlueDevEndpoint | privesc18  | Nenhum  | :fox_face: [Well, That Escalated Quickly - Privesc 18](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws)  |
| Lambda-PassExistingRoleToNewLambdaThenInvoke | privesc15  |  Nenhum | :fox_face: [Well, That Escalated Quickly - Privesc 15](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws)   |
| Lambda-PassRoleToNewLambdaThenTrigger | privesc16  |  Nenhum | :fox_face: [Well, That Escalated Quickly - Privesc 16](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws)  |
| SageMaker-CreateNotebookPassRole |  privesc-sageNotebook | Nenhum  | :rhinoceros: [AWS IAM Privilege Escalation - Method 2](https://rhinosecuritylabs.com/aws/aws-privilege-escalation-methods-mitigation-part-2/)  |
| SageMaker-CreateTrainingJobPassRole | privesc-sageTraining  |  Nenhum  |   |
| SageMaker-CreateProcessingJobPassRole |  privesc-sageProcessing | Nenhum   | |
| **Categoria: Permissões em Políticas** |    |   |
| IAM-AddUserToGroup | privesc13  |  Nenhum  |:fox_face: [Well, That Escalated Quickly - Privesc 13](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws)   |
| IAM-AttachGroupPolicy| privesc8  | Nenhum   | :fox_face: [Well, That Escalated Quickly - Privesc 08](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws)  |
| IAM-AttachRolePolicy| privesc9  | Nenhum   | :fox_face: [Well, That Escalated Quickly - Privesc 09](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws)  |
| IAM-AttachUserPolicy| privesc7  | Nenhum   | :fox_face:  [Well, That Escalated Quickly - Privesc 07](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws)  |
| IAM-CreateNewPolicyVersion| privesc1  |  Nenhum | :fox_face: [Well, That Escalated Quickly - Privesc 01](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws) <br> :lock: [s3cur3.it IAMVulnerable - Part 1](https://s3cur3.it/home/practicing-aws-security-with-iamvulnerable) |
| IAM-PutGroupPolicy | privesc11  | Nenhum  | :fox_face: [Well, That Escalated Quickly - Privesc 11](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws)  |
| IAM-PutRolePolicy | privesc12  | Nenhum | :fox_face:  [Well, That Escalated Quickly - Privesc 12](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws) |
| IAM-PutUserPolicy | privesc10  | Nenhum   | :fox_face: [Well, That Escalated Quickly - Privesc 10](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws)  |
| IAM-SetExistingDefaultPolicyVersion | privesc2  | Nenhum  |  :fox_face: [Well, That Escalated Quickly - Privesc 02](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws) <br> :lock: [s3cur3.it IAMVulnerable - Part 2](https://s3cur3.it/home/practicing-aws-security-with-iamvulnerable-part-2)|
| **Categoria: Escalação de Privilégio usando Serviços AWS**|    |   |   |
| EC2InstanceConnect-SendSSHPublicKey | privesc-instanceConnect  |  EC2  | 🔑 [AWS IAM privilege escalation paths](https://pswalia2u.medium.com/aws-iam-privilege-escalation-paths-cba36be1aa9e) |
| CloudFormation-UpdateStack | privesc-cfUpdateStack | CloudFormation | 🔑 [AWS IAM privilege escalation paths](https://pswalia2u.medium.com/aws-iam-privilege-escalation-paths-cba36be1aa9e) |
| Glue-UpdateExistingGlueDevEndpoint| privesc19  |  Glue | :fox_face: [Well, That Escalated Quickly - Privesc 19](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws)  |
| Lambda-EditExistingLambdaFunctionWithRole| privesc17  |  Lambda  | :fox_face: [Well, That Escalated Quickly - Privesc 17](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws) <br> :lock: [s3cur3.it IAMVulnerable - Part 4](https://s3cur3.it/home/practicing-aws-security-with-iamvulnerable-part-4)  |
| SageMakerCreatePresignedNotebookURL | privesc-sageUpdateURL | Sagemaker | :rhinoceros: [AWS IAM Privilege Escalation - Method 3](https://rhinosecuritylabs.com/aws/aws-privilege-escalation-methods-mitigation-part-2/) |
| SSM-SendCommand| privesc-ssm-command  |  EC2  | 🔑 [AWS IAM privilege escalation paths](https://pswalia2u.medium.com/aws-iam-privilege-escalation-paths-cba36be1aa9e) |
| SSM-StartSession | privesc-ssm-session  |  EC2  | 🔑 [AWS IAM privilege escalation paths](https://pswalia2u.medium.com/aws-iam-privilege-escalation-paths-cba36be1aa9e) |
| STS-AssumeRole | privesc-assumerole  | Nenhum   | 🔑 [AWS IAM privilege escalation paths](https://pswalia2u.medium.com/aws-iam-privilege-escalation-paths-cba36be1aa9e) |
| **Categoria: Atualizando uma Política AssumeRole** |   |   |   |
| IAM-UpdatingAssumeRolePolicy |  privesc14 | Nenhum  | :fox_face: [Well, That Escalated Quickly - Privesc 14](https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws)   |

# Outros Casos de Uso

#### Padrão - Nenhum `terraform.tfvars` configurado
* Implante usando seu perfil AWS padrão (Default)
* Todas as funções criadas são assumíveis pelo principal usado para executar o Terraform (especificado no seu perfil padrão)

#### Usar um perfil diferente do padrão para executar o Terraform
* Copie `terraform.tfvars.example` para `terraform.tfvars`
* Descomente a linha `#aws_local_profile = "profile_name"` e informe o nome do perfil que deseja usar
* Se você está usando um perfil não padrão e ainda assim deseja usar o arquivo `aws_credentails_file_example`, pode usar este comando para gerar um arquivo de credenciais AWS que funciona com o nome do seu perfil não padrão (Obrigado @scriptingislife)
   * Lembre-se de substituir `nondefaultuser` pelo nome do perfil que você está usando):
   * `tail -n +7 aws_credentials_file_example | sed -e "s/111111111111/$(aws sts get-caller-identity | grep Account | awk -F\" '{print $4}')/g;s/default/nondefaultuser/g" >> ~/.aws/credentials`

#### Usar um ARN diferente do chamador como o principal que pode assumir as funções recém-criadas

* Copie `terraform.tfvars.example` para `terraform.tfvars`
* Descomente a linha `#aws_assume_role_arn = "arn:aws:iam::112233445566:user/you"` e informe o ARN que deseja usar

Uma vez criadas, cada uma das funções de privesc será assumível pelo principal (ARN) que você especificou.

#### Criar o recurso na conta X, mas usar um ARN da conta Y como o principal que pode assumir as funções recém-criadas

Se você configurou perfis da CLI AWS que assumem funções em outras contas, você vai querer especificar o nome do perfil E especificar manualmente o ARN que deseja usar para assumir as diferentes funções.

No exemplo abaixo, os recursos serão criados na conta que está vinculada a `"prod-cross-org-access-role"`, mas cada função que o Terraform criar pode ser acessada por `"arn:aws:iam::112233445566:user/you"`, que pertence a outra conta.```
aws_local_profile = "prod-cross-org-access-role"
aws_assume_role_arn = "arn:aws:iam::112233445566:user/you"

Perguntas Frequentes

Como o IAM Vulnerable se compara ao CloudGoat, Terragoat e SadCloud?

Todas essas ferramentas usam Terraform para implantar infraestrutura intencionalmente vulnerável na AWS. No entanto, o foco do IAM Vulnerable é a escalada de privilégios do IAM, enquanto as outras ferramentas ou não cobrem privesc do IAM ou cobrem apenas alguns cenários.

  • CloudGoat implanta oito cenários únicos, alguns dos quais cobrem caminhos de privesc do IAM, enquanto outros focam em outras áreas como segredos em metadados do EC2.
  • Terragoat e SadCloud focam nas muitas maneiras de configurar incorretamente suas contas na nuvem, mas não cobrem caminhos de privesc do IAM. Na verdade, você pode quase pensar no IAM Vulnerable como uma peça de quebra-cabeça ausente quando aplicado junto com Terragoat ou SadCloud. As configurações intencionalmente vulneráveis se complementam.

Como o IAM Vulnerable se compara ao Cloudsplaining, AWSPX, Principal Mapper, Pacu, Cloudmapper ou ScouteSuite?

Todas essas ferramentas ajudam a identificar configurações incorretas existentes no seu ambiente AWS. Algumas, como o Pacu, também ajudam a explorar configurações incorretas. Em contraste, o IAM Vulnerable cria infraestrutura intencionalmente vulnerável. Se você realmente quer aprender como usar ferramentas como Principal Mapper (PMapper), AWSPX, Pacu e Cloudsplaining, o IAM Vulnerable é para você.

Nunca usei Terraform e tenho medo disso. Ajuda!?

Eu também tinha medo do Terraform e de projetos que criariam recursos na minha conta antes de saber como o Terraform funcionava. Aqui estão algumas coisas que podem aliviar sua ansiedade:

  • Ao usar uma conta AWS para este único propósito, você pode ter certeza de que este repositório não afetará negativamente nada mais que você se importa. Mesmo se você implantar o IAM Vulnerable em uma conta separada em uma organização AWS, você pode ter certeza de que as outras contas na org estarão fora do raio de explosão desta conta de playground.
  • O comando terraform plan é uma execução de teste. Ele mostra exatamente o que será implantado se você executar terraform apply antes de realmente executá-lo.
  • Fique tranquilo sabendo que você pode terraform destroy qualquer coisa que você terraform apply para começar do zero.
  • Se sua preocupação é o custo, confira Infracost. Você baixa este binário, registra-se para uma chave de API gratuita e o executa dentro de um diretório Terraform como iam-vulnerable. Esta ferramenta executa terraform plan e calcula o custo mensal associado ao plano conforme configurado atualmente. Esta é a ferramenta que usei para preencher a tabela de estimativas de custo do módulo acima.

Posso executar esta ferramenta e outra ferramenta como CloudGoat, Terragoat ou SadCloud na mesma conta AWS?

Sim. Cada ferramenta manterá seu estado Terraform separadamente, mas todos os recursos serão criados, atualizados e excluídos na mesma conta, e eles podem coexistir.

Trabalhos anteriores e boas referências

  • https://github.com/RhinoSecurityLabs/AWS-IAM-Privilege-Escalation
  • https://rhinosecuritylabs.com/aws/aws-privilege-escalation-methods-mitigation/
  • https://rhinosecuritylabs.com/aws/aws-privilege-escalation-methods-mitigation-part-2/
  • https://labs.bishopfox.com/tech-blog/privilege-escalation-in-aws
  • https://ermetic.com/whats-new/blog/aws/auditing-passrole-a-problematic-privilege-escalation-permission/
Baixar ferramenta
  • terraform apply
  • (Opcional) Adicione os perfis IAM vulneráveis ao seu arquivo de credenciais AWS e altere o número da conta.
    • Os comandos a seguir fazem um backup do seu arquivo de credenciais AWS atual, depois pega o arquivo de credenciais de exemplo do repositório e substitui o espaço reservado da conta pelo número da sua conta alvo, e finalmente adiciona todos os perfis de escalonamento de privilégios do IAM Vulnerable ao seu arquivo de credenciais para que você possa usá-los:
    • cp ~/.aws/credentials ~/.aws/credentials.backup
    • tail -n +7 aws_credentials_file_example | sed s/111111111111/$(aws sts get-caller-identity | grep Account | awk -F\" '{print $4}')/g >> ~/.aws/credentials