GHSA-2w4f-9fgg-q2v9
melange has a path traversal in license-path which allows reading files outside workspace
Packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| Go | chainguard.dev/melange | >= 0.14.0, < 0.40.3 | 0.40.3 |
Details
As written in the advisory (Markdown source, shown as plain text).
An attacker who can influence a melange configuration file (e.g., through pull request-driven CI or build-as-a-service scenarios) could read arbitrary files from the host system. The `LicensingInfos` function in `pkg/config/config.go` reads license files specified in `copyright[].license-path` without validating that paths remain within the workspace directory, allowing path traversal via `../` sequences. The contents of the traversed file are embedded into the generated SBOM as license text, enabling exfiltration of sensitive data through build artifacts.
Fix: Merged in commit 2f95c9f4
Acknowledgements
melange thanks Oleh Konko (@1seal) from 1seal for discovering and reporting this issue.
References
External links from the advisory. They lead to third-party sites.