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
CVE-2026-60004-Gitea-RCE-PoC — 🫖 PoC de validation RCE CVE-2026-60004 Gitea à cible unique directe | Kitploit
Outils/GitHubGitHub/infosec-db/cve-2026-60004-gitea-rce-poc
Analyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionApprentissage et Éducation
GitHubinfosec-db/cve-2026-60004-gitea-rce-poc

CVE-2026-60004-Gitea-RCE-PoC

🫖 PoC de validation RCE CVE-2026-60004 Gitea à cible unique directe

Voir le dépôt
1il y a 11h 20mPas 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 →
Partager

🫖 CVE-2026-60004 — PoC RCE Gitea

Un outil de validation directe et à cible unique pour la vulnérabilité d'exécution de code à distance via le hook Git diffpatch de Gitea.

Python 3.10+ License: MIT CVE

Ce dépôt contient le validateur AfterDark ciblé : un script, une cible, une exécution. Il n'y a pas de sous-commandes de découverte, de reconnaissance, de vérification ou autres.

⚠️ Avertissement légal et éthique

Ce projet est fourni uniquement pour des tests de sécurité autorisés, une validation défensive, la recherche et l'éducation. Utilisez-le exclusivement sur des systèmes que vous possédez ou pour lesquels vous disposez d'une autorisation écrite explicite d'évaluation.

Les auteurs et contributeurs ne sont pas responsables des mauvaises utilisations, des dommages, des interruptions de service, des pertes de données ou des conséquences juridiques. Vous êtes responsable du respect des lois applicables, des contrats, des règles d'engagement et des exigences de divulgation.

Il s'agit d'une preuve de concept RCE active. Elle crée un compte, crée un dépôt privé, écrit un marqueur de contrat et exécute une commande en tant qu'utilisateur du système d'exploitation Gitea. Traitez-la en conséquence. 🛡️

🧠 Résumé de la vulnérabilité

CVE-2026-60004 affecte le flux de travail diffpatch des dépôts de Gitea. Un attaquant disposant d'un accès en écriture au dépôt peut soumettre un contenu de patch contrôlé qui installe et déclenche un hook Git, entraînant l'exécution de commandes en tant que compte de service Gitea.

ÉlémentDétail
ProduitGitea
Versions affectées>= 1.17.0, < 1.27.1
Version corrigée1.27.1
ImpactExécution de commandes à distance en tant qu'utilisateur OS Gitea
Avis en amontGHSA-rcr6-4jqh-j84m

Forgejo et les autres forks nécessitent un examen manuel de l'implémentation et ne sont pas automatiquement considérés comme affectés.

✨ Ce que fait le script

Chaque exécution effectue un flux de travail fixe :

  1. Normalise une cible HTTP ou HTTPS exacte.
  2. Vérifie la version de Gitea signalée et bloque les versions connues non affectées.
  3. Exige un numéro de contrat, un nom d'utilisateur et un mot de passe fournis par l'opérateur.
  4. Refuse de réutiliser un compte qui s'authentifie déjà.
  5. Tente d'enregistrer exactement le compte de test fourni.
  6. Crée un dépôt privé au nom unique.
  7. Installe et déclenche le hook post-index-change conçu via diffpatch.
  8. Écrit le marqueur de contrat et exécute id par défaut.
  9. Récupère la sortie de la commande via une référence Git temporaire.
  10. Enregistre les preuves JSON locales et la sortie complète de la commande.

L'outil n'accepte qu'une seule cible. Il n'a pas de mode liste de cibles, de caractères génériques, de scan de masse ou de découverte passive.

📦 Prérequis

  • Python 3.10 ou plus récent
  • Git disponible dans PATH
  • Autorisation écrite explicite pour la cible sélectionnée
  • Auto-enregistrement Gitea activé
  • Un nom d'utilisateur et un mot de passe jetables entièrement nouveaux pour l'exécution

Le script n'utilise que la bibliothèque standard de Python. Aucun pip install n'est requis.

🚀 Installation

root@kitploit:~
git clone https://github.com/InfoSec-DB/CVE-2026-60004-Gitea-RCE-PoC.git
cd CVE-2026-60004-Gitea-RCE-PoC
python3 scanner.py --help

🧪 Utilisation

root@kitploit:~
python3 scanner.py \
  --contract-number ENG-2026-001 \
  --username audit-eng-2026-001 \
  --password 'use-a-unique-disposable-password' \
  https://gitea.example

Des options courtes sont également disponibles :

root@kitploit:~
python3 scanner.py \
  -c ENG-2026-001 \
  -u audit-eng-2026-001 \
  -p 'use-a-unique-disposable-password' \
  https://gitea.example

🚨 Le mot de passe est fourni en ligne de commande et affiché dans le panneau de résultats final. Utilisez uniquement un identifiant de test jetable unique. Soyez conscient que les arguments de ligne de commande peuvent être conservés dans l'historique du shell ou temporairement visibles par les outils locaux d'inspection des processus.

Commande autorisée personnalisée

La commande par défaut est id. Une commande personnalisée étroitement limitée peut être fournie avec --cmd :

root@kitploit:~
python3 scanner.py \
  -c ENG-2026-001 \
  -u audit-eng-2026-001 \
  -p 'use-a-unique-disposable-password' \
  --cmd 'uname -a' \
  https://gitea.example

Les commandes personnalisées n'ont intentionnellement aucun délai d'attente. Le validateur attend que la commande distante se termine, évitez donc les commandes interactives ou de longue durée, sauf si l'engagement l'exige spécifiquement.

Emplacement de sortie

Par défaut, chaque exécution écrit sous :

root@kitploit:~
afterdark-results/<contract>/<UTC timestamp>/

Vous pouvez sélectionner une racine différente ou un répertoire d'exécution exact :

root@kitploit:~
python3 scanner.py \
  -c ENG-2026-001 \
  -u audit-eng-2026-001 \
  -p 'use-a-unique-disposable-password' \
  --results-root ./engagement-evidence \
  https://gitea.example
root@kitploit:~
python3 scanner.py \
  -c ENG-2026-001 \
  -u audit-eng-2026-001 \
  -p 'use-a-unique-disposable-password' \
  --output-dir ./engagement-evidence/run-01 \
  https://gitea.example

🧾 Preuves

Chaque exécution crée des fichiers privés 0600 et refuse d'écraser les résultats existants :

  • confirmation.json — cible, résultat de version, nom de compte, horodatages, commande, code de retour et artefacts capturés
  • confirmation.command-output.txt — sortie complète de la commande distante

Les preuves peuvent contenir des informations sensibles d'engagement. Ne les committez pas dans Git. Le .gitignore inclus exclut les chemins de résultats par défaut et les noms de fichiers de preuves courants.

🧹 Nettoyage

Le validateur ne supprime pas automatiquement les artefacts côté serveur. Après l'évaluation, un administrateur autorisé doit :

  • Supprimer le compte de test jetable fourni
  • Supprimer le dépôt privé généré afterdark-*
  • Supprimer /tmp/gitea-validation-<contract>/client.txt
  • Archiver ou supprimer en toute sécurité les preuves locales
  • Mettre à niveau Gitea vers 1.27.1 ou plus récent
  • Effectuer un nouveau test de remédiation minimal si autorisé

Un résultat réussi prouve l'exécution de commandes en tant que compte de service Gitea. Il ne prouve pas en soi l'accès root, la persistance, le mouvement latéral ou la compromission complète de l'hôte.

🛡️ Limites intégrées

  • Exécution directe sans sous-commandes opérationnelles
  • Une cible exacte par exécution
  • Aucun support de caractères génériques ou de fichiers de cibles
  • User-Agent HTTP corrélé au contrat et marqueur de système de fichiers
  • Contrôle de version avant la validation active
  • Identifiants de nouveau compte obligatoires choisis par l'opérateur
  • Refus des comptes en double
  • Création de dépôt privé
  • Commande par défaut limitée à id
  • Fichiers de preuves privés en création exclusive
  • Masquage du mot de passe dans la sortie enfant capturée
  • Délai d'attente de 180 secondes pour le chemin de validation par défaut

✅ Tests locaux

Les tests exercent l'analyse et la construction du PoC sans effectuer de requêtes réseau :

root@kitploit:~
python3 -m unittest discover -s tests -v

🤝 Contributions responsables

Les améliorations qui rendent le validateur plus sûr, plus fiable ou plus facile à nettoyer sont les bienvenues. Ne soumettez pas de détails réels de cibles, d'identifiants, de preuves privées ou de charges utiles destructrices.

Pour les vulnérabilités de cet outil, suivez SECURITY.md.

📚 Références et crédits

  • Avis officiel Gitea : GHSA-rcr6-4jqh-j84m
  • Versions de Gitea
  • Rapporteur CVE crédité par l'avis en amont : NightRang3r
  • Validateur maintenu par le AfterDark Security Research Group

Conçu pour une validation de sécurité soigneuse et liée par contrat. 🫖🛡️

Télécharger l’outil