Vim is an open source, command line text editor. Prior to 9.2.0736, the PHP omni-completion script in runtime/autoload/phpcomplete.vim interpolates a class or trait name, taken from the contents of the edited buffer, into a search() pattern that is run via win_execute() without escaping. A name containing a single quote can terminate the search() string argument early, and because the bar is honored as an Ex command separator, the remainder of the name is run as Ex commands; via the :! command this allows arbitrary operating-system command execution when a victim opens a crafted PHP file and invokes omni-completion. This issue is fixed in version 9.2.0736.
References
| Link | Resource |
|---|---|
| https://github.com/vim/vim/commit/43afc581a37a35762dd0ef292f038b9dc5680a24 | Patch |
| https://github.com/vim/vim/security/advisories/GHSA-fh26-8f79-wj97 | Exploit Patch Vendor Advisory |
Configurations
History
No history.
Information
Published : 2026-07-09 23:17
Updated : 2026-07-14 05:16
NVD link : CVE-2026-59856
Mitre link : CVE-2026-59856
CVE.ORG link : CVE-2026-59856
JSON object : View
Products Affected
vim
- vim
CWE
CWE-94
Improper Control of Generation of Code ('Code Injection')
