Stack exhaustion in MIME multipart reading with deeply nested subparts
拒绝服务 / Uncontrolled Recursion / #3684603
该报告还没有中文解读。
原文摘录
摘自原文(2807 字符中的一小部分)
Summary: The MIME read path uses mutually recursive helpers for nested multipart structures without enforcing a recursion depth limit. A sufficiently deep tree of nested `curl_mime_subparts()` objects causes stack exhaustion when libcurl starts reading the MIME body. The attached PoC builds a …
原文中的代码
autoreconf -fi CC=clang CFLAGS="-fsanitize=address -fno-omit-frame-pointer -g -O1" \ LDFLAGS="-fsanitize=address" \ ./configure --disable-shared --with-openssl \ --disable-docs --disable-manual make -j"$(nproc)" # If configure fails on optional deps (e.g. libpsl), add --without-libpsl
默认不展示报告全文。以上为简短摘录,完整复现过程请阅读原文。版权归研究员与 curl 所有。
时间线
- 报告提交
- 公开披露
阅读 HackerOne 原文 ↗作者 @wi110w · 版权归作者与 curl 所有