《CMS技巧:phpcms authkey生成算法問題導致authkey泄露漏洞修復方法》要點:
本文介紹了CMS技巧:phpcms authkey生成算法問題導致authkey泄露漏洞修復方法,希望對您有用。如果有疑問,可以聯系我們。
相關主題:PHPCMS教程
導讀:阿里云今天提示phpcms authkey生成算法問題導致authkey泄露這個漏洞,那如何修復呢?維易PHP培訓網分享一下解決方法.
阿里云今天提示phpcms authkey生成算法問題導致authkey泄露這個漏洞,那如何修復呢?維易PHP培訓網分享一下解決方法.
看一下阿里爆出漏洞說明
漏洞名稱:phpcms authkey生成算法問題導致authkey泄露
補丁編號:13453425
補丁文件:/www/xxxx/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://www.snjht.com/jiaocheng/5605.html