Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Outils/GitHubGitHub/xdezen/cve-2025-8110
Analyse des VulnérabilitésExploitationExploitation d'Applications WebApprentissage et ÉducationDéveloppement de Charges UtilesLabs et Pratique
GitHubxdezen/cve-2025-8110

CVE-2025-8110

Preuve de concept Python pour CVE-2025-8110, démontrant l'écriture arbitraire de fichiers vers RCE dans Gogs via un lien symbolique et l'API, avec une utilisation en laboratoire éducatif.

Voir le dépôt
1il y a 1 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Gogs Arbitrary File Write to RCE (CVE-2025-8110) - Exploit à usage éducatif

Ce dépôt contient un script de preuve de concept (PoC) en Python pour démontrer et analyser la vulnérabilité référencée sous le nom CVE-2025-8110 dans le service Git auto-hébergé Gogs (versions 0.13.3 et antérieures).


⚠️ Clause de non-responsabilité (Disclaimer)

[!WARNING] CE LOGICIEL EST FOURNI UNIQUEMENT À DES FINS ÉDUCATIVES ET DE RECHERCHE EN SÉCURITÉ. > L'utilisation de ce matériel contre des cibles sans le consentement préalable et écrit de leurs propriétaires est totalement illégale. L'auteur de ce dépôt ne saurait être tenu responsable de tout dommage, préjudice ou mauvaise utilisation découlant de l'usage de ce code. Utilisez-le toujours à vos propres risques et dans des environnements contrôlés ou des simulations autorisées (comme des laboratoires de CTF).


Qu'est-ce que le CVE-2025-8110 ?

Le CVE-2025-8110 est une vulnérabilité critique d'Écriture Arbitraire de Fichiers provoquée par une validation insuffisante lors de la gestion des liens symboliques (symlinks) via l'API PutContents de Gogs.

Mécanisme d'impact

Un attaquant authentifié peut :

  1. Créer un dépôt Git local contenant un lien symbolique qui pointe vers un fichier sensible situé en dehors du dossier du dépôt (par exemple, le fichier de configuration .git/config du serveur lui-même).
  2. Envoyer (push) ce dépôt vers le serveur Gogs.
  3. Utiliser l'API de Gogs pour modifier le fichier du lien symbolique. Étant donné que l'API ne vérifie pas si la destination est un lien symbolique, le système d'exploitation sous-jacent suit le lien et écrase des fichiers système avec les privilèges avec lesquels Gogs est exécuté.
  4. Si le service Gogs tourne en tant que root, l'écriture de fichiers peut être élevée en Exécution de Code à Distance (RCE) en injectant la commande souhaitée dans la propriété sshCommand du fichier de configuration Git.

Explication du code (exploit.py)

Le script automatise tout le processus d'exploitation en utilisant des identifiants valides et un jeton d'API préalablement généré manuellement dans l'interface web de Gogs :

root@kitploit:~
          ┌──────────────────────────────────────────────┐
          │          Máquina del Atacante (Kali)         │
          └──────────────────────┬───────────────────────┘
                                 │
         (1) Crea Repositorio    │ (3) Sube Symlink (.git/config)
         Malicioso vía API       │     vía git push
                                 ▼
          ┌──────────────────────────────────────────────┐
          │      Túnel SSH Local (puerto 8080)           │
          └──────────────────────┬───────────────────────┘
                                 │
                                 ▼
          ┌──────────────────────────────────────────────┐
          │           Servidor Víctima Gogs              │
          │              (Puerto 3001)                   │
          └──────────────────────┬───────────────────────┘
                                 │
                                 │ (4) API PUT "contents"
                                 │     Sigue Symlink y escribe
                                 │     "sshCommand" en .git/config
                                 ▼
          ┌──────────────────────────────────────────────┐
          │     Ejecución del Payload como ROOT          │
          └──────────────────────────────────────────────┘

Composants principaux du script :

  1. create_malicious_repo : envoie une requête POST à l'API de Gogs (/api/v1/user/repos) en s'authentifiant avec le jeton d'accès fourni afin de créer un nouveau dépôt avec un nom aléatoire généré dynamiquement.
  2. upload_malicious_symlink :
    • Clone le dépôt fraîchement créé dans le dossier temporaire local /tmp/.
    • Crée un lien symbolique localement sur la machine de l'attaquant pointant vers .git/config (le fichier de configuration Git du serveur).
    • Effectue un commit et renvoie les modifications au serveur via une commande système (git push).
  3. exploit : définit la charge utile (payload) en utilisant une astuce d'injection dans la propriété sshCommand de Git. En mettant à jour le contenu via l'API, Gogs est forcé de réécrire son propre .git/config sur le serveur. Lorsque la dernière partie du processus Git est déclenchée, le système Gogs exécute la commande terminal (un shell inversé en Bash) qui renvoie la connexion vers votre écouteur Netcat.

Guide d'utilisation en laboratoires (HTB - Silentium)

Prérequis

Assurez-vous de configurer les données d'identité globales dans Git avant d'exécuter le script pour éviter des erreurs lors du commit automatique :

root@kitploit:~
git config --global user.email "[email protected]"
git config --global user.name "estudiante"

Usage : python3 exploit.py -u (http://127.0.0.1:8080) -lh <TU_IP_VPN> -lp 4446

Télécharger l’outil