CVE-2026-32249
ŚrednieCVSS 5.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 3 - wyżej niż 3% wszystkich znanych CVE
Streszczenie
W Vimie, kompilator wyrażeń regularnych NFA, podczas napotkania kolekcji zawierającej znak kombinujący jako punkt końcowy zakresu znaków (np. [0-0\u05bb]), nieprawidłowo emituje bajty składowe tego znaku jako osobne stany NFA. Prowadzi to do uszkodzenia stosu postfiksowego NFA, co skutkuje błędem segmentacji (segfault) podczas szacowania szerokości dopasowania dla asercji look-behind. Luka została naprawiona w wersji 9.2.0137.
Ocena ryzyka
Podatność może spowodować awarię Vima (segfault) podczas przetwarzania specjalnie spreparowanych wyrażeń regularnych, co prowadzi do odmowy usługi.
Rekomendacja
Zaleca się aktualizację Vima do wersji 9.2.0137 lub nowszej.
Oryginalny opis (angielski, źródło NVD)
Vim is an open source, command line text editor. From 9.1.0011 to before 9.2.0137, Vim's NFA regex compiler, when encountering a collection containing a combining character as the endpoint of a character range (e.g. [0-0\u05bb]), incorrectly emits the composing bytes of that character as separate NFA states. This corrupts the NFA postfix stack, resulting in NFA_START_COLL having a NULL out1 pointer. When nfa_max_width() subsequently traverses the compiled NFA to estimate match width for the look-behind assertion, it dereferences state->out1->out without a NULL check, causing a segmentation fault. This vulnerability is fixed in 9.2.0137.

