Impact
The vulnerability is an out-of-bounds write in the Modbus server function handle_read_file_record(). Because the cumulative response size is not validated, an attacker can supply up to 35 malformed sub‑requests with record_length 124, causing the uint8_t accumulator to overflow. This overflow allows the server to write up to roughly 8.5 KB past the 260‑byte receive buffer, corrupting adjacent memory. On embedded or bare‑metal targets without memory protection the corruption can lead to a denial of service or even permit remote code execution. The weakness is a classic buffer overflow (CWE‑787).
Affected Systems
This flaw affects the nanoMODBUS server developed by debevv. All releases up to and including version 1.23.0 are vulnerable. The issue is present in the file nanomodbus.c and is triggered by Modbus function code 0x14 (Read File Record). No other vendors or versions were listed.
Risk and Exploitability
The flaw has a CVSS score of 9.1, indicating critical severity. EPSS is not reported, but the vulnerability can be exploited by sending a crafted FC 0x14 request from any unauthenticated client over the network. Because no authentication or permission checks are needed, the attack can be performed against any reachable nanoMODBUS instance. The lack of a KEV listing suggests it is not yet widely exploited, but the high severity and ease of exploitation mean that the risk remains significant.
OpenCVE Enrichment