CVE-2026-103472 restbed WebSocket 帧内存耗尽漏洞
影响远程未认证攻击者可耗尽服务器内存导致拒绝服务
restbed 5.0.0 及之前版本在处理 WebSocket 帧时,接受声明长度高达 2^63 字节的载荷,并在无界流缓冲区中缓存数据而不做大小限制。远程未认证攻击者可声明超大帧长度并持续发送数据,耗尽服务器内存,导致进程崩溃,形成拒绝服务。
影响范围
restbed 5.0.0 及之前版本(through 5.0.0)受影响,具体修复版本暂无公开信息。
漏洞详情
该漏洞属于不受控制的资源消耗(内存耗尽)类型。成因是 restbed 的 WebSocket 帧解析逻辑未对声明载荷长度和实际缓冲数据设置上限,使用无界流缓冲区累积数据。攻击者只需建立 WebSocket 连接并发送声明超大长度的帧,再持续推送数据,即可使服务器内存不断增长直至崩溃。
利用条件与风险
利用无需认证,攻击者仅需能访问 WebSocket 服务即可发起,实战中可造成服务不可用,风险较高。
修复建议
建议关注官方发布的修复版本并升级;临时缓解措施包括在反向代理或网关层限制 WebSocket 帧大小与连接资源,暂无公开的官方补丁细节。
restbed through 5.0.0 accepts WebSocket frames with declared payload lengths up to 2^63 bytes and buffers the payload without size limits in an unbounded stream buffer. Remote unauthenticated attackers can declare large frame sizes and stream payload data to exhaust server memory, causing denial of service through process crash.