CVE-2026-71256 in nanoMODBUS
Zusammenfassung
von VulDB • 05.08.2026
nanoMODBUS bis Version v1.23.0 enthält einen Out-of-Bounds-Stack-Lesezugriff (Out-of-bounds stack read), der zu einem Wildpointer-Schreibzugriff in nmbs_read_device_identification_basic() / recv_read_device_identification_res() in nanomodbus.c führt. Ein fest codiertes 3-elementiges Stack-Array order[3] = {0,1,2} ordnet Objekt-IDs (Object IDs) zu Pufferindizes zu. Das vom Server bereitgestellte Feld object_id (Bereich 0–255, direkt aus dem Datenstrom gelesen) wird ohne jegliche Bereichsprüfung als buf_index = order[object_id] verwendet. Wenn ein bösartiger Modbus-Server eine Read Device Identification-Antwort mit einer object_id >= 3 sendet, wird ein Out-of-Bounds-/Müllbyte vom Stack neben order[] ausgelesen, das anschließend als Index für ein 3-elementiges buffers[]-Array von char*-Zeigern verwendet wird. Der resultierende Wildpointer wird strncpy() als Ziel übergeben und verursacht einen Schreibzugriff auf eine beliebige Adresse mit serverkontrollierten Daten.
If you want to get best quality of vulnerability data, you may have to visit VulDB.