PT-2026-110962 · Gnu · Aspell

·

CVE-2026-103658

·

Published

2026-10-12

·

Updated

2026-10-12

CVSS v3.1

5.9

Medium

VectorAV:L/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
Name of the Vulnerable Software and Affected Versions GNU Aspell versions prior to 0.60.8.3
Description A heap-based buffer overflow write exists in the read-only dictionary loader. The String::reserve() function in common/string.hpp performs a capacity check using a signed integer ((int)s + 1), which allows a requested size of 0x7FFFFFFF to wrap to a negative value, preventing the backing buffer from growing. The ReadOnlyDict::load() function in modules/speller/default/readonly ws.cpp passes unvalidated 32-bit size fields from a .rws dictionary header into this path. Consequently, a crafted .rws file containing a valid endian marker and an oversized length field, such as lang name size set to 0x7FFFFFFF, allows attacker-controlled data to be written out of bounds past an undersized heap allocation. This can lead to heap memory corruption, resulting in denial of service or potential code execution if a victim is induced to load a malicious dictionary.
Recommendations Update to version 0.60.8.3.

Fix

Heap Based Buffer Overflow

Found an issue in the description? Have something to add? Feel free to write us 👾

Weakness Enumeration

Related Identifiers

CVE-2026-103658

Affected Products

Aspell