Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

suse-cvrf логотип

openSUSE-SU-2026:21671-1

Опубликовано: 28 авг. 2026
Источник: suse-cvrf

Описание

Security update for vim

This update for vim fixes the following issues:

Updated to version 9.2.0957.

Security issues fixed:

  • CVE-2026-73070: stack buffer overflow in the socket server can lead to denial of service (bsc#1275018).
  • CVE-2026-73071: use-after-free in JSON decoding can lead to process crash (bsc#1275017).
  • CVE-2026-73072: heap buffer overflow when loading a spell file can lead to crash or potential code execution (bsc#1275016).
  • CVE-2026-73074: heap buffer overflow in text property handling can lead to a crash or potential code execution (bsc#1275015).
  • CVE-2026-73075: out-of-bounds access in popup opacity handling can lead to a conditional memory write (bsc#1275014).
  • CVE-2026-73076: arbitrary command execution via the vimball record file (bsc#1275013).
  • CVE-2026-73077: arbitrary code execution due to insecure shell command handling (bsc#1275012).
  • CVE-2026-73078: arbitrary code execution via crafted netrw menu entries (bsc#1275011).

Other updates and bugfixes:

  • Version 9.2.0957.
    • tests: Test_fuzzy_completion_bufname_fullpath() creates unnecessary dir (9.2.0781).
    • tests: missing cleanup in test_mksession.vim (9.2.0782).
    • tests: personal spell files leak into later tests (9.2.0783).
    • crash when borrowing statusline highlight in silent Ex mode (9.2.0784).
    • WinResized not triggered when the whole Vim is resized (9.2.0785).
    • filetype: containerfile is not recognized (9.2.0786).
    • regexp: code 0x1ecb duplicated for equivalence class (9.2.0787).
    • filetype: hip files are not recognized (9.2.0788).
    • 'statuslineopt' status line too high after a window is minimized (9.2.0789).
    • 'completeslash' breaks :find completion with 'findfunc' (9.2.0790).
    • wincol() counts from right side for 'rightleft' (9.2.0791).
    • runtime(netrw): explore without optional dir broken (9.2.0792).
    • if session restored a tiny window, restore fails (9.2.0793).
    • extend() and extendnew() don't handle NULL expr2 properly (9.2.0794).
    • popup menu shadow is not cleared when the menu shrinks (9.2.0795).
    • Visual block reselection wrong with 'virtualedit' (9.2.0796).
    • memory leak in get_qfline_items() on alloc failure (9.2.0797).
    • memory leak in compile_expr6() on alloc failure (9.2.0798).
    • memory leak in compile_def_function_body() on alloc failure (9.2.0799).
    • memory leak in call_func() on alloc failure (9.2.0800).
    • memory leak in f_getreginfo() on alloc failure (9.2.0801).
    • memory leak with list_append_dict/dict_add_list on alloc failure (9.2.0802).
    • memory leak on alloc failure with taglist/gettagstack() (9.2.0803).
    • wincol() is wrong for a double-wide character with 'rightleft' (9.2.0804).
    • screenpos() "curscol" is wrong with 'rightleft' (9.2.0805).
    • 'showcmd' may show internal command keys (9.2.0806).
    • MS-Windows: ellipsis character is garbled (9.2.0807).
    • getregionpos: double-free on alloc failure (9.2.0808).
    • getframelayout() uses wrong function to free lists (9.2.0809).
    • add_llist_tags() uses wrong function to free dict (9.2.0810).
    • mksession writes terminal command unquoted (9.2.0811).
    • :argdelete with pattern leads to wrong argidx() (9.2.0812).
    • dict_add_func() may corrupt funcref count on failure (9.2.0813).
    • Vim9: E1041 when reloading an autoload script with exported variables (9.2.0814).
    • deeply nested regexp patterns may cause stack overflow (9.2.0815).
    • GTK4: memory leak in gui_gtk_set_dnd_targets() (9.2.0816).
    • crash when building a stacktrace during an autocommand (9.2.0817).
    • tests: client-server test fails without X11 server (9.2.0818).
    • MS-Windows: sixel image shown as raw text in the console (9.2.0819).
    • GUI: hidden popup image is displayed and not erased (9.2.0820).
    • filetype: msmtp system-wide rc file not detected (9.2.0821).
    • GTK4: crash menu id is null in gui_mch_destroy_menu() (9.2.0822).
    • tests: Test_clientserver_servlist_list may fail (9.2.0823).
    • Makefile: make tags depends on configure (9.2.0824).
    • regexp: submatch in a look-behind is empty with the NFA engine (9.2.0825).
    • highlighting for broken terminals can be improved (9.2.0826).
    • :startinsert enters Insert mode in a non-modifiable buffer (9.2.0827).
    • GTK4: hardware rendering can be improved (9.2.0828).
    • sessions do not preserve script version for expression options (9.2.0829).
    • the completion menu is not used on terminals without colors (9.2.0830).
    • diff highlighting hard to read with syntax enabled (9.2.0831).
    • socketserver: remote commands can be processed in reverse order (9.2.0832).
    • GTK4: menu mnemonics do not work properly (9.2.0833).
    • cleared last search pattern is restored from viminfo (9.2.0834).
    • features in version.c are not sorted (9.2.0835).
    • filetype: .git-blame-ignore-revs file is not recognized (9.2.0836).
    • using wrong colors in hl_blend_attr() (9.2.0837).
    • searchcount() returns wrong cached maxcount (9.2.0838).
    • [security]: arbitrary code execution via keyword lookup (9.2.0839).
    • [security]: code injection in netrw via bookmarks (9.2.0840).
    • [security]: heap overflow when adding > 65535 text properties (9.2.0841).
    • [security]: stack buffer overflow in socket server (9.2.0842).
    • [security]: popup: opacity mask indexed out of bounds (9.2.0843).
    • [security]: use-after-free on json decode error (9.2.0844).
    • [security]: arbitrary Ex command execution during C omni-completion (9.2.0845).
    • [security]: heap buffer overflow in set_sofo() (9.2.0846).
    • [security]: vimball: code execution via .VimballRecord file (9.2.0847).
    • tagfunc "cmd" with a generic Ex command corrupts the tag entry (9.2.0848).
    • filetype: osquery config files are not recognized (9.2.0849).
    • MS-Windows: commands from a client can be lost (9.2.0850).
    • focus autocommands triggered inconsistently (9.2.0851).
    • GTK: ligatures not correctly displayed (9.2.0852).
    • popup: popup images do not support scaling (9.2.0853).
    • memory leak when reading a spell file with SN_SAL and SN_SOFO (9.2.0854).
    • 'showcmd' not redrawn with empty mapping triggered on timeout (9.2.0855).
    • GTK4: undercurl rendering is inefficient (9.2.0856).
    • popup: opacity popup over a terminal is not cleared when closed (9.2.0857).
    • MS-Windows GUI: white flash when VimEnter is slow (9.2.0858).
    • GTK2: link error (9.2.0859).
    • filetype: xilinx design constraint files are not recognized (9.2.0860).
    • GTK4: bleed region updates in jumps (9.2.0861).
    • missing test change from v9.2.0857 (9.2.0862).
    • MS-Windows GUI: window contents can be missing when VimEnter is slow (9.2.0863).
    • using some dead code in Wayland feature (9.2.0864).
    • GTK4: non-hardware accelerated UI is too slow (9.2.0865).
    • MS-Windows: ":language messages" only works once (9.2.0866).
    • MS-Windows: messages are not in the display language (9.2.0867).
    • GTK: window Manager hint prevents giving focus to dialog (9.2.0868).
    • buf_copy_options() can lose the P_INSECURE flag (9.2.0869).
    • filetype: marko files are not recognized (9.2.0870).
    • screen line is lost when splitting a 'winfixheight' window (9.2.0871).
    • popup with opacity does not use the font of the highlight group (9.2.0872).
    • :redrawstatus does not update the ruler of the last window (9.2.0873).
    • fold size is compared against 'foldminlines' of the wrong window (9.2.0874).
    • GTK4: GUI does not support command-line arguments (9.2.0875).
    • GTK4: compile error with disabled netbeans feat (9.2.0876).
    • Vim9: crash when a closure assigns to a variable declared in a loop (9.2.0877).
    • Vim9: cannot use a script variable of an enclosing block in a lambda (9.2.0878).
    • popup: "maxwidth" is not respected when 'wrap' is off (9.2.0879).
    • scroll: window scrolls when using the autocommand window (9.2.0880).
    • 'smoothscroll' position is lost when the window height changes (9.2.0881).
    • :bwipe crashes if WinLeave wipes all other buffers (9.2.0882).
    • scroll: 'smoothscroll' position is lost when using "|" (9.2.0883).
    • scroll: unreachable 'smoothscroll' code in cursor_correct() (9.2.0884).
    • scroll: 'smoothscroll' position is lost when the window is squeezed (9.2.0885).
    • :set completion works for an invalid sub-option name (9.2.0886).
    • scroll: jump-scrolling when moving the cursor onto a wrapping line (9.2.0887).
    • mapping: modifier is not recognized after a partial mapping (9.2.0888).
    • VMS: spurious "INVALID DECC FEATURE VALUE" message at every startup (9.2.0889).
    • test: test for patch v9.2.0888 can be clarified (9.2.0890).
    • MS-Windows: filename-modifier ":8:t" causes underflow (9.2.0891).
    • highlight: wrong column highlighted with 'cursorcolumn' (9.2.0892).
    • MS-Windows: "*.vim" also matches files with a longer extension (9.2.0893).
    • filetype: ed script files not recognised (9.2.0894).
    • test: Test_aucmd_win_scroll_multibyte() is flaky in the GUI (9.2.0895).
    • scroll: 'smoothscroll' position is lost when splitting a window (9.2.0896).
    • GTK3 X11 redraws are not coalesced (9.2.0897).
    • printing support is lacking (9.2.0898).
    • command output temporary files may collide (9.2.0899).
    • FocusGained still triggered when closing dialog (9.2.0900).
    • textprop: wrong cursor line with truncated virtual text (9.2.0901).
    • Vim9: iterating over a tuple leaks memory (9.2.0902).
    • Vim9: cannot use an exported function of an autoload import (9.2.0903).
    • "zb" scrolls incorrectly with cursor just above fold (9.2.0904).
    • MS-Windows: ghost cursor with ligatures (9.2.0905).
    • slow transstr() with long strings (9.2.0906).
    • popup: virtual text is not redrawn when a text property changes (9.2.0907).
    • cannot use a {} block in a nested :autocmd (9.2.0908).
    • insert completion is slow to collect many matches (9.2.0909).
    • runtime(vim): update syntax, contain Ex commands (9.2.0910).
    • makefiles do not build hardcopy_postscript.c (9.2.0911).
    • hardcopy: prototypes are hand-written instead of generated (9.2.0912).
    • statusline: cell below the vertical separator keeps the old highlight (9.2.0913).
    • diff: undo after :diffget into an empty buffer leaves a line behind (9.2.0914).
    • tests: two terminal tests in test_popupwin fail on FreeBSD (9.2.0915).
    • configure: honor --disable-hardcopy-pango with GTK UI (9.2.0916).
    • :quitall not allowed in the command-line window (9.2.0917).
    • screen: fill char with a zero low byte is stored as a NUL cell (9.2.0918).
    • screen: the wrong array is copied into ScreenCols on a resize (9.2.0919).
    • filetype: json-ld files are not recognized (9.2.0920).
    • test: terminal tests fail on FreeBSD (9.2.0921).
    • Wayland: modeless selection not redrawn (9.2.0922).
    • tabpage: closing a tab page loses the alternate tab page (9.2.0923).
    • tests: Test_termwinscroll() fails on FreeBSD (9.2.0924).
    • crash when getcompletiontype() gets a NULL string (9.2.0925).
    • filetype: business Central files are not recognized (9.2.0926).
    • curswant not set on 8g8 (9.2.0927).
    • MinGW: tests hang when Vim is built with coverage enabled (9.2.0928).
    • incorrect completion for 'pumopt' and 'pumborder' (9.2.0929).
    • floating point exception when displaying pum (9.2.0930).
    • the GTK4 GUI is still experimental and untested by CI (9.2.0931).
    • NFA engine fallback can double free the compiled program (9.2.0932).
    • u_read_undo() leaks the file name when the undo file owner differs (9.2.0933).
    • filetype: hlsl files are not recognized (9.2.0934).
    • reading an undo file is slow with many undo headers (9.2.0935).
    • stringifying a list or dict can free the item being iterated (9.2.0936).
    • sort() with a numeric option converts each item on every comparison (9.2.0937).
    • cursorbind: cursor in the other window is not updated after undo (9.2.0938).
    • mbyte: wrong cell count for an overlong UTF-8 sequence (9.2.0939).
    • GTK4: columns are lost when a scrollbar appears (9.2.0940).
    • tests: clipboard tests fail in the GUI when the terminal has no clipboard (9.2.0941).
    • test: test_mksession_winpos() fails on GTK4 UI (9.2.0942).
    • test: test_hardcopy fails on GTK4 UI (9.2.0943).
    • test: tests fail when checking for GTK4 feature (9.2.0944).
    • sort() with a numeric option can be improved (9.2.0945).
    • GTK2/3: mouse move starts Visual selection after a dialog (9.2.0946).
    • GTK4: screen is cleared when moving the mouse after startup (9.2.0947).
    • GTK4: mouse move starts Visual selection after a dialog (9.2.0948).
    • GDK_KEY_VoidSymbol might be undefined (9.2.0949).
    • transstr() can be improved (after 9.2.0906) (9.2.0950).
    • GTK3: cursor does no longer blink (9.2.0951).
    • locking a container while stringifying can be improved (9.2.0952).
    • insert completion code can be improved (9.2.0953).
    • u_read_undo() can be improved (after 9.2.0935) (9.2.0954).
    • tests: terminal tests are flaky (9.2.0955).
    • GTK4: crash when the window is resized while redrawing (9.2.0956).
    • filetype: ArgoCD config file is not recognized (9.2.0957).
  • Allow wrap and linebreak to be set from a modeline (bsc#1268162).
  • Point SYS_VIMRC_FILE at $VIMRUNTIME/suse.vimrc rather than /etc/vimrc, which we no longer own (bsc#1268162).
  • Update suse.vimrc: source /etc/vimrc at the end of the file, so that a local system vimrc still overrides the distribution defaults.
  • Guard suse.vimrc against re-entry to prevent an infinite sourcing loop (bsc#1271684).

Список пакетов

openSUSE Leap 16.0
gvim-9.2.0957-160000.1.1
vim-9.2.0957-160000.1.1
vim-data-9.2.0957-160000.1.1
vim-data-common-9.2.0957-160000.1.1
vim-small-9.2.0957-160000.1.1
xxd-9.2.0957-160000.1.1

Описание

Vim is an open source, command line text editor. Prior to 9.2.0842, the socket server backend in src/socketserver.c accepts unbounded client connections in socketserver_accept(), causing descriptors to overflow fd_set structures in src/channel.c and fixed-size struct pollfd arrays in src/os_unix.c, which allows a local process that can connect to the server socket to corrupt stack memory or terminate the Vim server. This issue is fixed in version 9.2.0842.


Затронутые продукты
openSUSE Leap 16.0:gvim-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-data-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-data-common-9.2.0957-160000.1.1

Ссылки

Описание

Vim is an open source, command line text editor. From 9.2.0511 until 9.2.0844, json_decode_item() in src/json.c can retain a stale pointer after json_decode_string() invokes channel_fill() to refill and free the current buffer, causing the error path to read freed memory instead of reader->js_buf + reader->js_used when an invalid JSON string spans buffers. This issue is fixed in version 9.2.0844.


Затронутые продукты
openSUSE Leap 16.0:gvim-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-data-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-data-common-9.2.0957-160000.1.1

Ссылки

Описание

Vim is an open source, command line text editor. Prior to 9.2.0846, set_sofo() in src/spellfile.c reuses sl_sal_first[] without resetting values left by set_sal_first(), so a crafted spell file containing an SN_SAL section before an SN_SOFO section causes under-counted mapping lists and attacker-influenced writes beyond a heap allocation. This issue is fixed in version 9.2.0846.


Затронутые продукты
openSUSE Leap 16.0:gvim-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-data-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-data-common-9.2.0957-160000.1.1

Ссылки

Описание

Vim is an open source, command line text editor. Prior to 9.2.0841, prop_add_one() in src/textprop.c uses the proplen value from get_text_props() to increment a uint16_t property count beyond 0xffff, wrapping the count to zero and copying existing text-property records into a heap allocation sized for none of them. This issue is fixed in version 9.2.0841.


Затронутые продукты
openSUSE Leap 16.0:gvim-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-data-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-data-common-9.2.0957-160000.1.1

Ссылки

Описание

Vim is an open source, command line text editor. From 9.2.0469 until 9.2.0843, popup_mark_opacity_zindex() in src/popupwin.c can use a negative w_winrow for a text-property-anchored popup with clipwindow and opacity, indexing before the screen array instead of accounting for w_popup_topoff and causing an out-of-bounds read and conditional write. This issue is fixed in version 9.2.0843.


Затронутые продукты
openSUSE Leap 16.0:gvim-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-data-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-data-common-9.2.0957-160000.1.1

Ссылки

Описание

Vim is an open source, command line text editor. Prior to 9.2.0847, runtime/autoload/vimball.vim allows a crafted vimball member named .VimballRecord to overwrite the installation record with attacker-chosen commands. When vimball#RmVimball() later processes the matching record entry, the stored Ex commands, including operating-system commands invoked through :!, execute with the privileges of the user running Vim. This issue is fixed in version 9.2.0847.


Затронутые продукты
openSUSE Leap 16.0:gvim-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-data-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-data-common-9.2.0957-160000.1.1

Ссылки

Описание

Vim is an open source, command line text editor. Prior to 9.2.0839, the runtime/ftplugin/sh.vim, runtime/ftplugin/zsh.vim, and runtime/ftplugin/ps1.vim filetype plugins pass attacker-controlled Visual-mode selections from K through keywordprg commands without safely separating shell arguments. fnameescape() and PATH_ESC_CHARS do not neutralize shell metacharacters before ShKeywordPrg, ZshKeywordPrg, or GetHelp invokes bash, zsh, or PowerShell, allowing arbitrary operating-system commands to execute with the privileges of the user running Vim. This issue is fixed in version 9.2.0839.


Затронутые продукты
openSUSE Leap 16.0:gvim-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-data-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-data-common-9.2.0957-160000.1.1

Ссылки

Описание

Vim is an open source, command line text editor. Prior to 9.2.0840, runtime/plugin/netrwPlugin.vim loads netrw and runtime/pack/dist/opt/netrw/autoload/netrw.vim constructs Bookmarks, History, and Targets menu entries by interpolating attacker-controlled directory paths into executed :menu commands. s:NetrwBookmarkMenu(), s:NetrwTgtMenu(), g:netrw_menu_escape, EX_TRLBAR, and netrw#MakeTgt() fail to neutralize the | command separator or single quotes at five construction sites, allowing a crafted path browsed or bookmarked in GUI Vim to execute arbitrary Ex and operating-system commands. This issue is fixed in version 9.2.0840.


Затронутые продукты
openSUSE Leap 16.0:gvim-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-data-9.2.0957-160000.1.1
openSUSE Leap 16.0:vim-data-common-9.2.0957-160000.1.1

Ссылки
Уязвимость openSUSE-SU-2026:21671-1