Translated ['', 'src/pentesting-cloud/aws-security/aws-post-exploitation

This commit is contained in:
Translator
2026-01-18 11:47:54 +00:00
parent 4e964a1f4f
commit d37e2bfbbf

View File

@@ -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 **<https://github.com/AI-redteam/clier>** 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 <username>
```
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}}