CVE-2026-71263 in FreeModbusthông tin

Tóm tắt

Bởi VulDB • 05/08/2026

Port LINUXTCP của FreeModbus chứa lỗi kiểm tra giới hạn sai lệch một đơn vị (off-by-one) trong hàm `xMBPortTCPPool()` (demo/LINUXTCP/port/porttcp.c). Kiểm tra `if (usTCPFrameBytesLeft > MB_TCP_BUF_SIZE)` sử dụng phép so sánh lớn hơn nghiêm ngặt thay vì lớn hơn hoặc bằng với giới hạn 263 byte của `MB_TCP_BUF_SIZE`. Một khung MBAP có trường Length là 264 khiến `usTCPFrameBytesLeft` bằng 263, vượt qua kiểm tra lỗi này; lệnh gọi hàm `recv()` tiếp theo ghi tối đa 263 byte bắt đầu từ offset bộ nhớ 7 vào vùng đệm tĩnh `aucTCPBuf` kích thước 263 byte, gây tràn bộ nhớ (buffer overflow) thêm 7 byte sang biến tĩnh liền kề là `usTCPBufPos`. Một gói tin Modbus TCP duy nhất được tạo ra đặc biệt và không xác thực sẽ kích hoạt lỗi tràn này, vì giao thức Modbus không có cơ chế xác thực tích hợp sẵn.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

chịu trách nhiệm

TuranSec

Đặt trước

05/08/2026

Tiết lộ

05/08/2026

Kiểm duyệt

được chấp nhận

EPSS

0.00000

KEV

không

Các hoạt động

thấp

Nguồn

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!