diff --git a/src/pentesting-cloud/aws-security/aws-post-exploitation/aws-sts-post-exploitation/README.md b/src/pentesting-cloud/aws-security/aws-post-exploitation/aws-sts-post-exploitation/README.md index 86b02b9c0..6329b9328 100644 --- a/src/pentesting-cloud/aws-security/aws-post-exploitation/aws-sts-post-exploitation/README.md +++ b/src/pentesting-cloud/aws-security/aws-post-exploitation/aws-sts-post-exploitation/README.md @@ -10,13 +10,14 @@ Para mais informações: ../../aws-services/aws-iam-enum.md {{#endref}} -### From IAM Creds to Console +### De IAM Creds para Console -Se você conseguiu obter algumas credenciais IAM, pode se interessar em **acessar o web console** usando as ferramentas a seguir. Observe que o user/role deve ter a permissão **`sts:GetFederationToken`**. +Se você conseguiu obter algumas credenciais IAM, talvez esteja interessado em **acessar o web console** usando as seguintes ferramentas.\ +Observe que o user/role deve ter a permissão **`sts:GetFederationToken`**. -#### Script personalizado +#### Script customizado -O script a seguir usará o default profile e uma default AWS location (não gov e não cn) para fornecer uma signed URL que você pode usar para fazer login no web console: +O script a seguir usará o default profile e uma localização AWS padrão (não gov e não cn) para lhe fornecer uma URL assinada que você pode usar para fazer login no console web: ```bash # Get federated creds (you must indicate a policy or they won't have any perms) ## Even if you don't have Admin access you can indicate that policy to make sure you get all your privileges @@ -54,7 +55,7 @@ echo -n "https://signin.aws.amazon.com/federation?Action=login&Issuer=example.co ``` #### aws_consoler -Você pode **gerar um link para o console da web** com [https://github.com/NetSPI/aws_consoler](https://github.com/NetSPI/aws_consoler). +Você pode **gerar um link para o console web** com [https://github.com/NetSPI/aws_consoler](https://github.com/NetSPI/aws_consoler). ```bash cd /tmp python3 -m venv env @@ -63,7 +64,7 @@ pip install aws-consoler aws_consoler [params...] #This will generate a link to login into the console ``` > [!WARNING] -> Certifique-se de que o usuário IAM tenha permissão `sts:GetFederationToken`, ou forneça uma role para assumir. +> Garanta que o usuário IAM tenha permissão `sts:GetFederationToken`, ou forneça uma role para assumir. #### aws-vault @@ -74,11 +75,15 @@ aws-vault exec jonsmith -- aws s3 ls # Execute aws cli with jonsmith creds aws-vault login jonsmith # Open a browser logged as jonsmith ``` > [!NOTE] -> Você também pode usar **aws-vault** para obter uma **browser console session** +> Você também pode usar **aws-vault** para obter uma **sessão do console do navegador** + +### Do Web Console para Credenciais IAM + +A extensão do navegador **** é capaz de interceptar, na rede, credenciais IAM antes que sejam protegidas na memória do navegador. ### **Bypass User-Agent restrictions from Python** -Se houver uma **restriction to perform certain actions based on the user agent** usada (como restringir o uso da biblioteca python boto3 com base no user agent), é possível usar a técnica anterior para **connect to the web console via a browser**, ou você pode diretamente **modify the boto3 user-agent** fazendo: +Se existir uma **restrição para executar certas ações com base no user agent** usado (por exemplo, restringir o uso da biblioteca python boto3 com base no user agent), é possível usar a técnica anterior para **conectar-se ao web console via um browser**, ou você pode diretamente **modificar o boto3 user-agent** fazendo: ```bash # Shared by ex16x41 # Create a client @@ -93,12 +98,12 @@ response = client.get_secret_value(SecretId="flag_secret") print(response['Secre ``` ### **`sts:GetFederationToken`** -Com essa permissão é possível criar uma identidade federada para o usuário que a utiliza, limitada às permissões que esse usuário possui. +Com essa permissão é possível criar uma identidade federada para o usuário que a executa, limitada às permissões que esse usuário possui. ```bash aws sts get-federation-token --name ``` -O token retornado por sts:GetFederationToken pertence à identidade federada do usuário que faz a chamada, mas com permissões restritas. Mesmo que o usuário tenha direitos de administrador, certas ações, como listar usuários do IAM ou anexar políticas, não podem ser executadas através do token federado. +O token retornado por sts:GetFederationToken pertence à identidade federada do usuário que efetuou a chamada, mas com permissões restritas. Mesmo que o usuário tenha privilégios de administrador, certas ações, como listar IAM users ou anexar políticas, não podem ser realizadas com o token federado. -Além disso, esse método é um pouco mais discreto, já que o usuário federado não aparece no AWS Portal; ele só pode ser observado através dos logs do CloudTrail ou de ferramentas de monitoramento. +Além disso, esse método é um pouco mais furtivo, já que o usuário federado não aparece no AWS Portal; ele só pode ser observado por meio dos logs do CloudTrail ou por ferramentas de monitoramento. {{#include ../../../../banners/hacktricks-training.md}}