CVE-2026-57171

Source
https://cve.org/CVERecord?id=CVE-2026-57171
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-57171.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-57171
Related
Published
2026-08-25T23:39:16.186Z
Modified
2026-08-28T03:30:54.784217104Z
Severity
  • 7.7 (High) CVSS_V3 - CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H CVSS Calculator
Summary
Trestle is vulnerable to arbitrary file write via path traversal in author generate commands (Incomplete fix of CVE-2026-46345)
Details

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, the catalog-generate, profile-generate, and ssp-generate author commands write generated Markdown to an attacker-influenced output path without path-traversal validation, allowing arbitrary file write outside the Trestle workspace. These commands join the user-supplied output argument onto the Trestle root and write to the result, but guard it only with an isdirectorynameallowed() task-name-collision check rather than the PathSecurityValidator.validatelocal_path() guard used by the jinja command, so an absolute path or one containing traversal sequences escapes the workspace and writes files under an attacker-chosen location as the invoking process owner. The security boundary is crossed when a trusted CI job, shared service, or wrapper derives the output argument from repository-controlled, tenant-controlled, or otherwise untrusted data while expecting output to stay inside the workspace. When --force-overwrite is used, the selected output directory is first recursively deleted, extending the primitive to destruction of an attacker-chosen directory tree and enabling indirect code execution by overwriting files a pipeline later runs. This issue is fixed in versions 3.12.4 and 4.1.0.

Database specific
{
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/57xxx/CVE-2026-57171.json",
    "cwe_ids": [
        "CWE-22"
    ],
    "cna_assigner": "GitHub_M"
}
References

Affected packages

Git / github.com/oscal-compass/compliance-trestle

Affected ranges

Type
GIT
Repo
https://github.com/oscal-compass/compliance-trestle
Events
Introduced
0 Unknown introduced commit / All previous commits are affected
Fixed
Introduced
Fixed
Database specific
Show details
{
    "source": "AFFECTED_FIELD",
    "extracted_events": [
        {
            "introduced": "0"
        },
        {
            "fixed": "3.12.4"
        },
        {
            "introduced": "4.0.0"
        },
        {
            "fixed": "4.1.0"
        }
    ]
}

Affected versions

v0.*
v0.0.2
v0.0.3
v0.1.0
v0.1.1
v0.10.0
v0.11.0
v0.12.0
v0.13.0
v0.13.1
v0.14.0
v0.14.1
v0.14.2
v0.14.3
v0.14.4
v0.15.0
v0.15.1
v0.16.0
v0.17.0
v0.18.0
v0.18.1
v0.19.0
v0.2.0
v0.2.1
v0.2.2
v0.20.0
v0.21.0
v0.22.0
v0.22.1
v0.23.0
v0.24.0
v0.25.0
v0.25.1
v0.26.0
v0.27.0
v0.27.1
v0.27.2
v0.28.0
v0.28.1
v0.29.0
v0.3.0
v0.30.0
v0.31.0
v0.32.0
v0.32.1
v0.33.0
v0.34.0
v0.35.0
v0.36.0
v0.37.0
v0.4.0
v0.6.0
v0.6.1
v0.6.2
v0.7.0
v0.7.1
v0.7.2
v0.8.0
v0.8.1
v0.9.0
v1.*
v1.0.0
v1.0.1
v1.0.2
v1.1.0
v1.2.0
v2.*
v2.0.0
v2.1.0
v2.1.1
v2.2.0
v2.2.1
v2.3.0
v2.3.1
v2.4.0
v2.5.0
v2.5.1
v2.6.0
v2.6.1
v3.*
v3.0.1
v3.1.0
v3.10.0
v3.10.1
v3.10.2
v3.10.3
v3.10.4
v3.11.0
v3.12.0
v3.12.1
v3.12.2
v3.12.3
v3.2.0
v3.3.0
v3.4.0
v3.5.0
v3.6.0
v3.7.0
v3.8.0
v3.8.1
v3.9.0
v3.9.1
v3.9.2
v3.9.3
v4.*
v4.0.0
v4.0.1
v4.0.2
v4.0.3

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-57171.json"