CVE-2024-43790: heap-buffer-overflow in do_search() in Vim < 9.1.0689
Vim is an open source command line text editor. When performing a search and displaying the search-count message is disabled (:set shm+=S), the search pattern is displayed at the bottom of the screen in a buffer (msgbuf). When right-left mode (:set rl) is enabled, the search pattern is reversed. This happens by allocating a new buffer. If the search pattern contains some ASCII NUL characters, the buffer allocated will be smaller than the original allocated buffer (because for allocating the reversed buffer, the strlen() function is called, which only counts until it notices an ASCII NUL byte ) and thus the original length indicator is wrong. This causes an overflow when accessing characters inside the msgbuf by the previously (now wrong) length of the msgbuf. The issue has been fixed as of Vim patch v9.1.0689.
Affected Software
Remediation
Event History
Frequently Asked Questions
What is the severity of CVE-2024-43790?
CVE-2024-43790 has a moderate severity level due to its potential information disclosure risk.
How do I fix CVE-2024-43790?
To fix CVE-2024-43790, upgrade to Vim version 9.1.0689 or later.
What versions of Vim are affected by CVE-2024-43790?
CVE-2024-43790 affects Vim versions prior to 9.1.0689.
What is the main vulnerability in CVE-2024-43790?
CVE-2024-43790 exposes the search pattern in the message buffer when specific Vim settings are enabled.
Is CVE-2024-43790 related to command line usage?
Yes, CVE-2024-43790 specifically impacts users interacting with the command line interface of Vim.