CVE-2026-94109: openEQUELLA stored server-side template injection in FreeMarker

CVE-2026-94109 · Severity: high · CVSS 8 · Published 2026-09-20

openEQUELLA is a digital repository system used by universities to store and manage media content and library materials. An authenticated user can inject malicious FreeMarker template code through portlet configuration that executes with server privileges when any user views a dashboard, leading to complete system compromise and remote code execution.

Technologies: openEQUELLA. Vendors: openEQUELLA.

Quick answers

Is CVE-2026-94109 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-94109 being exploited in the wild.
How severe is CVE-2026-94109?
High severity, with a CVSS score of 8, published 20 September 2026.
Which products and versions are affected?
openEQUELLA before 2026.1.0.
Is there a fix for CVE-2026-94109?
A patch was published on 2026-07-23: Fix committed to lock down FreeMarker configuration Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-94109 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-94109?
Check whether you run openEQUELLA at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

Technical details

A stored server-side template injection vulnerability exists in FreemarkerPortletRenderer.renderHtml() where user-supplied markup from portlet configuration is passed directly to FreeMarker's template engine without TemplateClassResolver restrictions or sandboxing. Any authenticated user can inject FreeMarker payloads via POST requests to RemotePortletService, enabling access to dangerous built-ins like ?new and freemarker.template.utility.Execute that execute in the application server process context.

Affected products

  • openEQUELLA openEQUELLA before 2026.1.0

Timeline

  • 2026-09-20: disclosed
  • 2026-07-23: patched: Fix committed to lock down FreeMarker configuration

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.