AWS STS
cloudDéfinition
AWS Security Token Service (STS) est un service web AWS qui permet d'obtenir des credentials temporaires (Access Key ID, Secret Access Key, Session Token) pour des identités AWS. Ces credentials sont à durée limitée (15 minutes à 36 heures selon l'opération) et permettent d'accéder aux ressources AWS avec les permissions définies dans le rôle ou la politique associés. AWS STS est le mécanisme sous-jacent à tout usage de rôles IAM. Les principales opérations STS incluent : AssumeRole (assumer un rôle IAM dans le même compte ou un autre compte AWS), AssumeRoleWithWebIdentity (assumer un rôle via un token JWT d'un IdP OIDC comme Google, Cognito, Okta), AssumeRoleWithSAML (assumer un rôle via une assertion SAML 2.0 d'un IdP enterprise), GetSessionToken (obtenir des credentials temporaires pour un utilisateur IAM, notamment avec MFA), et GetCallerIdentity (vérifier l'identité associée aux credentials courants). Du point de vue de la sécurité, les credentials STS présentent des avantages significatifs sur les credentials long-lived : rotation automatique par expiration, possibilité de révoquer une session (via l'invalidation du rôle IAM ou via des conditions de politique avec aws:TokenIssueTime), et traçabilité via les logs CloudTrail qui enregistrent chaque AssumeRole avec le contexte complet. Les attaques ciblant STS incluent : l'exfiltration de credentials temporaires depuis les métadonnées d'instance EC2 (SSRF IMDS), le vol de tokens JWT OIDC pour abuser d'AssumeRoleWithWebIdentity, et la création de sessions persistantes via la génération répétée de credentials temporaires. AWS GuardDuty détecte les comportements anormaux d'usage STS, notamment les appels depuis des IPs inhabituelles ou des agents utilisateurs suspects. La région STS peut avoir un impact sur la latence et la disponibilité. AWS recommande d'activer les STS regional endpoints plutôt que le endpoint global pour améliorer la résilience et réduire la latence.
AssumeRole et fédération d'identité
AssumeRoleWithWebIdentity permet d'intégrer des IdP OIDC (Okta, Keycloak, GitHub Actions, Google Workspace) avec AWS IAM. GitHub Actions utilise ce mécanisme pour s'authentifier à AWS sans stocker de clés d'accès dans les secrets GitHub. Configurez la condition StringEquals sur sub/aud dans la trust policy pour restreindre précisément quels repositories ou workflows peuvent assumer le rôle.
Détection des compromissions via CloudTrail STS
Les événements CloudTrail STS critiques à surveiller : AssumeRole avec une source IP inhabituelle (indication de vol de credentials), GetCallerIdentity répété depuis une nouvelle entité (reconnaissance post-compromission), AssumeRole vers des rôles avec des permissions Admin, et ConsoleLogin suivi d'AssumeRole vers des comptes non habituels. Créez des alertes Metric Filter sur ces patterns.
Révocation de credentials STS
Pour révoquer des credentials STS actifs sans attendre leur expiration : ajoutez une condition DenyAll avec aws:TokenIssueTime dans la politique du rôle pour invalider tous les tokens émis avant une date donnée. Cette technique est documentée par AWS sous le nom "revoke active sessions". Documentez ce processus dans vos playbooks de réponse aux incidents.
Articles liés
Expert en cybersécurité offensive et intelligence artificielle. Pentest, audit et développement IA sur-mesure.
Services
- Audit Infrastructure
- Audit Kubernetes
- Audit Microsoft 365
- Audit Sécurité Réseau
- Analyse de Risques
- Audit Active Directory
- Audit Application Web
- Audit Cloud (AWS/Azure/GCP)
- Audit Messagerie
- Audit API (OWASP Top 10)
- Audit DevSecOps & CI/CD
- Audit Code Source (SAST)
- Audit Postes de Travail
- Audit Sauvegarde & Résilience
- Audit OT/SCADA (IEC 62443)
- Développement IA
- Formations
Ressources
Projets & Outils
© 2026 Ayi NEDJIMI Consultants. Tous droits réservés.
Un projet cybersécurité ?
Expert dispo · Réponse 24h