Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-39804— WebSocket permessage-deflate inflate has no output-size cap in bandit

Quick assessment

Affected
mtrudel bandit
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

Bandit是Mat Trudel个人开发者的一款高性能HTTP与WebSocket服务器。 Bandit 0.5.9版本至1.11.0之前版本存在安全漏洞,该漏洞源于WebSocket permessage-deflate压缩启用时未限制资源分配,可能导致未经身份验证的远程攻击者通过内存耗尽实现拒绝服务攻击。

AI Predicted 7.5 Difficulty: Trivial EPSS 0.67% · P50

Affected Version Matrix 2

VendorProduct Version RangeStatus
mtrudel bandit 0.5.9< 1.11.0 affected
da4027cff7d2b80319e76fe7a32f84beceec490a< 8156921a51e684a951221da7bc30a70a022f722e affected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-39804

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
WebSocket permessage-deflate inflate has no output-size cap in bandit
Source: CVE Program / CVE List V5
Vulnerability Description
Allocation of Resources Without Limits or Throttling vulnerability in mtrudel bandit allows unauthenticated remote denial of service via memory exhaustion when WebSocket permessage-deflate compression is enabled. 'Elixir.Bandit.WebSocket.PerMessageDeflate':inflate/2 in lib/bandit/websocket/permessage_deflate.ex calls :zlib.inflate/2 with no output-size cap, then materializes the entire decompressed payload as a single binary via IO.iodata_to_binary/1. The websocket_options.max_frame_size option only bounds the on-the-wire (compressed) frame size, not the decompressed output. A high-ratio compressed frame (e.g. uniform data at ~1024:1 ratio) can stay well under any wire-size limit while forcing GiB-scale heap allocations in the connection process before any application code runs. An unauthenticated attacker who can open a WebSocket connection can send a single such frame to exhaust the BEAM node's memory and trigger an OOM kill. This vulnerability requires both Bandit's server-level websocket_options.compress and the per-upgrade compress: true option passed to WebSockAdapter.upgrade/4 to be enabled. Stock Phoenix and LiveView applications are not affected as they default to compress: false. This issue affects bandit: from 0.5.9 before 1.11.0.
Source: CVE Program / CVE List V5
CVSS Information
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
Source: CVE Program / CVE List V5
Vulnerability Type
不加限制或调节的资源分配
Source: CVE Program / CVE List V5
Vulnerability Title
Bandit 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
Bandit是Mat Trudel个人开发者的一款高性能HTTP与WebSocket服务器。 Bandit 0.5.9版本至1.11.0之前版本存在安全漏洞,该漏洞源于WebSocket permessage-deflate压缩启用时未限制资源分配,可能导致未经身份验证的远程攻击者通过内存耗尽实现拒绝服务攻击。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

Vendor Product Affected Versions CPE Subscribe
mtrudel bandit 0.5.9 ~ 1.11.0 cpe:2.3:a:mtrudel:bandit:*:*:*:*:*:*:*:*
mtrudel bandit da4027cff7d2b80319e76fe7a32f84beceec490a ~ 8156921a51e684a951221da7bc30a70a022f722e cpe:2.3:a:mtrudel:bandit:*:*:*:*:*:*:*:*

II. Public POCs for CVE-2026-39804

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-39804

请登录查看更多情报信息。

Patches & Fixes for CVE-2026-39804 (1)

Vendor Advisories for CVE-2026-39804 (3)

Same Patch Batch · mtrudel · 2026-05-01 · 5 CVEs total

CVE-2026-39805 6.3 MEDIUM CL.CL HTTP request smuggling via duplicate Content-Length in bandit
CVE-2026-42788 HTTP/2 frame size limit checked after body is buffered in bandit
CVE-2026-42786 WebSocket fragmented message reassembly unbounded in bandit
CVE-2026-39807 Client-supplied URI scheme trusted without transport verification in bandit

IV. Related Vulnerabilities

V. Comments for CVE-2026-39804

No comments yet


Leave a comment