Christian Brabandt

64 exploits Active since Sep 2023
CVE-2023-4735 WRITEUP HIGH WRITEUP
vim < 9.0.1847 - Out-of-bounds Write
Out-of-bounds Write in GitHub repository vim/vim prior to 9.0.1847.
CVSS 7.8
CVE-2023-4736 WRITEUP HIGH WRITEUP
vim < 9.0.1833 - Untrusted Search Path
Untrusted Search Path in GitHub repository vim/vim prior to 9.0.1833.
CVSS 7.8
CVE-2023-4738 WRITEUP HIGH WRITEUP
vim < 9.0.1848 - Heap-based Buffer Overflow
Heap-based Buffer Overflow in GitHub repository vim/vim prior to 9.0.1848.
CVSS 7.8
CVE-2023-4750 WRITEUP HIGH WRITEUP
vim < 9.0.1857 - Use-After-Free
Use After Free in GitHub repository vim/vim prior to 9.0.1857.
CVSS 7.8
CVE-2023-4752 WRITEUP HIGH WRITEUP
vim < 9.0.1858 - Use-After-Free
Use After Free in GitHub repository vim/vim prior to 9.0.1858.
CVSS 7.8
CVE-2023-4781 WRITEUP HIGH WRITEUP
vim < 9.0.1873 - Heap-based Buffer Overflow
Heap-based Buffer Overflow in GitHub repository vim/vim prior to 9.0.1873.
CVSS 7.8
CVE-2023-48231 WRITEUP LOW WRITEUP
vim < 9.0.2106 - Use-After-Free in Window Close Operation
Vim is an open source command line text editor. When closing a window, vim may try to access already freed window structure. Exploitation beyond crashing the application has not been shown to be viable. This issue has been addressed in commit `25aabc2b` which has been included in release version 9.0.2106. Users are advised to upgrade. There are no known workarounds for this vulnerability.
CVSS 3.9
CVE-2023-48232 WRITEUP LOW WRITEUP
Vim < 9.0.2107 - Denial of Service via Floating Point Exception in Smooth Scrolling
Vim is an open source command line text editor. A floating point exception may occur when calculating the line offset for overlong lines and smooth scrolling is enabled and the cpo-settings include the 'n' flag. This may happen when a window border is present and when the wrapped line continues on the next physical line directly in the window border because the 'cpo' setting includes the 'n' flag. Only users with non-default settings are affected and the exception should only result in a crash. This issue has been addressed in commit `cb0b99f0` which has been included in release version 9.0.2107. Users are advised to upgrade. There are no known workarounds for this vulnerability.
CVSS 3.9
CVE-2023-48233 WRITEUP LOW WRITEUP
vim < 9.0.2108 - Integer Overflow via :s Command Count
Vim is an open source command line text editor. If the count after the :s command is larger than what fits into a (signed) long variable, abort with e_value_too_large. Impact is low, user interaction is required and a crash may not even happen in all situations. This issue has been addressed in commit `ac6378773` which has been included in release version 9.0.2108. Users are advised to upgrade. There are no known workarounds for this vulnerability.
CVSS 2.8
CVE-2023-48234 WRITEUP LOW WRITEUP
vim < 9.0.2109 - Integer Overflow via Normal Mode z Command Count
Vim is an open source command line text editor. When getting the count for a normal mode z command, it may overflow for large counts given. Impact is low, user interaction is required and a crash may not even happen in all situations. This issue has been addressed in commit `58f9befca1` which has been included in release version 9.0.2109. Users are advised to upgrade. There are no known workarounds for this vulnerability.
CVSS 2.8
CVE-2023-48235 WRITEUP LOW WRITEUP
vim < 9.0.2110 - Integer Overflow in Relative Ex Address Parsing
Vim is an open source command line text editor. When parsing relative ex addresses one may unintentionally cause an overflow. Ironically this happens in the existing overflow check, because the line number becomes negative and LONG_MAX - lnum will cause the overflow. Impact is low, user interaction is required and a crash may not even happen in all situations. This issue has been addressed in commit `060623e` which has been included in release version 9.0.2110. Users are advised to upgrade. There are no known workarounds for this vulnerability.
CVSS 2.8
CVE-2023-48236 WRITEUP LOW WRITEUP
vim < 9.0.2111 - Integer Overflow via z= Command
Vim is an open source command line text editor. When using the z= command, the user may overflow the count with values larger than MAX_INT. Impact is low, user interaction is required and a crash may not even happen in all situations. This vulnerability has been addressed in commit `73b2d379` which has been included in release version 9.0.2111. Users are advised to upgrade. There are no known workarounds for this vulnerability.
CVSS 2.8
CVE-2023-48237 WRITEUP LOW WRITEUP
vim < 9.0.2112 - Integer Overflow in Operator Pending Mode Line Shift
Vim is an open source command line text editor. In affected versions when shifting lines in operator pending mode and using a very large value, it may be possible to overflow the size of integer. Impact is low, user interaction is required and a crash may not even happen in all situations. This issue has been addressed in commit `6bf131888` which has been included in version 9.0.2112. Users are advised to upgrade. There are no known workarounds for this vulnerability.
CVSS 2.8
CVE-2023-48706 WRITEUP LOW WRITEUP
Vim < 9.0.2121 - Use-After-Free via Sub-Replace-Special Atom in :s Command
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 3.6
CVE-2023-5344 WRITEUP HIGH WRITEUP
vim < 9.0.1969 - Heap-based Buffer Overflow
Heap-based Buffer Overflow in GitHub repository vim/vim prior to 9.0.1969.
CVSS 7.5
CVE-2023-5441 WRITEUP MEDIUM WRITEUP
vim < 9.0.1994 - NULL Pointer Dereference
NULL Pointer Dereference in GitHub repository vim/vim prior to 20d161ace307e28690229b68584f2d84556f8960.
CVSS 5.5
CVE-2023-5535 WRITEUP HIGH WRITEUP
vim < 9.0.2010 - Use-After-Free
Use After Free in GitHub repository vim/vim prior to v9.0.2010.
CVSS 7.8
CVE-2024-22667 WRITEUP HIGH WRITEUP
Vim < 9.0.2142 - Stack-based Buffer Overflow in did_set_langmap
Vim before 9.0.2142 has a stack-based buffer overflow because did_set_langmap in map.c calls sprintf to write to the error buffer that is passed down to the option callback functions.
CVSS 7.8
CVE-2024-41957 WRITEUP MEDIUM WRITEUP
Vim < 9.1.0647 - Double Free in Tagstack Data Handling
Vim is an open source command line text editor. Vim < v9.1.0647 has double free in src/alloc.c:616. When closing a window, the corresponding tagstack data will be cleared and freed. However a bit later, the quickfix list belonging to that window will also be cleared and if that quickfix list points to the same tagstack data, Vim will try to free it again, resulting in a double-free/use-after-free access exception. Impact is low since the user must intentionally execute vim with several non-default flags, but it may cause a crash of Vim. The issue has been fixed as of Vim patch v9.1.0647
CVSS 4.5
CVE-2024-41965 WRITEUP MEDIUM WRITEUP
Vim < 9.1.0648 - Double Free in dialog_changed()
Vim is an open source command line text editor. double-free in dialog_changed() in Vim < v9.1.0648. When abandoning a buffer, Vim may ask the user what to do with the modified buffer. If the user wants the changed buffer to be saved, Vim may create a new Untitled file, if the buffer did not have a name yet. However, when setting the buffer name to Unnamed, Vim will falsely free a pointer twice, leading to a double-free and possibly later to a heap-use-after-free, which can lead to a crash. The issue has been fixed as of Vim patch v9.1.0648.
CVSS 4.2
CVE-2024-43374 WRITEUP MEDIUM WRITEUP
Netapp Bootstrap OS < 9.1.0678 - Use After Free
The UNIX editor Vim prior to version 9.1.0678 has a use-after-free error in argument list handling. When adding a new file to the argument list, this triggers `Buf*` autocommands. If in such an autocommand the buffer that was just opened is closed (including the window where it is shown), this causes the window structure to be freed which contains a reference to the argument list that we are actually modifying. Once the autocommands are completed, the references to the window and argument list are no longer valid and as such cause an use-after-free. Impact is low since the user must either intentionally add some unusual autocommands that wipe a buffer during creation (either manually or by sourcing a malicious plugin), but it will crash Vim. The issue has been fixed as of Vim patch v9.1.0678.
CVSS 4.5
CVE-2024-43790 WRITEUP MEDIUM WRITEUP
Vim 9.1.0425-9.1.0689 - Heap-based Buffer Overflow via Search Pattern with ASCII NUL Characters
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.
CVSS 4.5
CVE-2024-43802 WRITEUP MEDIUM WRITEUP
Vim < 9.1.0697 - Heap-based Buffer Overflow in Typeahead Buffer Handling
Vim is an improved version of the unix vi text editor. When flushing the typeahead buffer, Vim moves the current position in the typeahead buffer but does not check whether there is enough space left in the buffer to handle the next characters. So this may lead to the tb_off position within the typebuf variable to point outside of the valid buffer size, which can then later lead to a heap-buffer overflow in e.g. ins_typebuf(). Therefore, when flushing the typeahead buffer, check if there is enough space left before advancing the off position. If not, fall back to flush current typebuf contents. It's not quite clear yet, what can lead to this situation. It seems to happen when error messages occur (which will cause Vim to flush the typeahead buffer) in comnination with several long mappgins and so it may eventually move the off position out of a valid buffer size. Impact is low since it is not easily reproducible and requires to have several mappings active and run into some error condition. But when this happens, this will cause a crash. The issue has been fixed as of Vim patch v9.1.0697. Users are advised to upgrade. There are no known workarounds for this issue.
CVSS 4.5
CVE-2024-45306 WRITEUP MEDIUM WRITEUP
vim 9.1.0038-9.1.0707 - Heap-based Buffer Overflow in Cursor Position Calculation
Vim is an open source, command line text editor. Patch v9.1.0038 optimized how the cursor position is calculated and removed a loop, that verified that the cursor position always points inside a line and does not become invalid by pointing beyond the end of a line. Back then we assumed this loop is unnecessary. However, this change made it possible that the cursor position stays invalid and points beyond the end of a line, which would eventually cause a heap-buffer-overflow when trying to access the line pointer at the specified cursor position. It's not quite clear yet, what can lead to this situation that the cursor points to an invalid position. That's why patch v9.1.0707 does not include a test case. The only observed impact has been a program crash. This issue has been addressed in with the patch v9.1.0707. All users are advised to upgrade.
CVSS 4.5
CVE-2024-47814 WRITEUP LOW WRITEUP
Vim < 9.1.0764 - Use-After-Free via BufWinLeave Auto Command
Vim is an open source, command line text editor. A use-after-free was found in Vim < 9.1.0764. When closing a buffer (visible in a window) a BufWinLeave auto command can cause an use-after-free if this auto command happens to re-open the same buffer in a new split window. Impact is low since the user must have intentionally set up such a strange auto command and run some buffer unload commands. However this may lead to a crash. This issue has been addressed in version 9.1.0764 and all users are advised to upgrade. There are no known workarounds for this vulnerability.
CVSS 3.9