
Эксплойт PoC для CVE-2025-69600, внедрение команд в RayVentory Scan Engine rvia, демонстрирующий удаленное выполнение кода через опции getconfig, upload, inventory и oracle.
Внедрение команд в rvia от Raynet позволяет злоумышленникам выполнять команды через опции getconfig, upload, inventory и oracle.
Проверка выполняется только (если настроена через свойство конфигурации ForbiddenCurlChars в /etc/rvia_configuration) при получении URL из файла конфигурации /opt/rvia/rvia.cfg, а не когда URL передаётся напрямую опциям getconfig или upload.
/opt/rvia/rvia getconfig \;command\;

Под капотом сконструированная команда выглядит следующим образом:

Через опцию oracle также возможно внедрение команд.
Эта опция может завершиться ошибкой, если среда Java не найдена
rvia(под капотом выполняется вызов командыfind) и опцияjavaPathsв/opt/rvia/rvia.cfgне задана
В данном случае /opt/rvia/rvia.cfg определён с опцией javaPaths=/usr/lib/jvm/java-21-openjdk-amd64/.
/opt/rvia/rvia oracle \;command\;

Сконструированная команда выглядит так:

То же самое происходит в файле конфигурации (/opt/rvia/rvia.cfg) с опциями oracleUser и oraclePass.

Вызов под капотом следующий:

То же самое относится к опции upload путём указания команды для выполнения после указания URL. В этом случае требуется предварительное экранирование двойных кавычек, а также символ решётки в конце команды, чтобы игнорировать последующие аргументы.
Эта опция может завершиться ошибкой, если в каталоге
/opt/rvia/results(по умолчанию) нет файлов инвентаризации для загрузки, которые создаются опцией inventory
/opt/rvia/rvia upload \"\;command\;#

Из ltrace мы видим следующее:

Наконец, опция inventory также уязвима.
/opt/rvia/rvia inventory \;command\;

Сконструированная команда под капотом:
