CVE-2026-57455CWE-787

Vim: Stack out-of-bounds write in `spell_soundfold_sofo()` via an over-length `soundfold()` argument

Medium · published June 25, 2026

CVSS v4.0
4.0
EPSS
0%
Percentile
1.6
In the wild
Unconfirmed
What it is

Vim is an open source, command line text editor. Prior to 9.2.0698, the single-byte branch of spell_soundfold_sofo() in src/spell.c translates a word through a spell file's SOFO (sound-folding) byte map into a caller-owned result buffer. Its copy loop advances the output index ri with no upper bound and terminates only on the input NUL, writing one byte per input byte into the MAXWLEN-element stack buffer the caller provides. A word longer than MAXWLEN, passed to soundfold() (or reached via sound-based spell suggestion) while a SOFO-based spell language is active, therefore writes past the end of that buffer. This is a stack out-of-bounds write that corrupts the call frame and crashes the editor. This vulnerability is fixed in 9.2.0698.

The record
Technical detail
CVSS v4.0
4.0 · MEDIUM
Vector
CVSS:4.0/AV:L/AC:H/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:U
EPSS
0.00118 · 1.6th percentile
Weakness
CWE-787 · Out-of-bounds Write
Published
2026-06-25T15:22Z
EPSS history
Timeline
  • 25 JUN 15:22Z
    Vim: Stack out-of-bounds write in `spell_soundfold_sofo()` via an over-length `soundfold()` argument
    cvelistv5