Race condition with CURL_LOCK_DATA_CONNECT can cause connections to be used at the same time
该报告还没有中文解读。
原文摘录
摘自原文(2267 字符中的一小部分)
Summary: We've seen race conditions when using CURL_LOCK_DATA_CONNECT in libcurl where sometimes two different threads using two different easy handles ends up sharing the same connection pointer at the same time. This causes UAFs and double frees when both threads are freeing items on the same …
原文中的代码
[thread: 7bdde700] multi_done(data = 0x623000206108, conn = 0x61b000fbd688) [thread: 825eb700] url.c:1370 chosen connection=0x61b000fbd688 [thread: 825eb700] reuse_conn(old_conn=0x61b000979188, conn=0x61b000fbd688) [thread: 7bdde700] url.c:1370 chosen connection=0x61b000fbd688 [thread: …
默认不展示报告全文。以上为简短摘录,完整复现过程请阅读原文。版权归研究员与 curl 所有。
时间线
- 报告提交
- 公开披露
阅读 HackerOne 原文 ↗作者 @creid · 版权归作者与 curl 所有