
CVE-2026-60004 — RCE pre-autenticazione in Gitea tramite iniezione dell'hook diffpatch
Questo repository contiene uno strumento proof-of-concept per CVE-2026-60004, un vettore di esecuzione remota di codice (RCE) autenticato o pre-autenticazione che interessa alcune versioni di Gitea tramite la tecnica di iniezione di hook diffpatch. L'implementazione principale è un singolo programma Go che esegue i flussi di rilevamento e sfruttamento.
Questo PoC dimostra tecniche di sfruttamento che possono compromettere sistemi remoti. È fornito esclusivamente a scopo di ricerca, test e difesa. Non eseguire questo strumento contro sistemi che non possiedi o per i quali non disponi di un'autorizzazione esplicita al test. L'autore e i contributori non sono responsabili dell'uso improprio.
Dalla radice del repository eseguire:
go build -o cve-2026-60004-poc cve-2026-60004-poc.go
Il binario compilato supporta diverse modalità: full-auto, semi-auto, manual e check.


./cve-2026-60004-poc --url http://target:3000 --mode check
./cve-2026-60004-poc --url http://target:3000 --mode full-auto
./cve-2026-60004-poc --url http://target:3000 --mode semi-auto --user attacker --pw 'P@ssw0rd'
./cve-2026-60004-poc --url http://target:3000 --mode manual --user attacker --pw 'P@ssw0rd' --repo myrepo
./cve-2026-60004-poc --url http://target:3000 --mode manual --user attacker --pw 'P@ssw0rd' --repo myrepo --cmd "whoami; id"
--url (obbligatorio) : URL di base Gitea di destinazione (es. http://10.0.0.1:3000)--mode : full-auto | semi-auto | manual | check (predefinito: full-auto)--user, --pw : Credenziali per le modalità semi-auto/manual--repo : Nome del repository (per la modalità manuale)--branch : Nome del branch (predefinito: main)--cmd : Comando da eseguire sul target (predefinito: cat /etc/passwd)check esegue controlli non intrusivi per rilevare Gitea e sondare la presenza dell'endpoint diffpatch.full-auto tenta di registrare un nuovo utente (richiede la registrazione aperta), creare un repository, consegnare il payload diffpatch dannoso e recuperare l'output dall'hook iniettato.semi-auto utilizza le credenziali fornite per creare un repository e procedere con i passaggi di sfruttamento.manual richiede un utente e un repository esistenti; tenta solo la consegna dell'exploit e (opzionalmente) il recupero dell'output.InsecureSkipVerify su true per le connessioni TLS al fine di massimizzare la compatibilità durante i test; non utilizzare questo comportamento nel codice di produzione./api/v1/version, /user/sign_up, /api/v1/user, /api/v1/user/repos e /api/v1/repos/:owner/:repo/diffpatch.I contributi dovrebbero essere limitati a miglioramenti difensivi, documentazione e correzioni non legate all'exploit. Non inviare modifiche che rendano lo strumento più distruttivo.
Questo repository è fornito a scopo di ricerca e difesa. Nessuna licenza è inclusa esplicitamente; se è necessaria una licenza, aggiungine una e assicurati che sia compatibile con l'uso previsto.
Autore: Gagaltotal666 - GhostGTR666
Questo PoC è stato preparato per dimostrare la vulnerabilità e per assistere i difensori nel rilevarla e mitigarla.
--count : Numero di richieste diffpatch da inviare (min 2)--simple-hook : Usa un hook semplice (salta il payload avanzato)--no-retrieve : Salta il recupero dell'output--proxy : Proxy HTTP (es. http://127.0.0.1:8080)--verbose, -v : Output verboso--quiet, -q : Modalità silenziosa; stampa solo l'output del comando--force : Salta i controlli di validazione di Gitea