PT-2026-64373 · Phoenix+1 · Phoenix+1
CVSS v4.0
8.7
High
| Vector | AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N |
Name of the Vulnerable Software and Affected Versions
bandit versions 1.11.0 through 1.12.0
Description
An inefficient algorithmic complexity issue allows unauthenticated remote denial of service via CPU exhaustion during WebSocket fragment reassembly. The function
oversize message?/2, called from handle frame/3 in lib/bandit/websocket/connection.ex, appends non-final continuation frames to a left-nested iolist and re-measures the entire buffer using IO.iodata length/1 for every frame. This results in quadratic (O(n^2)) reassembly work relative to the number of continuation frames. While the max fragmented message size limit restricts total bytes, it does not limit the frame count. An attacker can send numerous small continuation frames to exhaust CPU resources, potentially starving the server and denying service to legitimate users. This issue specifically affects applications serving WebSocket endpoints through Bandit, including Phoenix applications using Bandit as the HTTP adapter.Recommendations
Update bandit to version 1.12.1.
Exploit
Fix
Found an issue in the description? Have something to add? Feel free to write us 👾
Weakness Enumeration
Related Identifiers
Affected Products
Bandit
Phoenix