
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2026-33412 is a command injection vulnerability in Vim's glob() function affecting Unix-like systems, classified as CWE-78 (OS Command Injection). All Vim versions prior to 9.2.0202 are affected, including Microsoft's Azure Linux 3 and CBL-Mariner 2 packages (azl3_vim_9.2.0088-1, cbl2_vim_9.2.0088-1) and IBM API Connect. The vulnerability was discovered by researcher pyllyukko, disclosed publicly on March 19, 2026 via the oss-security mailing list, and patched the same day in Vim v9.2.0202. It carries a CVSS v3.1 base score of 7.3 (High) per NVD, though the GitHub advisory rates it 5.6 (Moderate) (GitHub Advisory, Openwall).
The root cause is that the newline character (\n) was absent from the SHELL_SPECIAL list of characters requiring escaping in src/os_unix.c. When Vim's glob() function (and related wildcard expansion features) processes a pattern, it ultimately calls mch_expand_wildcards(), which constructs a shell command string for execution. Because \n was not escaped, an attacker-controlled pattern containing a newline could act as a command separator, injecting arbitrary shell commands into the constructed string. The fix (commit 645ed65) adds \n to the SHELL_SPECIAL definition: changing "\t \"&'$;<>()\\|" to "\t \"&'$;<>()\\|\n". Exploitability depends on the user's configured 'shell' setting, as different shells handle newlines differently (GitHub Commit, GitHub Advisory).
Successful exploitation allows an attacker to execute arbitrary shell commands with the privileges of the user running Vim. The primary risk scenario involves a Vimscript plugin that passes untrusted user input to glob() — for example, a plugin processing filenames or paths supplied by an external source. The impact is primarily to integrity (unauthorized command execution) and potentially confidentiality (information disclosure), with no direct availability impact expected. Lateral movement is possible if the compromised user account has elevated privileges or access to sensitive resources (GitHub Advisory, Openwall).
glob() or related wildcard expansion functions.\n) followed by an arbitrary shell command (e.g., *.txt\nid > /tmp/pwned). The newline acts as a command separator when passed to the shell.glob() on user-supplied paths.mch_expand_wildcards(), the unescaped newline causes the shell to interpret the injected string as a separate command./bin/sh, /bin/bash, curl, wget, python) executing commands unrelated to normal editing activity./tmp/) by the user running Vim; new cron jobs, SSH authorized keys, or scripts added under the user's home directory..bash_history, .zsh_history) showing commands that were not interactively typed; audit logs (auditd) recording unusual execve calls originating from Vim's process tree.Upgrade Vim to version 9.2.0202 or later, which adds \n to the SHELL_SPECIAL escape list in src/os_unix.c, preventing newline injection (GitHub Commit, Vim Release). Distribution-specific patches are available via Red Hat (RHSA-2026:6502 and subsequent advisories), Amazon Linux 2023 (ALAS2023-2026-1584), openSUSE, Ubuntu, AlmaLinux, Rocky Linux, and Oracle Linux. If immediate patching is not feasible, review and restrict Vimscript plugins that pass user-controlled input to glob(), and consider setting Vim's 'shell' option to a shell that does not treat newlines as command separators. IBM API Connect users should apply the patch documented in IBM support page 7272626 (Red Hat Advisory, IBM Advisory).
The vulnerability was disclosed by Vim maintainer Christian Brabandt via the oss-security mailing list on March 19, 2026, crediting researcher pyllyukko for discovery and providing a detailed call chain analysis (Openwall). Red Hat, Microsoft, IBM, Amazon, openSUSE, Ubuntu, AlmaLinux, Rocky Linux, and Oracle Linux all issued advisories and patches within weeks of disclosure, reflecting broad ecosystem response. Coverage appeared on pro-linux.de and linuxcompatible.org, and the Yocto Project security list also tracked the issue. Community reaction was measured, consistent with the moderate severity rating and absence of active exploitation.
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."