Boîte à outils Python pour la lecture de fichiers non authentifiée GitLab CVE-2026-85706 : exploit weaponisé avec loot, shell, scan de masse, plus audit et reporting non intrusifs avec SafeChecker.

⚠️ USAGE ÉTHIQUE UNIQUEMENT – TESTS DE SÉCURITÉ AUTORISÉS
Ce dépôt fournit des outils destinés exclusivement aux professionnels de la sécurité autorisés, aux blue teams et aux testeurs d'intrusion.
Tout accès non autorisé à des systèmes informatiques est illégal en vertu du CFAA (États-Unis), du Computer Misuse Act (Royaume-Uni), du TCK 243/244 (Turquie) et de lois similaires dans le monde entier.
CVE‑2026‑85706 est une vulnérabilité critique de lecture arbitraire de fichiers locaux sans authentification dans GitLab CE/EE auto-hébergé (versions 18.7 à 19.3.1) qui permet à un attaquant non authentifié de lire n'importe quel fichier sur le serveur via une seule requête HTTP vers l'API des commits.
%63ommits./api/v4/projects/{id}/repository/commits ouvre le fichier spécifié dans file.path avant que l'authentification ne soit appliquée.% invalide, Rack renvoie le contenu dans un corps 400 Bad Request, divulguant ainsi l'intégralité du contenu.| Outil | Objectif | Utilisateur visé |
|---|---|---|
exploit.py | Boîte à outils complète et weaponisée avec lecture de fichiers non authentifiée, énumération du butin, extraction de jetons d'administration, scan de masse, shell interactif, rotation de proxy, mode furtif et rapports multi-formats. | Red teams / pentesters autorisés |
safechecker.py | Vérificateur de vulnérabilité non intrusif qui détecte la version de GitLab, valide l'exposition, audite les en-têtes de sécurité et évalue le risque sans lire aucun fichier. Génère des rapports JSON/CSV/HTML. | Blue teams / auditeurs de sécurité |
| Fonctionnalité | exploit.py | safechecker.py |
|---|---|---|
| Détection de vulnérabilité | ✅ | ✅ |
| Détection de version | ✅ | ✅ |
| Lecture de fichiers non authentifiée | ✅ | ❌ |
| Énumération du butin | ✅ | ❌ |
| Extraction de jetons d'administration | ✅ | ❌ |
| Shell interactif | ✅ | ❌ |
| Scan de masse (multi-thread) | ✅ | ✅ |
| Audit des en-têtes de sécurité | ❌ | ✅ |
| Vérification TLS/certificat | ❌ | ✅ |
| Mappage MITRE ATT&CK | ✅ | ✅ |
| Prise en charge de proxy | ✅ | ✅ |
| Rotation de proxy | ✅ | ❌ |
| Rotation de User‑Agent (OPSEC) | ✅ | ❌ |
| Jitter / délai (OPSEC) | ✅ | ❌ |
| Limiteur de débit adaptatif | ✅ | ✅ |
| Mode furtif | ✅ | ❌ |
| Usurpation d'empreinte TLS curl_cffi | ✅ | ❌ |
| Mode non intrusif (sûr) | ❌ | ✅ |
| Sortie JSON / JSONL / CSV / HTML | ✅ | ✅ |
| Sortie base de données SQLite | ✅ | ❌ |
| Notification webhook | ✅ | ✅ |
| Diff par rapport au scan précédent | ✅ | ✅ |
| Nettoyage des journaux (anti-forensique) | ✅ | ❌ |
| User‑Agent personnalisé | ✅ | ✅ |
| Contrôle de vérification SSL | ✅ | ✅ |
| Scénario | Outil recommandé |
|---|---|
| Blue Team – vérifier si votre GitLab est vulnérable | safechecker.py |
| Audit de sécurité – évaluation de vulnérabilité non intrusive | safechecker.py |
| Red Team – test d'intrusion autorisé avec exploitation complète | exploit.py |
| Bug Bounty – test de divulgation responsable | safechecker.py |
| Scan de masse – vérification de multiples cibles pour la vulnérabilité | exploit.py (détection uniquement) |
| Réponse à incident – vérifier si les systèmes sont compromis | safechecker.py |
git clone https://github.com/tc4dy/CVE-2026-85706-PoC-Toolkit
cd CVE-2026-85706-PoC-Toolkit
pip install -r requirements.txt
requests
urllib3
curl_cffi
rich
pyyaml
exploit.py