{"id":"CVE-2026-46652","aliases":[],"cve":{"records":[{"id":"CVE-2026-46652","source":"GitHub_M","state":"PUBLISHED","reasons":[],"replacements":[],"disputed":false,"unsupportedWhenAssigned":false,"reserved":"2026-05-15T20:11:54.585Z","published":"2026-10-23T14:15:46.415Z","modified":"2026-10-30T15:10:02.376Z"}],"publishers":[{"name":"GitHub_M","role":"CNA","organizationId":"a0819718-46f1-4df5-94e2-005712e83aaa","modified":"2026-10-23T14:15:46.415Z"},{"name":"CISA-ADP","role":"ADP","organizationId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","modified":"2026-10-30T15:10:02.376Z"}],"references":[{"url":"https://github.com/intranda/goobi-viewer-core/security/advisories/GHSA-r386-2frm-w3v6","tags":["x_refsource_CONFIRM"],"source":"GitHub_M"},{"url":"https://github.com/intranda/goobi-viewer-core/commit/5281245708447ae3419cb42492fbb8af731a2ce5","tags":["x_refsource_MISC"],"source":"GitHub_M"},{"url":"https://github.com/intranda/goobi-viewer-core/releases/tag/v26.05","tags":["x_refsource_MISC"],"source":"GitHub_M"}],"weaknesses":[{"id":"CWE-22","description":"CWE-22: Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')","source":"GitHub_M"},{"id":"CWE-73","description":"CWE-73: External Control of File Name or Path","source":"GitHub_M"}],"applicability":[],"prioritization":[{"source":"CISA-ADP","type":"SSVC","role":"CISA Coordinator","timestamp":"2026-10-30T15:09:50.256649Z","decisions":[{"name":"Exploitation","value":"none"},{"name":"Automatable","value":"yes"},{"name":"Technical Impact","value":"total"}]}]},"title":"Path traversal via HTTP `Content-Disposition` header in ExternalFilesDownloader enables remote code execution in Goobi viewer","titleSource":"GitHub_M","descriptionSource":"GitHub_M","description":"The Goobi viewer is a web application that allows digitised material to be displayed in a web browser. From version 24.03 to before version 26.05, ExternalFilesDownloader.getFilename() extracts the destination filename from a server-supplied Content-Disposition response header and passes it directly to Path.resolve() without stripping directory components. This allows for a malicious HTTP server that the viewer fetches from to supply an absolute path or ../ traversal sequences as the filename, writing attacker-controlled content to an arbitrary path writable by the Tomcat process. When targeting the deployed web-application directory, this yields remote code execution as the tomcat OS user. This issue has been patched in version 26.05.","score":9.8,"severity":"critical","published":"2026-10-23T14:15:46.415Z","modified":"2026-10-30T15:10:02.376Z","withdrawn":false,"knownExploited":false,"affected":[],"products":[{"vendor":"intranda","name":"goobi-viewer-core","platforms":[],"versions":[{"version":">= 24.03, < 26.05","status":"affected"}],"cpes":[],"source":"GitHub_M","url":"https://www.cve.org/CVERecord?id=CVE-2026-46652"}],"remediation":[],"references":["https://github.com/intranda/goobi-viewer-core/security/advisories/GHSA-r386-2frm-w3v6","https://github.com/intranda/goobi-viewer-core/commit/5281245708447ae3419cb42492fbb8af731a2ce5","https://github.com/intranda/goobi-viewer-core/releases/tag/v26.05"],"sources":[{"name":"CVE","id":"CVE-2026-46652","modified":"2026-10-30T15:10:02.376Z","url":"https://www.cve.org/CVERecord?id=CVE-2026-46652"}],"assessments":[{"source":"GitHub_M","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","score":9.8}],"sourceAffected":[],"observedAt":"2026-10-30T16:40:13.362Z","kev":{"status":"not-listed","checkedAt":"2026-10-31T10:20:31.211Z"},"coverage":[{"source":"NVD","status":"available","checkedAt":"2026-10-30T16:50:33.593Z","attemptedAt":"2026-10-30T16:50:33.593Z"},{"source":"GHSA","status":"no-result","checkedAt":"2026-10-30T16:50:34.754Z","attemptedAt":"2026-10-30T16:50:34.754Z"},{"source":"EUVD","status":"available","checkedAt":"2026-10-30T16:50:34.754Z","attemptedAt":"2026-10-30T16:50:34.754Z"},{"source":"EPSS","status":"available","checkedAt":"2026-10-30T16:50:33.593Z","attemptedAt":"2026-10-30T16:50:33.593Z"}],"evidence":[{"source":"NVD","id":"CVE-2026-46652","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-46652","modified":"2026-10-30T16:17:56.300","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","checkedAt":"2026-10-30T16:50:33.593Z"},{"source":"FIRST EPSS","id":"CVE-2026-46652","url":"https://www.first.org/epss/","probability":0.00703,"percentile":0.53259,"date":"2026-10-30","checkedAt":"2026-10-30T16:50:33.593Z"},{"source":"ENISA EUVD","id":"EUVD-2026-109060","url":"https://euvd.enisa.europa.eu/vulnerability/EUVD-2026-109060","modified":"Oct 23, 2026, 2:15:46 PM","score":9.8,"vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","checkedAt":"2026-10-30T16:50:34.754Z"}],"aiSummary":null}