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 de307a528..c834b0eb5 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,14 +10,14 @@ Para más información: ../../aws-services/aws-iam-enum.md {{#endref}} -### Desde credenciales IAM a la consola +### Desde IAM Creds a la consola -Si has logrado obtener algunas credenciales IAM puede que te interese **acceder a la consola web** usando las siguientes herramientas.\ +Si has conseguido obtener algunas credenciales IAM, quizá te interese **acceder a la consola web** usando las siguientes herramientas.\ Ten en cuenta que el usuario/rol debe tener el permiso **`sts:GetFederationToken`**. #### Script personalizado -El siguiente script usará el perfil por defecto y una ubicación AWS por defecto (no gov y no cn) para proporcionarte una URL firmada que puedes usar para iniciar sesión en la consola web: +El siguiente script usará el perfil por defecto y una ubicación AWS por defecto (no gov y no cn) para darte una URL firmada que puedes usar para iniciar sesión en la consola 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 @@ -64,8 +64,8 @@ pip install aws-consoler aws_consoler [params...] #This will generate a link to login into the console ``` > [!WARNING] -> Asegúrese de que el usuario IAM tenga el permiso `sts:GetFederationToken`, o proporcione un role para asumir. - +> Asegúrate de que el usuario IAM tenga el permiso `sts:GetFederationToken`, o proporciona un rol para asumir. + #### aws-vault [**aws-vault**](https://github.com/99designs/aws-vault) es una herramienta para almacenar y acceder de forma segura a las credenciales de AWS en un entorno de desarrollo. @@ -75,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] -> También puedes usar **aws-vault** para obtener una **browser console session** +> También puedes usar **aws-vault** para obtener una **sesión de consola del navegador** + +### Desde la consola web a credenciales IAM + +La extensión del navegador **** es capaz de interceptar desde la red credenciales IAM antes de que sean protegidas en la memoria del navegador. ### **Evadir restricciones de User-Agent desde Python** -Si existe una **restricción para realizar ciertas acciones basada en el user agent** usado (como restringir el uso de la librería python boto3 basada en el user agent) es posible usar la técnica anterior para **conectarse a la web console vía un browser**, o también podrías directamente **modificar el user-agent de boto3** haciendo: +Si existe una **restricción para realizar ciertas acciones basada en el user agent** usado (como restringir el uso de python boto3 library en función del user agent) es posible usar la técnica anterior para **conectarse a la consola web vía un navegador**, o se podría directamente **modificar el boto3 user-agent** haciendo: ```bash # Shared by ex16x41 # Create a client @@ -94,12 +98,12 @@ response = client.get_secret_value(SecretId="flag_secret") print(response['Secre ``` ### **`sts:GetFederationToken`** -Con este permiso es posible crear una identidad federada para el usuario que lo ejecute, limitada a los permisos que tenga ese usuario. +Con este permiso es posible crear una identidad federada para el usuario que la ejecuta, limitada a los permisos que tenga dicho usuario. ```bash aws sts get-federation-token --name ``` -El token devuelto por sts:GetFederationToken pertenece a la identidad federada del usuario que realiza la llamada, pero con permisos restringidos. Incluso si el usuario tiene derechos de administrador, ciertas acciones como listar usuarios de IAM o adjuntar políticas no pueden realizarse a través del token federado. +El token devuelto por sts:GetFederationToken pertenece a la identidad federada del usuario que realiza la llamada, pero con permisos restringidos. Incluso si el usuario tiene privilegios de administrador, ciertas acciones, como listar usuarios de IAM o adjuntar políticas, no se pueden realizar mediante el token federado. -Además, este método es algo más sigiloso, ya que el usuario federado no aparece en el AWS Portal; solo puede observarse mediante los logs de CloudTrail o herramientas de monitorización. +Además, este método es algo más sigiloso, ya que el usuario federado no aparece en el AWS Portal; solo puede observarse a través de los logs de CloudTrail o de herramientas de monitorización. {{#include ../../../../banners/hacktricks-training.md}}