返回列表

msgpack5: Truncated map32 headers throw an unexpected error

CVE-2026-107302RCE2026-10-08

漏洞描述

### Impact A truncated `map32` header causes an out-of-bounds buffer read and throws `RangeError` instead of `IncompleteBufferError`. Applications that rely on `IncompleteBufferError` to wait for additional bytes may terminate a request, stream, or worker unexpectedly. No adjacent memory is disclosed because the buffer implementation checks bounds. ### Patches The decoder now validates the complete five-byte `map32` header before reading its length and reports truncated input as `IncompleteBufferError`. ### Workarounds Require at least five bytes before decoding a value beginning with `0xdf`, or catch `RangeError` and treat it as incomplete input only for truncated `map32` headers. Source Code Location: https://github.com/mcollina/msgpack5 Affected Packages: - npm:msgpack5, affected < 6.1.0, patched in 6.1.0 CWEs: - CWE-125: Out-of-bounds Read CVSS: - Primary: score 7.5, CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H - CVSS_V3: score 7.5, CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H References: - https://github.com/mcollina/msgpack5/security/advisories/GHSA-8f34-f56x-9xph - https://github.com/mcollina/msgpack5/commit/15443a1f2aa682a6aa37f1705ac628de5b866ad1 - https://github.com/mcollina/msgpack5/releases/tag/v6.1.0 - https://github.com/advisories/GHSA-8f34-f56x-9xph

查看原文