{"id":"GHSA-6xv5-86q9-7xr8","summary":"SecureJoin: on windows, paths outside of the rootfs could be inadvertently produced","details":"### Impact\nFor Windows users of `github.com/cyphar/filepath-securejoin`, until v0.2.4 it was possible for certain rootfs and path combinations (in particular, where a malicious Unix-style `/`-separated unsafe path was used with a Windows-style rootfs path) to result in generated paths that were outside of the provided rootfs.\n\nIt is unclear to what extent this has a practical impact on real users, but given the possible severity of the issue we have released an emergency patch release that resolves this issue.\n\nThanks to  @pjbgf for discovering, debugging, and fixing this issue (as well as writing some tests for it).\n\n### Patches\nc121231e1276e11049547bee5ce68d5a2cfe2d9b is the patch fixing this issue. v0.2.4 contains the fix.\n\n### Workarounds\nUsers could use `filepath.FromSlash()` on all unsafe paths before passing them to `filepath-securejoin`.\n\n### References\nSee #9.","aliases":["GO-2023-2048"],"modified":"2026-09-10T03:49:57.965917829Z","published":"2023-09-07T12:58:58Z","database_specific":{"nvd_published_at":null,"cwe_ids":[],"severity":"MODERATE","github_reviewed":true,"github_reviewed_at":"2023-09-07T12:58:58Z"},"references":[{"type":"WEB","url":"https://github.com/cyphar/filepath-securejoin/security/advisories/GHSA-6xv5-86q9-7xr8"},{"type":"WEB","url":"https://github.com/cyphar/filepath-securejoin/pull/9"},{"type":"WEB","url":"https://github.com/cyphar/filepath-securejoin/commit/c121231e1276e11049547bee5ce68d5a2cfe2d9b"},{"type":"PACKAGE","url":"https://github.com/cyphar/filepath-securejoin"},{"type":"WEB","url":"https://github.com/cyphar/filepath-securejoin/releases/tag/v0.2.4"}],"affected":[{"package":{"name":"github.com/cyphar/filepath-securejoin","ecosystem":"Go","purl":"pkg:golang/github.com/cyphar/filepath-securejoin"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"0.2.4"}]}],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2023/09/GHSA-6xv5-86q9-7xr8/GHSA-6xv5-86q9-7xr8.json"}}],"schema_version":"1.9.0"}