Description
Dependency-Track is a component analysis platform that allows organizations to identify and reduce risk in the software supply chain. Dependency-Track allows users with the `SYSTEM_CONFIGURATION` permission to customize notification templates. Templates are evaluated using the Pebble template engine. Pebble supports an `include` tag, which allows template authors to include the content of arbitrary files upon evaluation. Prior to version 4.12.6, users of Dependency-Track with the `SYSTEM_CONFIGURATION` permission can abuse the `include` tag by crafting notification templates that `include` sensitive local files, such as `/etc/passwd` or `/proc/1/environ`. By configuring such a template for a notification rule (aka "Alert"), and having it send notifications to a destination controlled by the actor, sensitive information may be leaked. The issue has been fixed in Dependency-Track 4.12.6. In fixed versions, the `include` tag can no longer be used. Usage of the tag will cause template evaluation to fail. As a workaround, avoid assigning the `SYSTEM_CONFIGURATION` permission to untrusted users. The `SYSTEM_CONFIGURATION` permission per default is only granted to members of the `Administrators` team. Assigning this permission to non-administrative users or teams is a security risk in itself, and highly discouraged.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
DependencyTrack dependency-track
< 4.12.6affected
References
- https://github.com/DependencyTrack/dependency-track/security/advisories/GHSA-9582-88hr-54w3 ↗
- https://github.com/JLLeitschuh/security-research/security/advisories/GHSA-p75g-cxfj-7wrx ↗
- https://github.com/PebbleTemplates/pebble/issues/680 ↗
- https://github.com/DependencyTrack/dependency-track/pull/4684 ↗
- https://github.com/DependencyTrack/dependency-track/pull/4685 ↗
- https://pebbletemplates.io/wiki/tag/include ↗