CVE-2026-45130: neovim Heap-based Buffer Overflow
Vulnerability summary
CVE-2026-45130 is a medium (CVSS 6.6) Heap-based Buffer Overflow vulnerability in neovim. EPSS estimates a 0.20% chance of exploitation in the next 30 days, higher than 8.8% of scored vulnerabilities. 1 public exploit is recorded.
Advisory lineage
Upstream 0 · Downstream 6 · Related 4Timeline
- 08-05-2026PublishedVulnerability first disclosed.
- 14-05-2026Last modifiedVulnerability information updated.
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.
CVSS metrics
5 scores · 5 sources · 1 version- OSV · AlpineEcosystem advisory · calculated5.5MediumCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:HDiffers
- OSV · UbuntuEcosystem advisory · calculated5.5MediumCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:HDiffers
- OSV · DebianEcosystem advisory · calculated5.5MediumCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:HDiffers
- NVDNIST5.5MediumCVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:HDiffers
EPSS trend
Probability
0.20%
Chance of exploitation in the next 30 days
Percentile
9%
Versus all other CVEs
30-day change
-0.05 pp
From 0.25% on 19-09-2026
Known exploited
Compare KEV catalogsNot in any of the 3 tracked catalogs.
Public exploits
1 foundVim
Maturity: poc
Weaknesses
CWE · root cause- CWE-122Heap-based Buffer OverflowA heap overflow condition is a buffer overflow, where the buffer that can be overwritten is allocated in the heap portion of memory, generally meaning that the buffer was allocated using a routine such as malloc().
- CWE-190Integer Overflow or WraparoundThe product performs a calculation that can produce an integer overflow or wraparound when the logic assumes that the resulting value will always be larger than the original value. This occurs when an integer value is incremented to a value that is too large to store in the associated representation. When this occurs, the value may become a very small or negative number.
Affected systems
Alpine1 product
- vim< 9.2.0452-r0
Debian1 product
- vimAll versions (No fix recorded) | < 2:9.2.0461-1
Neovim1 product
- neovim≤ 0.12.2
Ubuntu1 product
- vim< 2:7.4.052-1ubuntu3.1+esm26 | < 2:7.4.1689-3ubuntu1.5+esm32 | < 2:8.0.1453-1ubuntu1.13+esm17 | < 2:8.1.2269-1ubuntu5.32+esm5 | < 2:8.2.3995-1ubuntu2.30 | < 2:9.1.0016-1ubuntu7.14 | < 2:9.1.0967-1ubuntu6.5 | < 2:9.1.2141-1ubuntu4.2
Vim1 product
- vim< 9.2.0450
5 vendors · 5 products
References
10 links- github.com/vim/vim/security/advisories/GHSA-q4jv-r9gj-6cwvX Refsource CONFIRMREPORTExploitPatchVendor Advisory