Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

github логотип

GHSA-hf5h-hh56-3vrg

Опубликовано: 01 сент. 2020
Источник: github
Github: Прошло ревью

Описание

Denial of Service in uws

Affected versions of uws do not properly handle large websocket messages when permessage-deflate is enabled, which may result in a denial of service condition.

If uws recieves a 256Mb websocket message when permessage-deflate is enabled, the server will compress the message prior to executing the length check, and subsequently extract the message prior to processing. This can result in a situation where an excessively large websocket message passes the length checks, yet still gets cast from a Buffer to a string, which will exceed v8's maximum string size and crash the process.

Recommendation

Update to version 0.10.9 or later.

Alternatively, disable permessage-deflate.

Пакеты

Наименование

uws

npm
Затронутые версииВерсия исправления

>= 0.10.0, <= 0.10.8

0.10.9

EPSS

Процентиль: 62%
0.00433
Низкий

Дефекты

CWE-400

Связанные уязвимости

CVSS3: 5.9
nvd
больше 7 лет назад

uws is a WebSocket server library. By sending a 256mb websocket message to a uws server instance with permessage-deflate enabled, there is a possibility used compression will shrink said 256mb down to less than 16mb of websocket payload which passes the length check of 16mb payload. This data will then inflate up to 256mb and crash the node process by exceeding V8's maximum string size. This affects uws >=0.10.0 <=0.10.8.

EPSS

Процентиль: 62%
0.00433
Низкий

Дефекты

CWE-400