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.
References (4)
Core 4
Core References
X_Refsource_Confirm x_refsource_confirm
https://github.com/vim/vim/security/advisories/GHSA-q4jv-r9gj-6cwv
X_Refsource_Misc x_refsource_misc
https://github.com/vim/vim/commit/92993329178cb1f72d700fff45ca86e1c2d369f8
X_Refsource_Misc x_refsource_misc
https://github.com/vim/vim/releases/tag/v9.2.0450
Scores
CVSS v3
6.6
EPSS
0.0000
EPSS Percentile
0.2%
Attack Vector
LOCAL
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:L/I:L/A:H
CISA SSVC
Vulnrichment
Exploitation
none
Automatable
no
Technical Impact
partial
Details
CWE
CWE-122
CWE-190
Status
published
Products (1)
vim/vim
< 9.2.0450 (2 CPE variants)
Published
May 08, 2026
Tracked Since
May 09, 2026