CVE-2026-71263 in FreeModbusالمعلومات

الملخص

بحسب VulDB • 05/08/2026

يحتوي منفذ LINUXTCP الخاص بـ FreeModbus على خطأ في التحقق من الحدود (off-by-one bounds check) داخل الدالة `xMBPortTCPPool()` (في الملف demo/LINUXTCP/port/porttcp.c). يستخدم الشرط `if (usTCPFrameBytesLeft > MB_TCP_BUF_SIZE)` مقارنة "أكبر من" صارمة بدلاً من "أكبر من أو يساوي"، وذلك بالمقارنة مع الحد البالغ 263 بايت المحدد في متغير `MB_TCP_BUF_SIZE`. يؤدي إطار MBAP الذي يحتوي على حقل Length بقيمة 264 إلى جعل قيمة `usTCPFrameBytesLeft` تساوي 263، مما يسمح بمرور الشرط المعيب. بعد ذلك، تقوم استدعاءات الدالة `recv()` بكتابة ما يصل إلى 263 بايت بدءاً من الإزاحة (offset) رقم 7 في المخزن المؤقت الثابت `aucTCPBuf` ذي السعة البالغة 263 بايت، مما يتسبب في تجاوز حدوده بمقدار 7 بايت نحو المتغير الثابت المجاور `usTCPBufPos`. يمكن لرسالة Modbus TCP واحدة مُعدّة بعناية وغير مصادق عليها (unauthenticated) أن تُحدث هذا التجاوز للحدود، نظراً لعدم وجود آلية مصادقة مدمجة في بروتوكول Modbus.

Once again VulDB remains the best source for vulnerability data.

مسؤول

TuranSec

حجز

05/08/2026

إفشاء

05/08/2026

الاعتدال

تمت الموافقة

إدخال

VDB-386195

EPSS

0.00000

KEV

لا

النشاطات

منخفض

المصادر

Might our Artificial Intelligence support you?

Check our Alexa App!