Using the directory back payload (“/../”) in a package name allows placement of package in other foldersGHSA-6324-52pr-h4p5
NONEGHSA-6324-52pr-h4p5 is a none-severity (CVSS 0) Path Traversal vulnerability in Umbraco.CMS. A fix is available for Umbraco.CMS — see the affected versions and patch details below.
EPSS Exploitation Probability
Probability of exploitation in the next 30 days, from FIRST.org EPSS.
How urgent is this, really
Where this sits among everything scored
Real-World Exposure
Umbraco.CMS.NETUmbraco.CMS.NETUmbraco.CMSReal-time download stats are indexed for npm and PyPI packages. This vulnerability affects NuGet packages — download data is not available via public APIs for these ecosystems.
Description
Umbraco is an ASP.NET content management system (CMS). Starting in version 8.0.0 and prior to versions 8.18.10, 10.8.1, and 12.3.0, Backoffice users with permissions to create packages can use path traversal and thereby write outside of the expected location. Versions 8.18.10, 10.8.1, and 12.3.0 contain a patch for this issue.
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| .NETNuGet | Umbraco.CMS | ≥ 8.0.0&&< 8.18.10 | 8.18.10dotnet add package Umbraco.CMS --version 8.18.10 |
| .NETNuGet | Umbraco.CMS | ≥ 9.0.0&&< 10.8.1 | 10.8.1dotnet add package Umbraco.CMS --version 10.8.1 |
| .NETNuGet | Umbraco.CMS | ≥ 11.0.0&&< 12.3.4 | 12.3.4dotnet add package Umbraco.CMS --version 12.3.4 |
Affected Products
umbraco cmsumbracoDetection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for Umbraco.CMS, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update Umbraco.CMS to 8.18.10 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms GHSA-6324-52pr-h4p5 is resolved across your whole dependency graph.
Workarounds
Resolve every user-supplied path to its canonical form and reject anything that escapes the intended directory, and run the component under an account that has no read or write access outside the directory it legitimately serves.
Frequently Asked Questions
Is GHSA-6324-52pr-h4p5 in your dependencies?
Find it across NuGet, including transitive dependencies.