Quick answers
- Is CVE-2026-123369 exploited in the wild?
- No. Junglewise Threat Intelligence has no report of CVE-2026-123369 being exploited in the wild.
- How severe is CVE-2026-123369?
- Medium severity, with a CVSS score of 4.3, published 9 November 2026.
- Which products and versions are affected?
- tmatens/compose-lint (GitHub Actions) >= 0.2.0, <= 0.30.0, ECOSYSTEM:introduced=0.2.0,fixed=0.31.0|GIT:introduced=60c091c7cc8f86c6b0c5954031097364fea0a201,fixed=a6a7a76736de1c72abfa96c41ff8af556ffdc55f; compose-lint (PyPI) <= 0.30.0, ECOSYSTEM:introduced=0,fixed=0.31.0; Tmatens Compose-Lint prior to 0.31.0.
- Is there a fix for CVE-2026-123369?
- Yes. tmatens/compose-lint (GitHub Actions): upgrade to 0.31.0 or later; compose-lint (PyPI): upgrade to 0.31.0 or later. Until then: The fix involves bracketing compose-lint output with a random stop-commands token (GitHub's documented control for printing untrusted text) and escaping both `##[` and line-leading `::` sequences as visible Unicode escapes to prevent workflow command interpretation.</anigation> <parameter name="timeline">[{"kind":"disclosed","at":"2026-11-09"},{"kind":"patched","at":"2026-09-26"}] Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
- How is CVE-2026-123369 attacked?
- It is attacked over the network, in a software library.
- Am I affected by CVE-2026-123369?
- Check whether you run tmatens/compose-lint (GitHub Actions), 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
- tmatens/compose-lint (GitHub Actions): upgrade to 0.31.0 or later
- compose-lint (PyPI): upgrade to 0.31.0 or later
pip install "compose-lint>=0.31.0"
The fix involves bracketing compose-lint output with a random stop-commands token (GitHub's documented control for printing untrusted text) and escaping both `##[` and line-leading `::` sequences as visible Unicode escapes to prevent workflow command interpretation.</anigation> <parameter name="timeline">[{"kind":"disclosed","at":"2026-11-09"},{"kind":"patched","at":"2026-09-26"}]
Technical details
The vulnerability is a workflow command injection flaw in which attacker-controlled data from Compose files (service names, environment keys, file lines) is printed without sanitization, allowing GitHub Actions `##[cmd]` sequences anywhere in a line and `::cmd::` at the start of a line to be interpreted as runner commands. An attacker controlling a Compose file in a pull request can exploit this to manipulate CI workflow behavior and output during review.
Affected products
- tmatens compose-lint prior to 0.31.0
Identifiers
- CVE-2026-123369
- GHSA-6f4g-xm8v-pgv6