Description
compose-lint is a Docker Compose security linter that identifies dangerous misconfigurations before deployment. From 0.22.0 until 0.32.0, compose-lint substitutes values from a sibling .env file into image fields and quotes the resolved value in CL-0004 and CL-0019 finding messages and fix text. In a workflow that writes secrets into that file and then lints untrusted pull-request content, an attacker can reference a secret variable so its whole value reaches the job log, JSON output, SARIF artifacts, and Code Scanning alerts. Fork pull requests normally lack secrets, so exploitation requires a secret-bearing workflow such as pull_request_target, same-repository branches, or a retained .env on a self-hosted runner, and the pass or fail result is unchanged. This issue is fixed in version 0.32.0.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| tmatens | compose-lint | >= 0.22.0, < 0.32.0 | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| GitHub Actions | tmatens/compose-lint | >= 0.22.0, < 0.32.0 | 0.32.0 | GHSA-jf3h-8jvx-vcrg |
| PyPI | compose-lint | >= 0.22.0, < 0.32.0 | 0.32.0 | GHSA-jf3h-8jvx-vcrg |