Skip to content
OpenAdvisories
Medium · 6.6 CVE-2026-55586 EUVD-2026-63469

SumatraPDF: Heap out-of-bounds write in vendored CHMLib LZX Huffman table construction reachable from crafted CHM files

Published Aug 20, 2026 · Updated Aug 21, 2026 · Assigned by GitHub_M

Description

SumatraPDF is a multi-format reader for Windows. In 3.6.1 and earlier, a crafted CHM file can supply malformed LZX Huffman code lengths to make_decode_table in ext/CHMLib/lzx.c. In the long-code branch, the function writes new internal nodes through next_symbol before validating that the canonical Huffman table has overflowed. The PRETREE case can write beyond the 104-entry PRETREE_table into adjacent heap state in struct LZXstate when reached through chm_open, chm_retrieve_object, LZXdecompress, and BUILD_TABLE. This produces heap memory corruption in the parser process, while arbitrary code execution has not been demonstrated. No fixed version is available as of this review.

Affected products

VendorProductAffectedFixed
sumatrapdfreader sumatrapdf <= 3.6.1rel —

References