{"id":"CVE-2026-69101","summary":"Datavane TIS v5.0.0 XXE Injection via doEditWorkflow Endpoint","details":"Datavane TIS v5.0.0 contains an XML external entity (XXE) injection vulnerability that allows authenticated attackers to perform server-side request forgery and out-of-band file exfiltration by supplying a crafted taskScript payload to the doEditWorkflow endpoint, which processes XML through an unhardened DocumentBuilderFactory with external entities and DTD loading enabled. Attackers can send a malicious XML document containing an external DTD reference to the edit_workflow action, causing the server to issue outbound HTTP requests to attacker-controlled infrastructure and exfiltrate local files readable by the TIS process user, including configuration files and Derby database credentials.","modified":"2026-08-17T04:19:20.585241Z","published":"2026-08-14T14:33:17.021Z","database_specific":{"cna_assigner":"VulnCheck","cwe_ids":["CWE-611"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/69xxx/CVE-2026-69101.json"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/69xxx/CVE-2026-69101.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-69101"},{"type":"ADVISORY","url":"https://www.vulncheck.com/advisories/datavane-tis-xxe-injection-via-doeditworkflow-endpoint"},{"type":"REPORT","url":"https://github.com/datavane/tis/issues/496"},{"type":"FIX","url":"https://github.com/datavane/tis/commit/2a84a1b84218a303e3e0a4823023363d5a7abfa1"},{"type":"PACKAGE","url":"https://github.com/datavane/tis"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/datavane/tis","events":[{"introduced":"0"},{"fixed":"2a84a1b84218a303e3e0a4823023363d5a7abfa1"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"last_affected":"5.0.0"}],"source":["AFFECTED_FIELD","REFERENCES"]}}],"versions":["v5.0.0","v4.3.0","v4.2.1","v4.2.0","v4.1.0","V4.0.1","v4.0.0","v4.0.0-rc1","v3.8.0","v3.7.2","v3.7.1","v3.6.0","v3.6.0-alpha","v3.4.0","v3.3.0","v3.2.0","v3.0.0","v2.3.0","v2.2.0","v2.1.0"],"database_specific":{"vanir_signatures":[{"id":"CVE-2026-69101-0a8952f4","signature_type":"Function","signature_version":"v1","source":"https://github.com/datavane/tis/commit/2a84a1b84218a303e3e0a4823023363d5a7abfa1","target":{"file":"tis-console/src/main/java/com/qlangtech/tis/offline/module/manager/impl/OfflineManager.java","function":"isXmlValid"},"deprecated":false,"digest":{"function_hash":"97485357926875012260961910620797594607","length":288}},{"source":"https://github.com/datavane/tis/commit/2a84a1b84218a303e3e0a4823023363d5a7abfa1","target":{"file":"tis-console/src/main/java/com/qlangtech/tis/offline/module/manager/impl/OfflineManager.java"},"deprecated":false,"digest":{"line_hashes":["189970755884820511360391774665296593021","154413178355512938508990248916321269337","327966571967200887144065031059158498898","225178810699813007435921305107727602342"],"threshold":0.9},"id":"CVE-2026-69101-1950a82a","signature_type":"Line","signature_version":"v1"},{"deprecated":false,"digest":{"threshold":0.9,"line_hashes":["61535552404523319227198141464420861966","211452833957736226429708889212314102868","264956324163615270712467470307567159498"]},"id":"CVE-2026-69101-8213596f","signature_type":"Line","signature_version":"v1","source":"https://github.com/datavane/tis/commit/2a84a1b84218a303e3e0a4823023363d5a7abfa1","target":{"file":"tis-console/src/main/java/com/qlangtech/tis/offline/module/action/OfflineDatasourceAction.java"}}],"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-69101.json","vanir_signatures_modified":"2026-08-17T04:19:20Z"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:H/SI:N/SA:N"}]}