Vim is an open source, command line text editor. Prior to 9.2.0662, the dump_prefixes() function in src/spell.c walks a spell-file prefix trie iteratively with a depth counter while dumping the prefixes that apply to a word. The counter is bounded only by the trie structure itself; it is never checked against the size of the fixed MAXWLEN-element stack arrays it indexes (prefix[], arridx[], curi[]). A crafted .spl file, loaded when the user dumps the word list, can drive the descent arbitrarily deep, so the function writes past the end of those arrays. This is a stack out-of-bounds write that corrupts the call frame and crashes the editor. This vulnerability is fixed in 9.2.0662.
{
"cwe_ids": [
"CWE-787"
],
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/55xxx/CVE-2026-55892.json",
"cna_assigner": "GitHub_M"
}{
"cpe": "cpe:2.3:a:vim:vim:*:*:*:*:*:*:*:*",
"source": [
"CPE_RANGE",
"REFERENCES"
],
"extracted_events": [
{
"introduced": "0"
},
{
"fixed": "9.2.0662"
}
]
}"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-55892.json"
"2026-07-15T17:32:53Z"
[
{
"deprecated": false,
"source": "https://github.com/vim/vim/commit/8325b193bba5f01e7a7d8241fc8633d93dff996b",
"target": {
"function": "dump_prefixes",
"file": "src/spell.c"
},
"digest": {
"function_hash": "334793647741640667995251535069290878109",
"length": 1542.0
},
"signature_type": "Function",
"signature_version": "v1",
"id": "CVE-2026-55892-0261e4a7"
},
{
"deprecated": false,
"source": "https://github.com/vim/vim/commit/8325b193bba5f01e7a7d8241fc8633d93dff996b",
"target": {
"file": "src/spell.c"
},
"digest": {
"line_hashes": [
"216628819176825603862908918242355201886",
"333074141710635353878506192750459148821",
"32660459501540465488005273244602404504",
"212902656966346928419672052497389660776"
],
"threshold": 0.9
},
"signature_type": "Line",
"signature_version": "v1",
"id": "CVE-2026-55892-298dcc86"
},
{
"deprecated": false,
"source": "https://github.com/vim/vim/commit/8325b193bba5f01e7a7d8241fc8633d93dff996b",
"target": {
"file": "src/version.c"
},
"digest": {
"line_hashes": [
"146200493773228420153804765641940418619",
"157911364333916518248524786816726381215",
"24575966281815936174817727457434548621",
"8440143995047726451460244665016146235"
],
"threshold": 0.9
},
"signature_type": "Line",
"signature_version": "v1",
"id": "CVE-2026-55892-8aaa306b"
}
]