Description
Vim is a UNIX editor that, prior to version 9.0.2121, has a heap-use-after-free vulnerability. When executing a `:s` command for the very first time and using a sub-replace-special atom inside the substitution part, it is possible that the recursive `:s` call causes free-ing of memory which may later then be accessed by the initial `:s` command. The user must intentionally execute the payload and the whole process is a bit tricky to do since it seems to work only reliably for the very first :s command. It may also cause a crash of Vim. Version 9.0.2121 contains a fix for this issue.
CVSS breakdown
CVSS 3.1
Attack Vector
Local
Attack Complexity
High
Privileges Required
None
User Interaction
Required
Scope
Unchanged
Confidentiality
None
Integrity
Low
Availability
Low
Affected products
- fedoraproject / fedora38 – 38
- fedoraproject / fedora39 – 39
- neovim / neovim0.9.5
- NetApp / hci_compute_node
- vim / vim< 9.0.2121 – < 9.0.2121
- vim / vim9.0.2121
References
- VENDOR_ADVISORYhttps://github.com/vim/vim/security/advisories/GHSA-c8qm-x72m-q53q
- PATCHhttps://github.com/vim/vim/pull/13552
- PATCHhttps://github.com/vim/vim/commit/26c11c56888d01e298cd8044caf860f3c26f57bb
- MISChttps://github.com/gandalf4a/crash_report/blob/main/vim/vim_huaf
- MAILING_LISThttp://www.openwall.com/lists/oss-security/2023/11/22/3
- MAILING_LISThttps://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/DNMFS3IH74KEMMESOA3EOB6MZ56TWGFF/
- MAILING_LISThttps://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/IVA7K73WHQH4KVFDJQ7ELIUD2WK5ZT5E/
- MISChttps://security.netapp.com/advisory/ntap-20240105-0001/
Updated 5m ago · 8 sources