Weak random number generator used in concrete/authentication/concrete/controller.php
该报告还没有中文解读。
原文摘录
摘自原文(748 字符中的一小部分)
Using substr(rand()) then running md5() on the output would be better replaced by using bin2hex() and either openssl_random_pseudo_bytes($a) or mcrypt_create_iv($a, MCRYPT_DEV_URANDOM)
原文中的代码
private function genString($a = 20)
{
$o = '';
$chars = 'abcdefghijklmnopqrstuvwxyz0123456789!@#$%^&*()_+{}|":<>?\'\\';
$l = strlen($chars);
while ($a--) {
$o .= substr($chars, rand(0, $l), 1);
}
return md5($o);
}默认不展示报告全文。以上为简短摘录,完整复现过程请阅读原文。版权归研究员与 Concrete CMS 所有。
时间线
- 报告提交
- 公开披露
阅读 HackerOne 原文 ↗作者 @voodookobra · 版权归作者与 Concrete CMS 所有