W kontrolerach OpenPLC V2 i V3 odkryto podatność typu buffer overflow w funkcji mapUnusedIO() pliku modbus.cpp. Błąd umożliwia awaryjne zatrzymanie sterownika PLC lub wywołanie bliżej nieokreślonych innych skutków, co w środowiskach przemysłowych stanowi poważne zagrożenie dla ciągłości działania.
▸ Pokaż oryginał (EN)
A buffer overflow vulnerability was discovered in the OpenPLC controller, in the OpenPLC_v2 and OpenPLC_v3 versions. It occurs in the modbus.cpp mapUnusedIO() function, which can cause a runtime crash of the PLC or possibly have unspecified other impact.
Podatność wynika z nieprawidłowej obsługi pamięci (CWE-119) w funkcji mapUnusedIO() w module komunikacji Modbus. Atakujący może spowodować przepełnienie bufora przez wysłanie odpowiednio spreparowanych danych do kontrolera, co prowadzi do naruszenia integralności pamięci procesu. Skutkiem może być natychmiastowa awaria (crash) środowiska uruchomieniowego PLC lub potencjalnie inne niezdefiniowane w opisie działania.
Atakujący może doprowadzić do awaryjnego zatrzymania sterownika PLC (odmowa usługi) lub osiągnąć niezidentyfikowany inny wpływ na system, co przy ocenie CVSS 9.8 sugeruje możliwość naruszenia poufności, integralności i dostępności.
Należy zastosować patche dostępne u producenta zgodnie z referencjami. Dodatkowo zaleca się ograniczenie dostępu sieciowego do sterowników PLC (segmentacja sieci, firewall) oraz monitorowanie ruchu Modbus pod kątem anomalii.
OpenPLC V2 (OpenPLC_v2) oraz OpenPLC V3 (OpenPLC_v3) wraz z odpowiadającymi im wersjami firmware — dotyczy produktów Openplcproject OpenPLC V2 Firmware, Openplcproject OpenPLC V2, Openplcproject OpenPLC V3 Firmware, Openplcproject OpenPLC V3
Szczegóły podatności zostały opisane w publikacji naukowej dostępnej pod adresem https://arxiv.org/pdf/1809.07477. Podatność dotyczy środowisk OT/ICS, gdzie awaria sterownika PLC może mieć bezpośredni wpływ na procesy fizyczne.
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HOpenplcproject Openplc V2
HWOpenplcprojectwszystkie wersjeOpenplcproject Openplc V2 Firmware
OSOpenplcprojectwszystkie wersjeOpenplcproject Openplc V3
HWOpenplcprojectwszystkie wersjeOpenplcproject Openplc V3 Firmware
OSOpenplcprojectwszystkie wersje
Powiązane podatności
OpenPLC V3 — pominięcie uwierzytelnienia przez niezabezpieczoną domyślną inicjalizację
OpenPLC V3 — przechowywanie haseł w postaci jawnego tekstu (CWE-256)
Stack-based buffer overflow w OpenPLC V3 — RCE przez EtherNet/IP
OpenPLC_V3 REST API endpoint checks for JWT presence but never verifies the caller's role. Any authenticated u...
An out-of-bounds read vulnerability exists in the OpenPLC Runtime EtherNet/IP PCCC parser functionality of Ope...