Description
Vim is an open source, command line text editor. Prior to 9.2.0845, StructMembers() in runtime/autoload/ccomplete.vim constructs and executes a vimgrep command using an insufficiently escaped typeref: or typename: value from a tags file, allowing an unterminated collection followed by a command separator to execute arbitrary Ex and operating-system commands when a user invokes C omni-completion with CTRL-X CTRL-O on a member access whose type is resolved from that tags file. This issue is fixed in version 9.2.0845.
Published: 2026-08-18
Score: 7.1 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability resides in Vim’s implementation of C omni-completion. StructMembers() creates a vimgrep command that concatenates a typeref or typename from a tags file without proper escaping. When a user triggers omni‑completion for a C member whose type originates from a tags entry, the malformed command can contain an unterminated collection and a command separator, enabling the execution of arbitrary Ex and operating‑system commands. Based on the description, it is inferred that the flaw allows an attacker who can control the tags file to run arbitrary code, potentially compromising confidentiality, integrity, and availability of the host system.

Affected Systems

This issue affects all releases of Vim prior to 9.2.0845. The vendor is Vim, and the affected product is the Vim text editor. All builds that include the runtime/autoload/ccomplete.vim script are vulnerable until upgraded to version 9.2.0845 or later, which contains a fixed implementation that properly escapes the tags fields.

Risk and Exploitability

The CVSS score of 7.1 indicates high severity. No EPSS score is available, making precise exploitation probability hard to quantify. Based on the description, it is inferred that exploitation requires a local user context who can modify the tags file. The vulnerability is not listed in the CISA KEV catalog. Exploitation requires a local user context; remote exploitation would need an attacker to gain local access or otherwise inject a malicious tags entry. The fix in v9.2.0845 eliminates the unsafe command construction.

Generated by OpenCVE AI on August 18, 2026 at 16:52 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Vim to version 9.2.0845 or newer, available at https://github.com/vim/vim/releases/tag/v9.2.0845
  • If an upgrade cannot be performed immediately, edit the tags file to remove or sanitize any entries that provide typeref or typename values containing unescaped characters or command separators, ensuring they no longer influence the vimgrep construction
  • Disable C omni-completion (e.g., unset the "omnifunc" option for C files) as a temporary workaround until a patched version is applied

Generated by OpenCVE AI on August 18, 2026 at 16:52 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 18 Aug 2026 18:15:00 +0000

Type Values Removed Values Added
First Time appeared Vim
Vim vim
Vendors & Products Vim
Vim vim

Tue, 18 Aug 2026 16:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Tue, 18 Aug 2026 15:30:00 +0000

Type Values Removed Values Added
Description Vim is an open source, command line text editor. Prior to 9.2.0845, StructMembers() in runtime/autoload/ccomplete.vim constructs and executes a vimgrep command using an insufficiently escaped typeref: or typename: value from a tags file, allowing an unterminated collection followed by a command separator to execute arbitrary Ex and operating-system commands when a user invokes C omni-completion with CTRL-X CTRL-O on a member access whose type is resolved from that tags file. This issue is fixed in version 9.2.0845.
Title Vim: Arbitrary Ex Command Execution in C Omni-Completion
Weaknesses CWE-829
CWE-94
References
Metrics cvssV4_0

{'score': 7.1, 'vector': 'CVSS:4.0/AV:L/AC:L/AT:P/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-18T15:31:10.075Z

Reserved: 2026-08-10T19:37:41.444Z

Link: CVE-2026-73073

cve-icon Vulnrichment

Updated: 2026-08-18T15:31:05.870Z

cve-icon NVD

Status : Received

Published: 2026-08-18T16:18:16.730

Modified: 2026-08-18T16:18:16.730

Link: CVE-2026-73073

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-18T18:00:04Z

Weaknesses
  • CWE-829

    Inclusion of Functionality from Untrusted Control Sphere

  • CWE-94

    Improper Control of Generation of Code ('Code Injection')