CRITICAL🇬🇧 English

CVE-2026-54466

Błąd parsowania długości ramki WebSocket w websocket-driver (draft75)

CVSS 9.2v4.0pub. 2026-07-17upd. 2026-08-06

Biblioteka websocket-driver w wersjach przed 0.7.5 jest podatna na błąd parsowania nagłówka długości ramki w przestarzałym protokole WebSocket (wersje draft). Atakujący bez uwierzytelnienia może doprowadzić do nieprawidłowego przetwarzania danych przez serwer, co zagraża integralności przetwarzanych wiadomości.

Pokaż oryginał (EN)

websocket-driver is a WebSocket protocol handler with pluggable I/O. Prior to 0.7.5, the frame format in draft versions of the WebSocket protocol includes a length header that allows an arbitrarily large integer to be encoded as a sequence of bytes with the high bit set. By sending an indefinite sequence of bytes with values 0x80 or above, a client can make the server parse these bytes into an ever-growing integer in lib/websocket/driver/draft75.js; because JavaScript numbers are 64-bit floating point values, this number will eventually lose precision and lead to the subsequent payload being parsed incorrectly. This issue is fixed in version 0.7.5.

🤖 Analiza AI
Jak działa

Format ramki w wersji draft protokołu WebSocket pozwala na kodowanie długości payloadu jako sekwencji bajtów z ustawionym najwyższym bitem. Wysyłając nieograniczoną sekwencję bajtów o wartościach 0x80 lub wyższych, klient zmusza serwer do parsowania ich jako coraz większej liczby całkowitej w pliku lib/websocket/driver/draft75.js. Ponieważ liczby w JavaScript są 64-bitowymi wartościami zmiennoprzecinkowymi, po przekroczeniu pewnej wielkości następuje utrata precyzji. W konsekwencji kolejny payload jest parsowany nieprawidłowo, co prowadzi do błędnej interpretacji danych przez serwer.

Skutki

Atakujący może spowodować nieprawidłowe parsowanie i przetwarzanie danych po stronie serwera, naruszając integralność obsługiwanych wiadomości WebSocket, zarówno lokalnie, jak i w systemach powiązanych.

Mitygacja

Należy zaktualizować bibliotekę websocket-driver do wersji 0.7.5 lub nowszej. Patch dostępny jest w repozytorium projektu na GitHub (commit 5b197ca874dab58e96cacad8a3c256797d804680).

Kogo dotyczy

Biblioteka websocket-driver (pakiet npm: websocket-driver) w wersjach przed 0.7.5, projekt faye/websocket-driver-node

Uwagi

Podatność dotyczy obsługi przestarzałych wersji draft protokołu WebSocket (implementacja draft75). Podatność została naprawiona w wersji 0.7.5 zgodnie z oficjalnym security advisory projektu (GHSA-xv26-6w52-cph6). CWE-130 odnosi się do nieprawidłowej obsługi wartości długości przy parsowaniu danych.

CVSS Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:N/SC:N/SI:H/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
  • Faye Websocket Driver

    APP
    Faye
    < 0.7.5
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
CWE
Referencje

Powiązane podatności

CVE-2026-54463MEDIUM6.9ten sam produkt

websocket-driver to obsługiwacz protokołu WebSocket z wtyczką I/O. W wersjach wcześniejszych niż 0.8.1, wersje...

CVE-2026-54465MEDIUM6.3ten sam produkt

websocket-driver to handler protokołu WebSocket z konfigurowalnym I/O. Przed wersją 0.8.1, gdy websocket-drive...