CVE-2026-125122 json
compose-lint: Text in a pull request can issue CI workflow commands through compose-lint 0.31.0's JSON and SARIF output on stdout
published yesterday modified yesterday also EUVD-2026-121401 , GHSA-hr4h-4c45-v4q4
- cvss
- 2.3
- version 4.0, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 31%
- public exploits
- 0
- none known
Summary
compose-lint is a Docker Compose security linter that identifies dangerous misconfigurations before deployment. In version 0.31.0, compose-lint does not sanitize the ##[ workflow-command opener inside strings written by --format json or --format sarif to stdout. A pull request can place that opener in a service name or other Compose value, and the GitHub Actions runner recognizes it even in the middle of a serialized line when the package, pre-commit hook, or Docker image prints JSON or SARIF to the job log. Writing the output to a file and using the compose-lint GitHub Action are not affected, and the flaw does not change the lint pass or fail result. This issue is fixed in version 0.32.0.
Patch / fix
- pypi compose-lint 0.32.0
Is CVE-2026-125122 in your dependencies? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerExploit prediction
0.38% chance of exploitation in the next 30 days, higher than 31% of all scored CVEs (FIRST EPSS, 2026-11-11).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 4.0 | 2.3 | CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:N/VI:L/VA:N/SC:N/SI:L/SA:N |
| CNA | 4.0 | 2.3 | CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:N/VI:L/VA:N/SC:N/SI:L/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | compose-lint | >=0.31.0, <0.32.0 |
0.32.0 |
Affected products
- tmatens compose-lint
Classification
References
-
github.com
/tmatens/compose-lint/pull/945
web
-
github.com
/tmatens/compose-lint/commit/542e63126f795564a65c63887ea0dc558a500688
web
-
github.com
/tmatens/compose-lint/security/advisories/GHSA-hr4h-4c45-v4q4
web
-
github.com
/tmatens/compose-lint/releases/tag/v0.32.0
web
-
nvd.nist.gov
/vuln/detail/CVE-2026-125122
advisory
-
github.com
/tmatens/compose-lint
package
Sources
- CVE List CVE-2026-125122
- GitHub Advisory GHSA-hr4h-4c45-v4q4
- NVD CVE-2026-125122
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.