{"id":"CVE-2025-66916","details":"The snailjob component in RuoYi-Vue-Plus versions 5.5.1 and earlier, interface /snail-job/workflow/check-node-expression can execute QLExpress expressions, but it does not filter user input, allowing attackers to use the File class to perform arbitrary file reading and writing.","modified":"2026-08-12T03:51:32.354049846Z","published":"2026-01-08T00:00:00Z","database_specific":{"cna_assigner":"mitre","osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/66xxx/CVE-2025-66916.json"},"references":[{"type":"WEB","url":"https://gist.github.com/Catherines77/e3f06b9c4cc6298579e858088a243c3d"},{"type":"WEB","url":"https://gitee.com/dromara/RuoYi-Vue-Plus"},{"type":"WEB","url":"https://github.com/Catherines77/code-au/blob/main/ruoyi-vue-plus/QLExpress.md"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/66xxx/CVE-2025-66916.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2025-66916"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/dromara/ruoyi-vue-plus","events":[{"introduced":"0"},{"last_affected":"b58085fde121109d40d019402e84cc0dbeabdf67"}],"database_specific":{"cpe":"cpe:2.3:a:dromara:ruoyi-vue-plus:*:*:*:*:*:*:*:*","extracted_events":[{"introduced":"0"},{"last_affected":"5.5.1"}],"source":"CPE_RANGE"}}],"versions":["v5.5.1","v5.5.0","v5.4.2","v5.4.1","v5.4.0","v5.3.1","v5.3.0","v5.2.3","v5.2.2","v5.2.1","v5.1.0","v5.0.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2025-66916.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:L"}]}