CVE-2025-5399: WebSocket endless loop
拒绝服务 / Loop with Unreachable Exit Condition ('Infinite Loop') / #3168039
该报告还没有中文解读。
原文摘录
摘自原文(5239 字符中的一小部分)
The function `curl_ws_send()` in libcurl on commit [12d13b84fa40aa657b83d5458944dbd9b978fb7e](https://github.com/curl/curl/blob/12d13b84fa40aa657b83d5458944dbd9b978fb7e/lib/ws.c) contains an infinite loop that can be triggered by a malicious server under specific circumstances. If an application …
原文中的代码
while(!Curl_bufq_is_empty(&ws->sendbuf) || (buflen > ws->sendbuf_payload)) {
// ...
result = ws_flush(data, ws, Curl_is_in_callback(data));
if(!result) {
*sent += ws->sendbuf_payload;
buffer += ws->sendbuf_payload;
buflen -= ws->sendbuf_payload; …默认不展示报告全文。以上为简短摘录,完整复现过程请阅读原文。版权归研究员与 curl 所有。
时间线
- 报告提交
- 公开披露
阅读 HackerOne 原文 ↗作者 @z2_ · 版权归作者与 curl 所有