openEQUELLA < 2026.1.0 Authenticated Stored SSTI via FreemarkerPortletRenderer
Impact
openEQUELLA before version 2026.1.0 has an authenticated stored server-side template injection vulnerability, allowing non-guest users to inject malicious FreeMarker payloads. The vulnerability occurs in FreemarkerPortletRenderer.renderHtml() and may execute in the application server process context.
Summarized by @cf/meta/llama-3.3-70b-instruct-fp8-fast. Verify details against the original sources.What to do
Deployments that can't upgrade immediately should firewall or VPN the /invoker/* endpoints and restrict them to only those who genuinely need access.
Affected packages
Affected products
Vendor version evidence. Product records are separate from automatic dependency matching.
openequella · VulnCheck
openEQUELLA
2 ranges
openequella · VulnCheck
openEQUELLA
Package identity
pkg:github/openequella/openEQUELLAIdentity supplied by VulnCheck. Version matching requires compatible range evidence.
Compare with this publisher’s ranges. This does not inspect your installation.
affected
0 → before 2026.1.0
semver versions
unaffected
2026.1.0
semver versions
Other versions: unaffected
Original source description
openEQUELLA before 2026.1.0 contains an authenticated stored server-side template injection vulnerability in FreemarkerPortletRenderer.renderHtml() that allows any authenticated non-guest user to achieve remote code execution by storing a malicious FreeMarker payload through a POST request to the RemotePortletService invoker endpoint. The markup field from stored portlet configuration is passed directly to custFactory.createResult() without a TemplateClassResolver restriction or FreeMarker sandboxing in BasicConfiguration, leaving built-ins such as ?new and freemarker.template.utility.Execute available, causing the payload to execute in the application server process context when any user renders a dashboard containing the affected portlet.
Inside the record
Evidence available
Describes the evidence in this view, not whether the product is safe.
Original records
CVE-2026-94109View the latest unmodified CVE JSON from the official source. It may be newer than this imported page.
cve.new JSON →Contributing organizations · 2
Assigning organization
Additional data publisher
What changed
Follow changesLarge field values are marked as truncated previews. Original source snapshots remain retained.