POJIA破甲
地图 / UAF read in mev_pollset_diff() trace path after curl_easy_pause() in socket callback

UAF read in mev_pollset_diff() trace path after curl_easy_pause() in socket callback

内存破坏 / 释放后使用 / #3824303

厂商
curl
严重程度
低危
赏金
—
弱点
释放后使用
研究员
@homanp
披露日期
2026-06-28
资产
https://github.com/curl/curl
CVE
CVE-2026-9080

该报告还没有中文解读。

原文摘录

摘自原文(3291 字符中的一小部分)
Summary: The CVE-2026-9080 fix re-fetches the sh_entry after the socket callback inside `mev_sh_entry_update()`, because `curl_easy_pause()` called from that callback re-enters `mev_assess()` and can free the entry. The same re-fetch was not applied at the caller, `mev_pollset_diff()`, which …
原文中的代码
mresult = mev_sh_entry_update(multi, data, entry, s,
                              prev_ps->actions[i], 0);
if(mresult)
  return mresult;
/* the callback may have freed this entry via curl_easy_pause(); re-fetch */
entry = mev_sh_entry_get(&multi->ev.sh_entries, s);
if(entry)
  CURL_TRC_M(data, "ev …

默认不展示报告全文。以上为简短摘录,完整复现过程请阅读原文。版权归研究员与 curl 所有。

时间线

  • 报告提交
  • 公开披露
阅读 HackerOne 原文 ↗作者 @homanp · 版权归作者与 curl 所有

同类报告

Use-After-Free In IPV6_2292PKTOPTIONS leading To Arbitrary Kernel R/W PrimitivesPlayStation · 2020-07-06 · $10,000sys_fsc2h_ctrl kernel stack freePlayStation · 2025-04-18 · $10,000Use-after-free in setsockopt IPV6_2292PKTOPTIONS (CVE-2020-7457)PlayStation · 2022-09-20 · $10,000CVE-2021-22901: TLS session caching disastercurl · 2021-05-26Old WebKit HTML agent in Template Preview function has multiple known vulnerabilities leading to RCELob · — · $1,500Use-After-Free in SMB connection reuse (req->path dangling pointer after needle destruction)curl · 2026-04-29