{"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 involves an out-of-bounds stack read in nanoMODBUS v1.23.0, allowing a wild-pointer write that can lead to severe system vulnerabilities.","exploitability":"Exploitation is relatively straightforward given the direct use of unbounded object_id without validation, requiring only a crafted packet with an object_id value greater than 2.","blast_radius":"If exploited, this flaw could result in arbitrary code execution or data corruption on affected systems, leading to significant operational disruptions.","remediation":"Update to the latest version of nanoMODBUS that includes the necessary bounds checking and security patches.","tags":["rce","stack-overflow","modbus","ics"],"model":"qwen2.5:7b-instruct","analyzedAt":"2026-08-11T06:43:30.357Z"}}