Description
Vim is an open source, command line text editor. Prior to version 9.2.0450, a heap buffer overflow exists in read_compound() in src/spellfile.c when loading a crafted spell file (.spl) with UTF-8 encoding active. An attacker-controlled length field in the spell file's compound section overflows a 32-bit signed integer multiplication, causing a small buffer to be allocated for a write loop that runs many iterations, overflowing the heap. Because the 'spelllang' option can be set from a modeline, a text file modeline can trigger spell file loading if a malicious .spl file has been planted on the runtimepath. This issue has been patched in version 9.2.0450.
Affected products
neovim: neovim; vim: vim
References4
- github.com/vim/vim/security/advisories/GHSA-q4jv-r9gj-6cwv ExploitPatchVendor Advisory
- github.com/vim/vim/commit/92993329178cb1f72d700fff45ca86e1c2d36… Patch
- github.com/vim/vim/releases/tag/v9.2.0450 Product
- www.openwall.com/lists/oss-security/2026/05/14/3 Mailing ListThird Party Advisory
Metrics
- CVSS 3.1
-
5.5
MEDIUM
Score source: NVD
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H - EPSS — exploit probability
- 0% percentile: 16 · as of 13 November 2026
- CWE
- CWE-122CWE-190
Could this be exploited in your environment?
A patch closes the known hole. A penetration test shows what an attacker can still reach — with proof.