
Proof-of-concept exploit per CVE-2025-69600 iniezione di comandi in RayVentory Scan Engine rvia, che dimostra l'esecuzione di codice in remoto tramite le opzioni getconfig, upload, inventory e oracle.
Iniezione di comandi in rvia di Raynet consente agli avversari di eseguire comandi tramite le opzioni getconfig, upload, inventory e oracle.
La convalida viene eseguita solo (se configurata tramite la proprietà di configurazione ForbiddenCurlChars in /etc/rvia_configuration) quando si ottiene l'URL dal file di configurazione /opt/rvia/rvia.cfg e non quando l'URL viene passato direttamente alle opzioni getconfig o upload.
/opt/rvia/rvia getconfig \;command\;

Sotto il cofano, il comando costruito è il seguente:

Tramite l'opzione oracle è anche possibile iniettare comandi.
Questa opzione potrebbe fallire se un ambiente Java non viene trovato da
rvia(sotto il cofano viene effettuata una chiamata al comandofind) e l'opzionejavaPathsin/opt/rvia/rvia.cfgnon è impostata
In questo caso, /opt/rvia/rvia.cfg è definito con l'opzione javaPaths=/usr/lib/jvm/java-21-openjdk-amd64/.
/opt/rvia/rvia oracle \;command\;

Il comando costruito è simile a questo:

Lo stesso avviene nel file di configurazione (/opt/rvia/rvia.cfg) con le opzioni oracleUser e oraclePass.

La chiamata sottostante è la seguente:

Lo stesso vale per l'opzione upload specificando un comando da eseguire dopo l'URL. In questo caso è necessario un precedente escape dei doppi apici e anche un cancelletto alla fine del comando per ignorare gli argomenti successivi.
Questa opzione potrebbe fallire se non ci sono file di inventario nella directory
/opt/rvia/results(per default) da caricare, che vengono creati dall'opzione inventory
/opt/rvia/rvia upload \"\;command\;#

Da ltrace vediamo quanto segue:

Infine, anche l'opzione inventory è vulnerabile.
/opt/rvia/rvia inventory \;command\;

Il comando costruito sotto il cofano:
