Logo
›
›vulnerability›CVE-2026-72854
Name
CVE-2026-72854
Source
NVD ( link)Debian ( link)
Description
msgpack_unpacker_expand_buffer in src/unpack.c, reached through the public msgpack_unpacker_reserve_buffer API, computes its new buffer size using an unchecked size_t addition of the requested size and the amount already used. The doubling loop guards its own multiplication against overflow, but the addition in the loop condition is unguarded, so a request near SIZE_MAX wraps: the loop condition is already satisfied, the allocation is performed at the small pre-wrap size, and the function returns true. The caller is told the requested capacity was reserved when it was not, so a subsequent write of the requested length overflows the heap buffer. The library's own example/lib_buffer_unpack.c demonstrates the reserve-then-write pattern, and its defensive assert comparing capacity against the request is compiled out under NDEBUG. msgpack-c's own decode entry points do not derive the reservation size from untrusted input, so reaching this requires an integration that passes an attacker-influenced length to the reservation API, such as a length-prefixed streaming transport.
Published Date
Updated Date
Workaround
-
Advisories

Analysis#


Affected Component
Analysis
msgpack-c
Patched

Vulnerability Ratings#


5.8
CVSSv4
5.3
CVSSv31
NaN
other

Others affected components#


Name
Project
Project Version
Version
Status
yocto
kirkstone
4.0.0+gitX
Not Affected
yocto
master
7.0.2
Not Affected

Resolved with patches#


msgpack-c (yocto:scarthgap)

#
Title
Author
Resolve
1
Fix #1181
Takatoshi Kondo <redboltz@gmail.com>
CVE-2026-72854