CVE-2024-29188
Malicious directory junction can cause WiX RemoveFoldersEx to possibly delete elevated files
Impact
### Summary The custom action behind WiX's `RemoveFolderEx` functionality could allow a standard user to delete protected directories. ### Details `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.
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| nuget | wix | < 3.14.1 | 3.14.1 |
| nuget | WixToolset.Util.wixext | < 4.0.5 | 4.0.5 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://github.com/wixtoolset/issues/security/advisories/GHSA-jx4p-m4wm-vvjg
- https://github.com/wixtoolset/wix/commit/2e5960b575881567a8807e6b8b9c513138b19742
- https://github.com/wixtoolset/wix3/commit/93eeb5f6835776694021f66d4226c262c67d487a
- https://github.com/advisories/GHSA-jx4p-m4wm-vvjg
- https://nvd.nist.gov/vuln/detail/CVE-2024-29188