CVE-2026-102692 PUBLISHED

RIOT: Potential integer overflow in nanocoap Block2 handling leading to out-of-bounds memory access

Assigner: GitHub_M
Reserved: 29.09.2026 Published: 16.10.2026 Updated: 16.10.2026

RIOT is an open-source microcontroller operating system designed for Internet of Things devices and other embedded systems. Prior to 2026.07, nanocoap accepts oversized CoAP Block2 option values without enforcing the 20-bit maximum block number, allowing block offset multiplication to overflow on 32-bit targets. The affected master baseline is commit aeeae69e; the verified fix is later on master and remains unreleased. The oversized value passes from coap_get_blockopt() to coap_block_slicer_init(). A remote CoAP client can send a malformed Block2 option that produces an invalid slice range and can cause out-of-bounds memory access, denial of service, or memory corruption. This vulnerability is fixed in 2026.07.

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H
CVSS Score: 9.1

Product Status

Vendor RIOT-OS
Product RIOT
Versions
  • Version < 2026.07 is affected

References

Problem Types

  • CWE-190: Integer Overflow or Wraparound CWE
  • CWE-787: Out-of-bounds Write CWE