| Name | CVE-2026-55693 |
| Description | Vim is an open source, command line text editor. Prior to 9.2.0653, the tree_count_words() function in src/spellfile.c fills in the word-count fields of a spell-file word trie by walking it iteratively with a depth counter. 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 (arridx[], curi[], wordcount[]). A crafted .spl/.sug file pair, loaded when the user invokes spell suggestion, 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.0653. |
| Source | CVE (at NVD; CERT, ENISA, LWN, oss-sec, fulldisc, Debian ELTS, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more) |
| References | DSA-6600-1 |
| Debian Bugs | 1140775 |
The table below lists information on source packages.
| Source Package | Release | Version | Status |
|---|---|---|---|
| vim (PTS) | bookworm | 2:9.0.1378-2+deb12u2 | vulnerable |
| trixie | 2:9.1.1230-2 | vulnerable | |
| trixie (security) | 2:9.1.1230-2+deb13u1 | fixed | |
| forky, sid | 2:9.2.0858-1 | fixed |
The information below is based on the following data on fixed versions.
| Package | Type | Release | Fixed Version | Urgency | Origin | Debian Bugs |
|---|---|---|---|---|---|---|
| vim | source | trixie | 2:9.1.1230-2+deb13u1 | DSA-6600-1 | ||
| vim | source | (unstable) | 2:9.2.0782-1 | 1140775 |
https://github.com/vim/vim/security/advisories/GHSA-wgh4-64f7-q3jq
Fixed by: https://github.com/vim/vim/commit/a80874d9b84a01040e3d1aef2d4a59e1934dafb7 (v9.2.0653)