{"id":14830,"date":"2026-09-04T19:02:14","date_gmt":"2026-09-04T11:02:14","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-11826"},"modified":"2026-09-04T19:02:14","modified_gmt":"2026-09-04T11:02:14","slug":"cve-2026-11826","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-11826","title":{"rendered":"CVE-2026-11826 [HIGH] &#8211; OpenPLC_v3 contains a heap-based buffer overflow in the getData() function in webserver\/co"},"content":{"rendered":"<p>OpenPLC_v3 contains a heap-based buffer overflow in the getData() function in webserver\/core\/modbus_master.cpp. getData() reads characters between two delimiters into a caller-supplied buffer with no size parameter and no bounds check. In parseConfig() the function is invoked with the 100-byte heap-allocated MB_device.dev_name field. An authenticated attacker with access to the OpenPLC web interface can send a crafted HTTP POST to the \/modbus endpoint with an oversized device_name value; the value is persisted to mbconfig.cfg and parsed on load, overflowing dev_name and overwriting adjacent struct fields (protocol at offset 108, dev_address at offset 109, ip_port at offset 210). A 200-byte payload writes 100 bytes past the allocation. The result is heap corruption leading to runtime crash and denial of service of the PLC process control loop, with attacker-controlled overwrite of adjacent configuration fields. The upstream repository was archived on 2026-04-04 and no fix is expected; the vendor has confirmed the issue does not affect OpenPLC Runtime v4.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>OpenPLC_v3 contains a heap-based buffer overflow in the getData() function in webserver\/core\/modbus_master.cpp. getData() reads characters between two delimiters into a caller-supplied buffer with no <\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-14830","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/14830","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln"}],"about":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/types\/vuln"}],"wp:attachment":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=14830"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=14830"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=14830"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}