{"id":"CVE-2026-71256","published":"2026-08-05T12:18:57.847","lastModified":"2026-08-10T12:17:28.177","description":"nanoMODBUS through v1.23.0 contains an out-of-bounds stack read leading to a wild-pointer write in nmbs_read_device_identification_basic / recv_read_device_identification_res in nanomodbus.c. A fixed 3-element stack array order[3] = {0,1,2} maps object IDs to buffer indices. The server-supplied object_id field (0-255, read directly from the wire) is used without any bounds check as buf_index = order[object_id].","cvssScore":9.8,"cvssSeverity":"CRITICAL","cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","cwes":["CWE-125"],"vendors":[],"products":[],"references":[{"url":"https://github.com/debevv/nanoMODBUS","tags":[]},{"url":"https://github.com/debevv/nanoMODBUS/blob/master/nanomodbus.c","tags":[]}],"exploitRefs":[{"url":"https://github.com/debevv/nanoMODBUS","tags":[]},{"url":"https://github.com/debevv/nanoMODBUS/blob/master/nanomodbus.c","tags":[]}],"hasPoc":true,"ai":{"summary":"The flaw in nanoMODBUS allows an out-of-bounds stack read, leading to a potential wild-pointer write. This can be exploited by an attacker to gain unauthorized access or cause system instability.","exploitability":"Exploitation is relatively easy given the lack of bounds checking. An attacker needs to send a crafted object_id value (0-255) to trigger the vulnerability.","blast_radius":"If exploited, the impact could be severe, potentially leading to remote code execution or system compromise.","remediation":"Upgrade to nanoMODBUS v1.23.1 or later.","detection":"No reliable host or network indicator is derivable from the published description.","tags":["rce","stack-overflow","modbus","ics"],"model":"qwen2.5:7b-instruct","analyzedAt":"2026-09-28T09:00:20.401Z"}}