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.
https://github.com/vim/vim/security/advisories/GHSA-cx73-phcg-3j5g
https://github.com/vim/vim/releases/tag/v9.2.0845
https://github.com/vim/vim/commit/2f628d8104958fa7421664f792ca6d4f7a39a10f
Published: 2026-08-18
Updated: 2026-08-18
Base Score: 4.4
Vector: CVSS2#AV:L/AC:M/Au:N/C:P/I:P/A:P
Severity: Medium
Base Score: 7.3
Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H
Severity: High
Base 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
Severity: High
EPSS: 0.00149