{"id":"CVE-2026-103088","published":"2026-09-30T02:16:57.203","lastModified":"2026-09-30T02:16:57.340","description":"Handlebars.java before 4.5.5 allows directory traversal. In handlebars-springmvc 4.5.3 and 4.5.4, the path-containment fix for CVE-2026-63490 validates template locations as raw percent-encoded strings, whereas the template file is opened through a URL handler that percent-decodes the path. In a Spring MVC application with a file: template prefix and a request-derived view name, a percent-encoded traversal such as %2e%2e/ bypasses both the view-resolver check and the loader-side containment and reads files outside the configured template base directory.","cvssScore":7.5,"cvssSeverity":"HIGH","cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","cwes":["CWE-24"],"vendors":[],"products":[],"references":[{"url":"https://github.com/jknack/handlebars.java/commit/f6ae3979917d05bef07f00befb4013ef00503660","tags":[]},{"url":"https://github.com/jknack/handlebars.java/releases/tag/v4.5.5","tags":[]},{"url":"https://github.com/jknack/handlebars.java/security/advisories/GHSA-pvrx-3g7m-fpgv","tags":[]}],"exploitRefs":[{"url":"https://github.com/jknack/handlebars.java/commit/f6ae3979917d05bef07f00befb4013ef00503660","tags":[]},{"url":"https://github.com/jknack/handlebars.java/releases/tag/v4.5.5","tags":[]},{"url":"https://github.com/jknack/handlebars.java/security/advisories/GHSA-pvrx-3g7m-fpgv","tags":[]}],"hasPoc":true,"ai":null}