Almacenamiento de credenciales en archivo plano
Cuando realizamos una autenticación en AWS utilizando la AWS CLI o SDKs, se genera un conjunto de credenciales que incluyen un Access Key ID y un Secret Access Key. Estas credenciales son fundamentales para interactuar con los servicios de AWS de manera programática y se almacenan localmente en el sistema del usuario para facilitar el acceso futuro sin necesidad de autenticación repetida. Los directorios típicos donde se almacenan estas credenciales son:
Para usuarios de Windows:
C:\Users\NombreDeUsuario\.aws\credentials
Para usuarios de Linux (root):
/root/.aws/credentials
Para usuarios de Mac y Linux (otros usuarios):
/home/NombreDeUsuario/.aws/credentials
La ruta exacta puede variar ligeramente dependiendo del entorno específico y la configuración del sistema.
El archivo normalmente tiene la siguiente composición:
Si durante una auditoria requieres autenticarte con un Token, se especifica así:
Importancia de la Revisión de Estos Directorios
Después de comprometer un equipo, es crítico revisar estos directorios por varias razones:
Base para Auditorías de Seguridad: Este acceso inicial permite a los consultores de seguridad establecer un punto de partida para auditorías de seguridad más profundas, evaluando no solo las credenciales, sino también las configuraciones, políticas y prácticas de seguridad en el entorno de AWS.
Datos alojados en el archivo de credentials
aws_access_key_id
Descripción: El
aws_access_key_id
es un identificador único asignado a un usuario o entidad de IAM (Identity and Access Management) en AWS. Actúa como un "nombre de usuario" público en el proceso de autenticación para acceder a los servicios de AWS.Uso: Se utiliza junto con el
aws_secret_access_key
para firmar programáticamente las solicitudes a AWS, asegurando que las peticiones al servicio de AWS sean auténticas.
aws_secret_access_key
Descripción: El
aws_secret_access_key
es una clave secreta asociada alaws_access_key_id
. Funciona como una "contraseña" en el proceso de autenticación y nunca debe ser compartida o expuesta públicamente.Uso: Se utiliza para calcular la firma que se incluye en las solicitudes a AWS, proporcionando una capa de seguridad que verifica la identidad del solicitante. Esta clave debe mantenerse confidencial para evitar el acceso no autorizado a los recursos de AWS.
aws_session_token (Opcional)
Descripción: El
aws_session_token
es un token de sesión que se requiere además de las credenciales de acceso cuando se utiliza la Autenticación Temporal. Este token se emite para roles de IAM y usuarios federados, no para usuarios de IAM directos, y tiene una duración limitada.Uso: Se utiliza en escenarios donde las credenciales deben ser temporales, como en el caso de roles asumidos o cuando se accede a AWS mediante federación de identidades. El token valida la temporalidad y el alcance de los permisos otorgados a la sesión, mejorando así la seguridad al limitar el tiempo durante el cual las credenciales son válidas.
Última actualización