Aller au contenu principal
Expert Cybersécurité & IAv9.0
Centres de ressources conformité
Besoin d'un accompagnement expert ?
Devis personnalisé sous 24h — audit, conformité, incident
Checklists Sécurité — Audit & Durcissement
Formats disponibles
📄 PDF 📊 Excel 🌐 Web

11 checklists professionnelles couvrant 2 200+ points de contrôle. Téléchargement gratuit, aucune inscription.

GitHub Dorking

hacking

Définition

Le GitHub Dorking est l'application des techniques de recherche avancée à la plateforme GitHub (et ses équivalents GitLab, Bitbucket) pour découvrir des informations sensibles involontairement exposées dans des dépôts de code publics. Des milliers d'organisations exposent chaque jour des credentials, des clés API, des tokens d'accès et des fichiers de configuration dans leurs dépôts publics. La plateforme GitHub propose une syntaxe de recherche avancée similaire aux opérateurs Google : org: pour cibler une organisation, filename: pour chercher des noms de fichiers spécifiques, extension: pour les extensions de fichiers, content: pour le contenu, et des combinaisons permettant de cibler précisément des patterns de credentials. Des requêtes comme org:acme password, filename:.env DB_PASSWORD ou extension:pem private retournent souvent des résultats alarmants. Les types de secrets les plus fréquemment découverts incluent : les clés API de services cloud (AWS access keys avec le pattern AKIA…, clés Google Cloud, tokens Azure), les tokens d'authentification (OAuth, JWT, tokens GitHub/GitLab), les mots de passe de bases de données, les certificats et clés privées (.pem, .key, .p12), les fichiers de configuration d'environnement (.env, .env.local, config.yml), et des codes sources d'applications propriétaires. L'historique Git est particulièrement révélateur : même si un secret a été supprimé d'un commit récent, il reste accessible dans l'historique des commits sauf si le dépôt a été nettoyé avec des outils comme BFG Repo-Cleaner ou git filter-branch. Les attaquants scannent systématiquement les historiques de commits à la recherche de credentials qui "ont été ajoutés par erreur, puis supprimés". Des outils automatisés spécialisés dans cette recherche incluent : truffleHog (scan de l'historique Git pour les patterns de secrets avec haute entropie), GitLeaks (similaire avec une configuration flexible), Gitrob (scan d'organisations GitHub entières), and secretlint (utilisé en pré-commit hook pour prévenir les commits accidentels de secrets).

Fonctionnement

La recherche GitHub avancée (https://github.com/search) accepte des opérateurs booléens et des filtres sur le type de fichier, l'organisation, le nom de fichier et le contenu. Des outils comme Gitrob ou truffleHog automatisent la recherche en masse : ils scannent tous les dépôts publics d'une organisation ou d'un utilisateur, analysent le contenu et l'historique des commits, et signalent les patterns correspondant à des secrets (haute entropie, patterns de credentials connus).

Exploitation offensive

Une clé AWS découverte sur GitHub peut permettre un accès immédiat à l'infrastructure cloud de l'organisation avec les permissions associées au rôle IAM du compte (parfois des permissions administrateur). Un token d'API de service interne peut permettre l'accès à des données clients ou à des systèmes internes. Le coût d'exploitation est minimal : téléchargement d'AWS CLI, configuration du credential, et aws sts get-caller-identity confirme l'accès.

Détection et mitigation

GitHub propose nativement le "Secret Scanning" pour les dépôts publics, qui alerte automatiquement les organisations sur les secrets détectés. Pour les dépôts privés, cette fonctionnalité est disponible en option payante. Les équipes DevSecOps devraient intégrer des pre-commit hooks (detect-secrets, truffleHog) dans leur workflow pour intercepter les commits de secrets avant qu'ils n'atteignent le dépôt. La rotation immédiate de tous les credentials exposés est impérative dès leur détection.

Articles liés

Un projet cybersécurité ?

Expert dispo · Réponse 24h

Devis