CRITICAL🇬🇧 English

CVE-2026-51541

Out-of-bounds read w OpENer 2.3.0 — parsowanie wiadomości CIP/ENIP

CVSS 9.1pub. 2026-07-13upd. 2026-08-11

OpENer 2.3.0 zawiera podatność typu out-of-bounds read (CWE-125) w mechanizmie parsowania wiadomości CIP, umożliwiającą zdalne odczytanie danych spoza bufora stosu oraz potencjalne wywołanie odmowy usługi. Podatność jest krytyczna ze względu na brak wymagań uwierzytelnienia i sieciowy wektor ataku.

Pokaż oryginał (EN)

OpENer 2.3.0 (commit 76b95cf) has an out-of-bounds read issue in CIP message parsing when handling malformed explicit requests with a forged EPath size. An attacker can send a valid ENIP SendRRData frame carrying a very short CIP payload whose path_size field claims that many more path words are present than are actually available. Because the parser trusts the attacker-controlled path_size and continues decoding path segments without a remaining-length boundary, it reads beyond the end of the stack receive buffer.

🤖 Analiza AI
Jak działa

Atakujący wysyła poprawnie sformatowaną ramkę ENIP SendRRData zawierającą celowo skrócony payload CIP, w którym pole path_size deklaruje znacznie więcej słów ścieżki (path words) niż faktycznie dostępnych w danych. Parser w OpENer bezkrytycznie ufa wartości path_size kontrolowanej przez atakującego i kontynuuje dekodowanie segmentów ścieżki bez sprawdzania granicy pozostałej długości bufora. W efekcie odczyt wychodzi poza koniec stosu bufora odbiorczego, co stanowi klasyczny out-of-bounds read.

Skutki

Atakujący może zdalnie odczytać fragmenty pamięci stosu procesu (ujawnienie poufnych danych, np. adresów pamięci lub danych sesji) oraz spowodować awarię aplikacji i niedostępność usługi (Denial of Service).

Mitygacja

Należy zastosować patche dostępne u producenta zgodnie z referencjami. Monitorowanie zgłoszenia: https://github.com/EIPStackGroup/OpENer/issues/582. Do czasu wydania poprawki zaleca się ograniczenie dostępu sieciowego do urządzeń korzystających z OpENer (segmentacja sieci, firewall blokujący ruch ENIP/CIP z niezaufanych źródeł).

Kogo dotyczy

OpENer 2.3.0 (commit 76b95cf)

Uwagi

Dostępny jest publiczny proof-of-concept opisujący wektor ataku: https://gist.github.com/MrAlaskan/705c680856e48c535148265c0899ad4b

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H
  • Opener Project Opener

    APP
    Opener Project
    2.3.0
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
Memory
CWE
Referencje

Powiązane podatności

CVE-2026-51540CRITICAL9.8PL ✓ten sam produkt

Integer underflow w OpENer 2.3.0 — krytyczne uszkodzenie pamięci (RCE)

CVE-2026-51537CRITICAL9.1PL ✓ten sam produkt

Out-of-bounds read w EIPStackGroup OpENer — przetwarzanie ForwardOpen

CVE-2026-51536CRITICAL9.1PL ✓ten sam produkt

Stack Buffer Overflow w OpENer 2.3.0 przy parsowaniu pakietów CIP

CVE-2026-51538CRITICAL9.1PL ✓ten sam produkt

Błędna kontrola dostępu w OpENer — przejęcie sesji encapsulation

CVE-2022-43604CRITICAL10.0PL ✓ten sam produkt

RCE przez out-of-bounds write w OpENer EtherNet/IP Stack