CVE-2026-59858: Vim: Arbitrary Code Execution via C Omni-Completion
Last updated 13 July 2026
Other sources
Vim is an open source, command line text editor. Prior to 9.2.0735, the C omni-completion script in runtime/autoload/ccomplete.vim interpolates the typeref: or typename: extension field of a tags entry, without escaping, into a :vimgrep pattern that is run through :execute. Because :vimgrep honors the bar as a command separator, a crafted tag field can close the search pattern and append an arbitrary Ex command; opening a hostile .c file whose project tags file contains such an entry and invoking C omni-completion runs that command as the editing user. This issue is fixed in version 9.2.0735.
— MITRE
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
debian/vimto a version that resolves this vulnerability.Fixed in 2:9.2.0782-1 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 9.2.0735
Event History
Frequently Asked Questions
What is the severity of CVE-2026-59858?
CVE-2026-59858 has a high severity rating of 8.4 according to the CVSS.
What type of vulnerability is CVE-2026-59858?
CVE-2026-59858 is classified as a Code Injection vulnerability.
How do I fix CVE-2026-59858?
To fix CVE-2026-59858, update Vim to version 9.2.0735 or later.
What software is affected by CVE-2026-59858?
CVE-2026-59858 affects the Vim open-source command line text editor.
What can an attacker achieve with CVE-2026-59858?
An attacker can execute arbitrary code through the C omni-completion script in Vim.