CVE-2024-43790
heap-buffer-overflow in do_search() in Vim < 9.1.0689
- State
- Published
- Severity
- 4.5 Medium
- Published
- Aug 22, 2024
- Updated
- Sep 20, 2024
- Reserved
- Aug 16, 2024
Description
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.
Scores
| CVSS | Score | Vector | Source |
|---|---|---|---|
| 3.1 | 4.5 Medium | CVSS:3.1/AV:L/AC:H/PR:N/UI:R/S:U/C:L/I:L/A:L | GitHub_M |
Weaknesses
- CWE-122 Heap-based Buffer Overflow
Affected Products
| Product | Versions |
|---|---|
vimvim |
|
References
Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.