DoS in bigdecimal's sqrt function due to miscalculation of loop iterations
该报告还没有中文解读。
原文摘录
摘自原文(3189 字符中的一小部分)
Vulnerability __Affected Product__: `bigdecimal` extension in https://github.com/ruby/ruby __Affected Versions__: At least version 3.2.2, I didn't test any previous versions
原文中的代码
do {
y->MaxPrec *= 2;
if (y->MaxPrec > y_prec) y->MaxPrec = y_prec;
f->MaxPrec = y->MaxPrec;
VpDivd(f, r, x, y); /* f = x/y */
VpAddSub(r, f, y, -1); /* r = f - y */
VpMult(f, VpConstPt5, r); /* f = 0.5*r */
if (VpIsZero(f))
goto converge; …默认不展示报告全文。以上为简短摘录,完整复现过程请阅读原文。版权归研究员与 Ruby 所有。
时间线
- 报告提交
- 公开披露
阅读 HackerOne 原文 ↗作者 @z2_ · 版权归作者与 Ruby 所有