phpcms authkey生成算法问题导致authkey泄露修复方法

阿里云今天提示phpcms authkey生成算法问题导致authkey泄露这个漏洞,那如何修复呢?

看一下阿里爆出漏洞说明

漏洞名称:phpcms authkey生成算法问题导致authkey泄露 

补丁编号:13453425 

补丁文件:/caches/configs/system.php 

补丁来源:云盾自研 

更新时间:2017-05-11 13:49:45 

 

漏洞描述:phpcms在安装时,由于在同一个页面中连续使用mt_rand(),未进行有效mt_srand();种子随机化操作,导致authkey存在泄漏风险,黑客可利用该漏洞猜解出网站authkey进而入侵网站。【注意:该补丁修复后会自动修改您网站配置文件中的auth_key和phpsso_auth_key,并且只会运行一次,修复期间会有部分用户访问的cookies失效导致需要登录网站,除此无其他影响,可放心升级】 

照着下面的函数重新生成一下key值,然后找caches/configs/system.php 里面把两个参数替换一下就ok了

    function random($length, $chars = '0123456789') { 
       
        $hash = ''; 
        $max = strlen($chars) - 1; 
        for($i = 0; $i < $length; $i++) { 
            $hash .= $chars[mt_rand(0, $max)]; 
        } 
        return $hash; 
    }

//这里重点:只要把random第二参数重新打乱,不要使用以前v9固定的数据 

print_r($this->random(32, 'abcdefghigklmnopqrstuvwxyz1294567890ABCDEFGHIGKLMNOPQRSTUVWXYZ'));
exit;//phpsso_auth_key 
print_r($this->random(20, 'abcdefghigklmnopqrstuvwxyzABCDEFGHIGKLM1294567890NOPQRSTUVWXYZ'));
exit;//auth_key


内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://sulao.cn/post/411.html

评论

  1. song

    song 回复

    2017-08-22 13:23:43

    照着下面的函数重新生成一下key值,这句话怎么做,本人小白,完全不懂在哪生成key值

我要评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。