Lanceur Produits Bitnami Documentationimaxe CLI Blog Contact

Gestion des secrets : n'intégrez jamais d'identifiants dans une AMI

Un mot de passe à l'intérieur d'une image est une fuite qui n'attend que son heure : il se copie, se partage et reste à jamais dans un snapshot. La règle est simple et sans exception : les secrets ne vont jamais dans l'image. Voici la bonne méthode.

Porte blindée d'une chambre forte de banque
Porte blindée d'une chambre forte de banque Photo : Aldo Moisio · Domaine public · Wikimedia Commons

Quand vous intégrez un identifiant dans une AMI, cet identifiant se propage avec chaque copie de l’image, reste gravé dans les snapshots et peut finir dans des comptes ou des régions que vous n’aviez jamais imaginés. Il suffit que quelqu’un ayant un accès en lecture à l’image l’en extraie. Et comme les images sont conservées par versions, le secret peut survivre bien après que vous avez cru l’avoir fait tourner.

La règle d’or : l’image définit la machine ; les secrets sont livrés à l’exécution.

Où les secrets doivent vivre

ServiceCloud ou environnementIdéal pour
AWS Secrets ManagerAWSIdentifiants rotatifs, intégration native
AWS SSM Parameter StoreAWSParamètres et secrets simples, faible coût
HashiCorp VaultMulticloudSecrets dynamiques et contrôle fin
Azure Key Vault / Google Secret ManagerAzure / GCPÉquivalents natifs de chaque cloud

Gardez les secrets dans un gestionnaire dédié, jamais dans l’image ni en clair dans user-data.

Le bon motif : l’identité, pas les mots de passe

La façon la plus sûre pour qu’une instance accède à des ressources n’est pas de lui donner un mot de passe, mais une identité. Sur AWS, un rôle IAM associé à l’instance lui permet d’obtenir des identifiants temporaires, renouvelés automatiquement, sans qu’aucune clé ne voyage dans l’image.

  • Rôles IAM d’instance : l’instance endosse un rôle et obtient des identifiants temporaires.
  • IRSA sur Kubernetes : identité par pod, sans clés partagées sur le nœud.
  • Secrets dynamiques avec Vault : identifiants de courte durée générés à la demande.
  • Injection à l’exécution : l’application lit le secret dans le gestionnaire au démarrage, pas dans un fichier intégré.

Protégez les métadonnées : IMDSv2

Les identifiants temporaires du rôle s’obtiennent via le service de métadonnées de l’instance. Un attaquant exploitant une faille SSRF pourrait tenter de les voler. IMDSv2 exige un jeton de session et limite cette classe d’attaques : rendez-le obligatoire sur vos lancements.

Hygiène : ne laissez pas de traces dans l’image

  • Avant de sceller l’AMI, effacez les historiques de shell, les logs contenant des identifiants, les clés SSH temporaires et les fichiers de configuration avec secrets.
  • Analysez l’image à la recherche de secrets avec des outils comme gitleaks ou trufflehog adaptés aux systèmes de fichiers.
  • Ne laissez pas de clés autorisées superflues dans ~/.ssh/authorized_keys.
  • Évitez les AMI publiques contenant des secrets : si vous publiez, vérifiez que rien ne fuit.

Checklist rapide

  • Zéro secret intégré dans l’image.
  • Gestionnaire de secrets avec rôles ou identité fédérée.
  • IMDSv2 obligatoire.
  • Analyse de secrets dans le pipeline.
  • Nettoyage des traces avant le scellement.

Questions fréquentes

Et si mon application a besoin du secret au démarrage ?

Qu’elle le lise dans le gestionnaire de secrets à l’exécution, via l’identité de l’instance. Ainsi le secret ne voyage jamais dans l’image et peut être renouvelé sans reconstruction.

Est-il sûr d’utiliser user-data pour passer des secrets ?

Pas en clair : user-data est lisible depuis les métadonnées. Utilisez-le tout au plus pour indiquer quel secret aller chercher dans le gestionnaire, en protégeant les métadonnées avec IMDSv2.

Comment détecter si une image contient déjà des secrets intégrés ?

En l’analysant avec des outils de détection de secrets sur son système de fichiers et en passant en revue fichiers de configuration, historiques et clés autorisées avant usage.

Chez imaxe.cloud, nous construisons des images sans identifiants, pensées pour s’intégrer aux gestionnaires de secrets et à l’identité fédérée.

secretsvaultiamimdsv2secrets manager
IM

Équipe imaxe

Nous construisons et maintenons les AMIs du catalogue. Quand nous publions une version, nous l'utilisons en production avant tout le monde.

Du catalogue

AMI en lien avec cet article

Continuez la lecture

Articles liés