Quick answers
- Is CVE-2026-125121 exploited in the wild?
- No. Junglewise Threat Intelligence has no report of CVE-2026-125121 being exploited in the wild.
- How severe is CVE-2026-125121?
- Medium severity, with a CVSS score of 4, published 10 November 2026.
- Which products and versions are affected?
- compose-lint (PyPI) >= 0.31.0, < 0.32.0, ECOSYSTEM:introduced=0.31.0,fixed=0.32.0; Tmatens Compose-Lint 0.31.0 and earlier.
- Is there a fix for CVE-2026-125121?
- Yes. compose-lint (PyPI): upgrade to 0.32.0 or later. Until then: Use --format json or --format sarif instead of the default text report when linting untrusted pull requests. Alternatively, wrap the compose-lint step with GitHub Actions stop-commands tokens to disable workflow command processing during output.</anigation> <parameter name="timeline">[{"kind":"disclosed","at":"2026-09-27","note":"CVE-2026-123369 published to GitHub Advisory Database"},{"kind":"patched","at":"2026-09-27","note":"Fixed in version 0.31.0"},{"kind":"other","at":"2026-11-09","note":"CVE-2026-125121 assigned (separate reporting of related flaw)"},{"kind":"advisory","at":"2026-11-10","note":"Published to NVD"}] Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
- How is CVE-2026-125121 attacked?
- It is attacked over the network, in a software library.
- Am I affected by CVE-2026-125121?
- Check whether you run compose-lint (PyPI) or Tmatens Compose-Lint at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.
How to fix
- compose-lint (PyPI): upgrade to 0.32.0 or later
pip install "compose-lint>=0.32.0"
Use --format json or --format sarif instead of the default text report when linting untrusted pull requests. Alternatively, wrap the compose-lint step with GitHub Actions stop-commands tokens to disable workflow command processing during output.</anigation> <parameter name="timeline">[{"kind":"disclosed","at":"2026-09-27","note":"CVE-2026-123369 published to GitHub Advisory Database"},{"kind":"patched","at":"2026-09-27","note":"Fixed in version 0.31.0"},{"kind":"other","at":"2026-11-09","note":"CVE-2026-125121 assigned (separate reporting of related flaw)"},{"kind":"advisory","at":"2026-11-10","note":"Published to NVD"}]
Technical details
The vulnerability is a command injection flaw in output escaping: compose-lint only escapes GitHub Actions command syntax (##[, ::) after ASCII spaces and tabs, but the GitHub runner strips all leading Unicode whitespace before parsing. An attacker can embed Unicode whitespace followed by :: or ##[ in Compose file values (service names, environment variables) to inject workflow commands into the text report, fix guidance, diff output, or stderr. Exploitation requires the tool to run in a CI environment that processes workflow commands and requires untrusted Compose file input; version 0.32.0 fixes the escaping logic.
Affected products
- tmatens compose-lint 0.31.0 and earlier
Identifiers
- CVE-2026-125121
- GHSA-r7j4-crjv-h467