CVE-2026-84939
Reported by apache · Published September 10, 2026
freemarker is fixed in 2.3.35 and 2.3.34 (Maven Central)
Path traversal vulnerability in Apache FreeMarker template loading mechanism, if the attacker can specify an arbitrary malformed locale identifier to FreeMarker, and the localized lookup configuration setting is enabled (it's by default enabled). This issue affects Apache FreeMarker from 2.2.0 through 2.3.34. Users are recommended to upgrade to version 2.3.35. Disabling localized lookup in previous versions also mitigates this. Note that even in versions affected by this vulnerability, the files that can be loaded remain restricted by the TemplateLoader that FreeMarker is configured to use. In particular, FileTemplateLoader prevents attempts to traverse outside the baseDir specified in its constructor. Other TemplateLoader implementations may allow access outside their designated base directory, but they are still constrained by the underlying storage mechanism—for example, a loader wrapping a Java class loader can only access resources that the class loader can load, while one wrapping a web application context can only access resources available through that context.
Fixed versions
Upgrade to a fixed version or later. Language registries are listed first, then Linux distributions, then vendor products.
| Package | Ecosystem | Fixed in |
|---|---|---|
| org.freemarker:freemarker | Maven Central | 2.3.35, 2.3.34 |
| org.freemarker:freemarker-gae | Maven Central | 2.3.35, 2.3.34 |
| keycloak-26.7 | Chainguard | 26.7.4-r4 |
| keycloak-fips-26.6 | Chainguard | 26.6.7-r5 |
| keycloak-26.6 | Chainguard | 26.6.7-r3 |
| keycloak-26.6 | Wolfi | 26.6.7-r3 |
| keycloak-fips-26.7 | Chainguard | 26.7.4-r3 |
| freemarker | apache | 2.3.35 |
Risk scores
Affected products
| Vendor | Product | Versions |
|---|---|---|
| Apache Software Foundation | Apache FreeMarker | 2.2.0, 2.3.35 |
| Apache Software Foundation | Apache FreeMarker | 2.2.0, 2.3.35 |
| chainguard | keycloak-26.7 | 0 |
| chainguard | keycloak-fips-26.6 | 0 |
| chainguard | keycloak-26.6 | 0 |
| Maven | org.freemarker:freemarker | 2.2.0 |
| Apache Software Foundation | Apache FreeMarker | 2.3.35, 2.2.0 |
| Apache Software Foundation | Apache FreeMarker | 2.2.0, 2.3.35 |
| wolfi | keycloak-26.6 | 0 |
| chainguard | keycloak-fips-26.7 | 0 |
Timeline
- Sep 10, 2026 CVE Published
- Sep 10, 2026 EPSS Score (21 in total, the first dated here)
- Sep 10, 2026 CVE Updated
- Oct 16, 2026 Distribution Patch (2 in total, the first dated here)
- Oct 16, 2026 Security Advisory (3 in total, the first dated here)
Query this with the API
The same record, from the CLI:
vulnetix vdb vuln CVE-2026-84939
vulnetix vdb fixes CVE-2026-84939
Or with curl, using the org id and key from your account page:
curl -s -H "Authorization: ApiKey ${VULNETIX_ORG_ID}:${VULNETIX_API_KEY}" \
"https://api.vdb.vulnetix.com/v2/vuln/CVE-2026-84939/fixes/registry"
The Community plan is free and allows 50 queries a day. Get a free API key · API quickstart
References
- vendor-advisory
- https://nvd.nist.gov/vuln/detail/CVE-2026-84939 advisory
- https://github.com/advisories/GHSA-27j2-h3m2-8237 advisory
- https://github.com/apache/freemarker/commit/83953d9a9fa5a7c1fce3e39ff57182c19a34b5eb patch
- https://github.com/apache/freemarker/releases/tag/v2.3.35 url
- http://www.openwall.com/lists/oss-security/2026/09/08/2 url