CVE-2026-54757
CVE-2026-54757 · Trestle has Server-Side Template Injection (SSTI) via Recursive Template Re-evaluation of Untrusted Data
This page contains facts from public vulnerability sources. Check the original advisory before updating.
Compliance-trestle (Trestle) is a Python SDK and command-line tool for managing OSCAL compliance documents. In versions before 3.12.4 and versions 4.0.0 through 4.0.3, Trestle is vulnerable to server-side template injection that can lead to remote code execution. This occurs because the MDCleanInclude and MDSectionInclude Jinja2 tags re-parse untrusted Markdown content as template source code using a non-sandboxed jinja2.Environment. An attacker who controls content that Trestle renders, such as a crafted workspace Markdown file, a third-party SSP document, or a YAML lookup-table value, can inject a Jinja2 expression that traverses Python object internals to execute arbitrary operating system commands in the context of the Trestle process. This issue is fixed in versions 3.12.4 and 4.1.0.
CVSS 7.8 · High · EPSS 0.4% · Fix available
- Published
- Updated
Stack: python
Affected products and versions
compliance-trestle
- Versions
- < 3.12.4: Affected
- >= 4.0.0, < 4.1.0: Affected
No fix published
compliance-trestle PyPI
- Versions
- 0.0.2
- 0.0.3
- 0.1.0
- 0.1.1
- 0.10.0
- 0.11.0
- 0.12.0
- 0.13.0
- 0.13.1
- 0.14.0
- 0.14.1
- 0.14.2
- 0.14.3
- 0.14.4
- 0.15.0
- 0.15.1
- 0.16.0
- 0.17.0
- 0.18.0
- 0.18.1
- 0.19.0
- 0.2.0
- 0.2.1
- 0.2.2
- 0.20.0
- 0.21.0
- 0.22.0
- 0.22.1
- 0.23.0
- 0.24.0
- 0.25.0
- 0.25.1
- 0.26.0
- 0.27.0
- 0.27.1
- 0.27.2
- 0.28.0
- 0.28.1
- 0.29.0
- 0.3.0
- 0.30.0
- 0.31.0
- 0.32.0
- 0.32.1
- 0.33.0
- 0.34.0
- 0.35.0
- 0.36.0
- 0.37.0
- 0.4.0
- 0.5.0
- 0.6.0
- 0.6.1
- 0.6.2
- 0.7.0
- 0.7.1
- 0.7.2
- 0.8.0
- 0.8.1
- 0.9.0
- 1.0.0rc0
- 1.0.1
- 1.0.2
- 1.1.0
- 1.2.0
- 2.0.0
- 2.1.0
- 2.1.1
- 2.2.0
- 2.2.1
- 2.3.0
- 2.3.1
- 2.4.0
- 2.5.0
- 2.5.1
- 2.6.0
- 2.6.1
- 3.0.1
- 3.1.0
- 3.10.2
- 3.10.3
- 3.10.4
- 3.11.0
- 3.12.0
- 3.12.1
- 3.12.2
- 3.12.3
- 3.2.0
- 3.3.0
- 3.4.0
- 3.5.0
- 3.6.0
- 3.7.0
- 3.8.0
- 3.8.1
- 3.9.0
- 3.9.1
- 3.9.2
- 3.9.3
- Affected ranges
- ECOSYSTEM: < 3.12.4
Update to 3.12.4
compliance-trestle PyPI
- Versions
- 4.0.0
- 4.0.1
- 4.0.2
- 4.0.3
- Affected ranges
- ECOSYSTEM: ≥ 4.0.0, < 4.1.0
Update to 4.1.0
compliance-trestle PyPI
- Versions
- 0.0.2
- 0.0.3
- 0.1.0
- 0.1.1
- 0.10.0
- 0.11.0
- 0.12.0
- 0.13.0
- 0.13.1
- 0.14.0
- 0.14.1
- 0.14.2
- 0.14.3
- 0.14.4
- 0.15.0
- 0.15.1
- 0.16.0
- 0.17.0
- 0.18.0
- 0.18.1
- 0.19.0
- 0.2.0
- 0.2.1
- 0.2.2
- 0.20.0
- 0.21.0
- 0.22.0
- 0.22.1
- 0.23.0
- 0.24.0
- 0.25.0
- 0.25.1
- 0.26.0
- 0.27.0
- 0.27.1
- 0.27.2
- 0.28.0
- 0.28.1
- 0.29.0
- 0.3.0
- 0.30.0
- 0.31.0
- 0.32.0
- 0.32.1
- 0.33.0
- 0.34.0
- 0.35.0
- 0.36.0
- 0.37.0
- 0.4.0
- 0.5.0
- 0.6.0
- 0.6.1
- 0.6.2
- 0.7.0
- 0.7.1
- 0.7.2
- 0.8.0
- 0.8.1
- 0.9.0
- 1.0.0rc0
- 1.0.1
- 1.0.2
- 1.1.0
- 1.2.0
- 2.0.0
- 2.1.0
- 2.1.1
- 2.2.0
- 2.2.1
- 2.3.0
- 2.3.1
- 2.4.0
- 2.5.0
- 2.5.1
- 2.6.0
- 2.6.1
- 3.0.1
- 3.1.0
- 3.10.2
- 3.10.3
- 3.10.4
- 3.11.0
- 3.12.0
- 3.12.1
- 3.12.2
- 3.12.3
- 3.2.0
- 3.3.0
- 3.4.0
- 3.5.0
- 3.6.0
- 3.7.0
- 3.8.0
- 3.8.1
- 3.9.0
- 3.9.1
- 3.9.2
- 3.9.3
- 4.0.0
- 4.0.1
- 4.0.2
- 4.0.3
- Affected ranges
- ECOSYSTEM: < 3.12.4 ∪ ≥ 4.0.0, < 4.1.0
Update to 3.12.4; Update to 4.1.0
Original sources
- https://github.com/oscal-compass/compliance-trestle/security/advisories/GHSA-jw39-3688-r4rx
- https://github.com/oscal-compass/compliance-trestle/commit/0f82d19bd42f9cc0f1b3acd7fc3f6dafe3b6ae10
- https://github.com/oscal-compass/compliance-trestle/commit/5335ff873a2a68eb7de43df029bea09cadff22fd
- https://nvd.nist.gov/vuln/detail/CVE-2026-54757