Acceso Inicial
Configurar AWS CLI
Requieres otorgar
AWS Access KEY ID
AWS Secret Access Key
Region (importante especificar la región correcta)
Formato (json)
Formato de comandos en aws
Whoami
El primer comando no requiere de permisos, solo te dara información básica
Este comando interactua con el servicio de IAM, requiere almenos privilegios de Get*
Almacenamiento de credenciales de AWS en archivo plano
Cuando se realiza una autenticación con aws CLI, las credenciales importantes como Access Key y el Secret Access Key se almacenan en los directorios:
(Windows) - C:\Users\Gerh.aws\credentials
(Linux) - /root/.aws/credentials
(Linux) - /home/user/.aws/credentials
Donde podrás encontrar los siguientes datos:
aws_access_key_id = Clave de acceso de AWS – (AWS access key).
aws_secret_access_key = Clave secreta de AWS. – (AWS secret key).
aws_session_token = Token de sesión de AWS. Solo se requiere un token de sesión si está utilizando credenciales de seguridad temporales. – (AWS session token).
Obtener sesion token
Metodología básica de Pentesting/Red Teaming
Para auditar un entorno AWS es importante conocer:
¿Cuáles servicios se está usando
¿Cuáles servicios si se desea auditor?
¿Cuáles servicios no se desea auditar?
¿Cuáles servicios/objetos están siendo expuestos?
¿Quién tiene acceso a que cosas?
¿Cómo esta organizado internamente los servicios de AWs y como se conectan con servicios externos?
Desde el punto de vista de una post explotación o un Red Teaming, el primer paso para comprometer un entorno de AWS es obtener credenciales. Acontinuación se listan algunas ideas de como obtener estas credenciales:
Leaks de github / gitlab / bucket o similares - OSINT
Ingeniaría Social
Reutilizar contraseñas, contraseñas por defecto, password leaks
Vulnerabilidades asociadas a aplicaciones e AWS (AWS-Hosted Apps):
Aplicaciones web - SSRF Para acceder a los metadatos
LFR - Local File Read para listar los directorios:
/home/user/.aws/credentials
3rd Parties leaks o breaks
Por medio de un Internal (empleado interno).
En auditorias con credenciales con cliente, se requiere solo se requiere un rol con los siguientes permisos:
Política de AWS: arn:aws:iam::aws:policy/ReadOnlyAccess
Referencias
Última actualización