{"id":"GHSA-jx4p-m4wm-vvjg","summary":"Malicious directory junction can cause WiX RemoveFoldersEx to possibly delete elevated files","details":"### Summary\nThe custom action behind WiX's `RemoveFolderEx` functionality could allow a standard user to delete protected directories.\n\n### Details\n`RemoveFolderEx` deletes an entire directory tree during installation or uninstallation. It does so by recursing every subdirectory starting at a specified directory and adding each subdirectory to the list of directories Windows Installer should delete. If the setup author instructed `RemoveFolderEx` to delete a per-user folder from a per-machine installer, an attacker could create a directory junction in that per-user folder pointing to a per-machine, protected directory. Windows Installer, when executing the per-machine installer after approval by an administrator, would delete the target of the directory junction.\n","aliases":["CVE-2024-29188"],"modified":"2024-03-25T19:57:59.707076Z","published":"2024-03-25T19:42:17Z","database_specific":{"nvd_published_at":"2024-03-24T20:15:08Z","cwe_ids":["CWE-59"],"severity":"HIGH","github_reviewed":true,"github_reviewed_at":"2024-03-25T19:42:17Z"},"references":[{"type":"WEB","url":"https://github.com/wixtoolset/issues/security/advisories/GHSA-jx4p-m4wm-vvjg"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2024-29188"},{"type":"WEB","url":"https://github.com/wixtoolset/wix/commit/2e5960b575881567a8807e6b8b9c513138b19742"},{"type":"WEB","url":"https://github.com/wixtoolset/wix3/commit/93eeb5f6835776694021f66d4226c262c67d487a"},{"type":"PACKAGE","url":"https://github.com/wixtoolset/issues"}],"affected":[{"package":{"name":"wix","ecosystem":"NuGet","purl":"pkg:nuget/wix"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.14.1"}]}],"versions":["3.10.0","3.10.0.1719-pre","3.10.0.1726-pre","3.10.0.2103-pre","3.10.0.2103-pre1","3.10.1","3.10.2","3.10.3","3.10.4","3.11.0","3.11.0.1507-rc","3.11.0.1528-rc2","3.11.0.321-pre","3.11.0.504-pre","3.11.0.906-pre","3.11.1","3.11.2","3.14.0","3.6.0","3.6.0.1","3.7.0","3.7.0.1","3.8.0","3.8.0.1","3.9.0","3.9.0.1","3.9.2","3.9.2.1"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2024/03/GHSA-jx4p-m4wm-vvjg/GHSA-jx4p-m4wm-vvjg.json"}},{"package":{"name":"wix","ecosystem":"NuGet","purl":"pkg:nuget/wix"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.0.0"},{"fixed":"4.0.5"}]}],"versions":["4.0.0","4.0.0.2926-pre","4.0.0.3226-pre","4.0.0.3922-pre","4.0.0.4506-pre","4.0.0.5512-pre","4.0.1","4.0.2","4.0.3","4.0.4"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2024/03/GHSA-jx4p-m4wm-vvjg/GHSA-jx4p-m4wm-vvjg.json"}},{"package":{"name":"WixToolset.Util.wixext","ecosystem":"NuGet","purl":"pkg:nuget/WixToolset.Util.wixext"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"4.0.5"}]}],"versions":["4.0.0","4.0.1","4.0.2","4.0.3","4.0.4"],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2024/03/GHSA-jx4p-m4wm-vvjg/GHSA-jx4p-m4wm-vvjg.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:C/C:N/I:H/A:H"}]}