Secret Scanning — Gitleaks (Détection de secrets dans le code)
devsecopsDéfinition
Le secret scanning est la pratique consistant à détecter automatiquement des informations sensibles (clés API, tokens d'accès, mots de passe, certificats privés, credentials de base de données) accidentellement committés dans des dépôts de code source. Gitleaks est l'outil open-source de référence pour cette tâche, capable de scanner l'historique complet d'un dépôt Git à la recherche de secrets via des règles basées sur des expressions régulières et une entropie élevée. Trufflehog est une alternative populaire offrant des vérifications de validité des secrets détectés contre les APIs correspondantes. GitHub Advanced Security intègre nativement le secret scanning sur les dépôts GitHub, avec des partenariats pour la révocation automatique de secrets compromis (GitHub Secret Scanning partner program). La prévention passe par l'intégration de pre-commit hooks (detect-secrets, gitleaks hook) bloquant les commits contenant des secrets, la formation des développeurs, et l'utilisation systématique de gestionnaires de secrets (Vault, AWS Secrets Manager). La découverte d'un secret exposé impose la révocation immédiate, la rotation, et une investigation sur d'éventuels usages malveillants.
Description
Le secret scanning détecte automatiquement les credentials (API keys, tokens OAuth, clés privées SSH/PGP, passwords DB) accidentellement committés dans les dépôts Git. Gitleaks (open-source) scanne l'historique complet via regex et entropie élevée. GitHub Advanced Security intègre nativement cette fonctionnalité avec révocation automatique.
Mise en œuvre
Configurer un pre-commit hook : gitleaks protect --staged bloquant les commits contenant des secrets. En CI : gitleaks detect --source . --report-format sarif > gitleaks.sarif. Activer le push protection GitHub pour bloquer les pushes avant qu'ils n'atteignent le dépôt.
Points clés
- Scan historique complet :
gitleaks detect --log-opts="HEAD~100..HEAD"pour les nouveaux dépôts - Secret découvert = révocation immédiate + rotation + investigation des accès (CloudTrail, audit logs)
- detect-secrets (Yelp) : baseline versionnée pour gérer les faux positifs de manière collaborative
Besoin d'un expert sur ce sujet ?
Audit, pentest, conformité ISO 27001, développement IA sécurisé — demandez un devis gratuit.
Demander un devis