
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-53964 is a server-side template injection (SSTI) vulnerability in the document-merge-service Python package that enables remote code execution (RCE) by authenticated attackers. It affects all versions prior to 9.1.0 and is limited to XLSX template processing, where the xltpl library uses a non-sandboxed Jinja2 environment. The vulnerability was first published on June 11, 2026, and added to the GitHub Advisory Database on August 19, 2026. It carries a CVSS v3.1 base score of 7.2 (High) (GitHub Advisory).
The root cause is classified as CWE-1336 (Improper Neutralization of Special Elements Used in a Template Engine). When processing XLSX templates, the xltpl library evaluates Jinja2 template expressions in a non-sandboxed environment, meaning user-supplied template content is executed without restriction in the server's Python runtime. An authenticated attacker with sufficient privileges to upload or submit XLSX templates can embed malicious Jinja2 expressions (e.g., {{ ''.__class__.__mro__[1].__subclasses__() }}) that are evaluated server-side, resulting in arbitrary code execution as the document-merge-server user (UID 901). The fix in v9.1.0 replaces the upstream xltpl library with a maintained fork that addresses the sandboxing issue (GitHub Advisory, v9.1.0 Release).
Successful exploitation grants an attacker arbitrary code execution within the container as the document-merge-server user (UID 901), providing considerable control over the container environment. This includes full confidentiality, integrity, and availability impact — an attacker can read sensitive files, modify data, or disrupt service operation. Depending on the container's configuration and network posture, this could serve as a foothold for lateral movement within the broader infrastructure (GitHub Advisory).
Exploitation requires the attacker to be authenticated with privileges sufficient to upload or use XLSX templates within the document-merge-service. No public exploit code or in-the-wild exploitation has been reported as of the advisory publication date. The CVE status is listed as "Reserved" and no EPSS score or CISA KEV catalog entry is currently available (GitHub Advisory).
{{ ''.__class__.__mro__[1].__subclasses__()[<index>]('id', shell=True, stdout=-1).communicate()[0] }} or a reverse shell payload.document-merge-server user (UID 901) within the container, enabling command execution, data exfiltration, or establishment of a reverse shell for further access (GitHub Advisory, HackTricks Jinja2 SSTI).xltpl library during XLSX template processing; unusual output in application logs related to template rendering (e.g., Python introspection results or OS command output embedded in rendered documents)./bin/sh, bash, curl, wget, python) with the UID 901.Upgrade document-merge-service to version 9.1.0 or later, which replaces the vulnerable xltpl dependency with a maintained fork that uses a sandboxed Jinja2 environment (v9.1.0 Release). As an immediate workaround for organizations unable to upgrade, disable the upload and usage of XLSX templates entirely within the service configuration (GitHub Advisory). Additionally, apply the principle of least privilege to restrict which users can upload templates, and consider network-level controls to limit outbound connections from the document-merge-service container.
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."