5.5 MEDIUM
- CVSS version: 3.1
- Attack vector (AV): LOCAL
- Attack complexity (AC): LOW
- Privileges required (PR): NONE
- User interaction (UI): REQUIRED
- Scope (S): UNCHANGED
- Confidentiality impact (C): HIGH
- Integrity impact (I): NONE
- Availability impact (A): NONE
Activity log
- Created suggestion
melange has a path traversal in license-path which allows reading files outside workspace
melange allows users to build apk packages using declarative pipelines. From version 0.14.0 to before 0.40.3, 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. This issue has been patched in version 0.40.3.
References
Affected products
- ==>= 0.14.0, < 0.40.3
Matching in nixpkgs
pkgs.melange
Build APKs from source code
pkgs.ocamlPackages.melange
Toolchain to produce JS from Reason/OCaml
pkgs.ocamlPackages.melange-json
Compositional JSON encode/decode library and PPX for Melange and OCaml
pkgs.ocamlPackages_latest.melange
Toolchain to produce JS from Reason/OCaml
-
nixos-unstable -
- nixpkgs-unstable 6.0.1-54
pkgs.ocamlPackages.melange-json-native
Compositional JSON encode/decode PPX for OCaml
pkgs.ocamlPackages_latest.melange-json
Compositional JSON encode/decode library and PPX for Melange and OCaml
-
nixos-unstable -
- nixpkgs-unstable 2.0.0
pkgs.ocamlPackages_latest.melange-json-native
Compositional JSON encode/decode PPX for OCaml
-
nixos-unstable -
- nixpkgs-unstable 2.0.0
Package maintainers
-
@developer-guy Batuhan Apaydın <developerguyn@gmail.com>
-
@GirardR1006 Julien Girard-Satabin <julien.girard2@cea.fr>