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

exploitDog

github логотип

GHSA-gmgx-hhg5-43gr

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

Описание

Web-MQTT decompression bomb

Origin

This vulnerability was identified by Team RabbitMQ and/or other teams at Broadcom, not via a responsible disclosure from an external researcher.

Source references

deps/rabbitmq_web_mqtt/src/rabbit_web_mqtt_handler.erl:117 · Decompression Bomb DoS

Impact

An unauthenticated attacker can crash a RabbitMQ node running the Web-MQTT plugin by sending a single highly-compressed WebSocket frame (a few KB on the wire) that inflates to gigabytes in memory. The cowboy WebSocket handler decompresses the entire frame before the MQTT CONNECT packet is processed, so no credentials are required.

Description

The cowboy WebSocket options at line 117 set compress => true, enabling RFC 7692 permessage-deflate negotiation. The handler does not set max_frame_size, so cowboy's default of infinity applies. cowlib's cow_ws:parse_payload/9 calls zlib:inflate/2 on the compressed payload with no output-size limit. An attacker can negotiate permessage-deflate during the WebSocket upgrade and send a frame containing a zlib bomb (e.g. 50 KB → 5 GB). Decompression occurs in the connection process before websocket_handle/2 ever sees the MQTT bytes.

Exploit scenario

Attacker opens ws://broker:15675/ws with Sec-WebSocket-Extensions: permessage-deflate. Server accepts. Attacker sends one binary frame whose payload is 00 00 ... 00 deflated (compression ratio >1000:1). cowlib inflates it fully into a binary. Process heap explodes; node hits OOM or memory alarm.

Preconditions

  • rabbitmq_web_mqtt plugin enabled (not default, but common for browser clients)
  • Network reachability to port 15675/15676
  • No authentication required

CVSS

CVSS v4.0: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N (8.2, High). Fixed in 3.13.15, 4.0.20, 4.1.11, 4.2.6, 4.3.0.

Пакеты

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

rabbitmq

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

>= 3.13.0, < 3.13.15

3.13.15

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

rabbitmq

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

>= 4.0.0, < 4.0.20

4.0.20

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

rabbitmq

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

>= 4.1.0, < 4.1.11

4.1.11

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

rabbitmq

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

>= 4.2.0, < 4.2.6

4.2.6

Дефекты

CWE-409

Дефекты

CWE-409
Уязвимость GHSA-gmgx-hhg5-43gr