CVE-2026-46439
Received Received - Intake

Server-Side Template Injection in compliance-trestle

Vulnerability report for CVE-2026-46439, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-08-14

Last updated on: 2026-08-14

Assigner: GitHub, Inc.

Description

compliance-trestle is a tooling platform for managing compliance as code. Versions prior to 3.12.2 and 4.0.3 have a Server-Side Template Injection (SSTI) vulnerability exists in the `trestle author jinja` command. The command recursively evaluates rendered templates, allowing an attacker to achieve arbitrary command execution with privileges of the running process by injecting malicious payloads into data fields (such as SSP documents or Lookup Tables). The vulnerability does not require attacker control of the template itself. Only attacker-controlled input data rendered into a trusted template is required. This distinction is critical: the template author may only intend to render plain text (e.g., `Title: {{ ssp.metadata.title }}`), but because of the recursive parsing, the data field itself becomes executable. The vulnerability is caused by recursive re-compilation and re-rendering of already-rendered output. Versions 3.12.3 and 4.0.3 patch the issue.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-08-14
Last Modified
2026-08-14
Generated
2026-08-14
AI Q&A
2026-08-14
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 3 associated CPEs
Vendor Product Version / Range
oscal-compass compliance-trestle to 3.12.2|end_excluding=4.0.3 (exc)
oscal-compass compliance-trestle From 3.12.2 (inc)
oscal-compass compliance-trestle From 4.0.3 (inc)

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-94 The product constructs all or part of a code segment using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the syntax or behavior of the intended code segment.
CWE-1336 The product uses a template engine to insert or process externally-influenced input, but it does not neutralize or incorrectly neutralizes special elements or syntax that can be interpreted as template expressions or other code directives when processed by the engine.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This is a Server-Side Template Injection (SSTI) vulnerability in compliance-trestle versions before 3.12.2 and 4.0.3. The trestle author jinja command recursively evaluates rendered templates, allowing attackers to inject malicious payloads into data fields like SSP documents or Lookup Tables. Even if the template itself is trusted, attacker-controlled input data can be executed as code, leading to arbitrary command execution with the privileges of the running process.

Detection Guidance

To detect this vulnerability, check the version of compliance-trestle installed on your system. Run: pip show compliance-trestle. If the version is below 3.12.2 or 4.0.3, the system is vulnerable. Additionally, review any SSP documents or Lookup Tables processed by the trestle author jinja command for suspicious payloads like {{ namespace.__init__.__globals__.os.system('command') }}.

Impact Analysis

If you use vulnerable versions of compliance-trestle, an attacker could embed malicious payloads in data fields processed by the tool. This could allow them to execute arbitrary commands on your system with the same privileges as the running process. This is especially risky in automated pipelines where compliance-trestle processes untrusted data from third parties.

Mitigation Strategies

Immediately upgrade compliance-trestle to version 3.12.2 or 4.0.3 or later. Avoid processing untrusted SSP documents or Lookup Tables with the trestle author jinja command until patched. If immediate upgrade is not possible, restrict access to the trestle author jinja command and validate all input data for malicious Jinja payloads.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-46439. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart