新聞中心
360提示織夢DedeCms全局變量覆蓋漏洞,無憂小編指導(dǎo)站長們?nèi)绾谓鉀Q
站長朋友們都知道織夢dedecms系統(tǒng)是目前國內(nèi)最受歡迎的一款開源企業(yè)系統(tǒng),它的特點(diǎn)是代碼開源,功能強(qiáng)大,所以越來越多的網(wǎng)站建設(shè)人員選擇dedecms來搭建網(wǎng)站,但是有利就有敝的,往往黑客也看到了這個(gè)系統(tǒng)存在的bug,各種各樣的攻擊方法層出不窮,排名好的,權(quán)重高的,流量大的網(wǎng)站都難逃被攻擊的危險(xiǎn)。最近織夢dedecms又曝出了很多高危漏洞。一般情況下客戶以防被攻擊都是采用以下幾種常見的防患措施。第一種:修改后臺目錄:安裝好網(wǎng)站之后第一步就應(yīng)該修改后臺目錄,把默認(rèn)的dede隨意改成其他名字。第二種:一般建議安裝的時(shí)候數(shù)據(jù)庫的表前綴最好改一下,不用dedecms默認(rèn)的前綴dede_,可以改成其他的名稱如bdw_第三種:安裝后應(yīng)立即把install文件刪除;第四種:如果不需要SQL命令運(yùn)行器的可以把管理目錄下的sys_sql_query.php刪除;第五種:不用會(huì)員系統(tǒng),就把member整個(gè)文件夾全部;第六種:不用下載發(fā)布功能可以把管理目錄下soft__xxx_xxx.php刪除;一般以上很多站長都可以百度了解下。但是今天小編說的是dedecms存在的全局變量導(dǎo)致的大范圍漏洞。通過以上方法是無法修補(bǔ)的。360也是做出了明顯的提示。小編也是跟蹤了一個(gè)禮拜的時(shí)間去研究,思考,分析才找到了臨時(shí)的解決方案。一般織夢dedecms中存在的全局變量有以下小編在這里一一列舉下: $GLOBALS, 所有全局變量數(shù)組 $_SERVER, 服務(wù)器環(huán)境變量數(shù)組 $_GET,通過GET方法傳遞給腳本的變量數(shù)組 $_POST, 通過POST方法傳遞給腳本的變量數(shù)組 $_COOKIE,cookie變量數(shù)組 $_REQUEST,所有用戶輸入的變量數(shù)組,包括$_GET, $_POST和$_COOKIE所包含的輸入內(nèi)容 $_FILES,與文件上傳相關(guān)得變量數(shù)組 $_ENV,環(huán)境變量數(shù)組 $_SESSION,會(huì)話變量數(shù)組 一般這些全局變量在程序中起到的作用很大,可以直接傳參通過webshell來修改網(wǎng)站后臺的用戶名密碼,也就是通過這個(gè)漏洞直接重新定義數(shù)據(jù)庫連接。小編研究出的解決方案是: 首先找到:include/common.inc.php這個(gè)文件 找到以下代碼: foreach(Array('_GET','_POST','_COOKIE') as $_request) { foreach($$_request as $_k => $_v) ${$_k} = _RunMagicQuotes($_v); } 修改為: foreach(Array('_GET','_POST','_COOKIE') as $_request) { foreach($$_request as $_k => $_v) { if( strlen($_k)>0 && eregi('^(cfg_|GLOBALS)',$_k) ){ exit('Request var not allow!'); } ${$_k} = _RunMagicQuotes($_v); } } 通過以上修改后全局變量就不會(huì)在被覆蓋,這樣黑客傳參數(shù)進(jìn)數(shù)據(jù)庫也會(huì)失敗。的確dedecms存在的漏洞太多了,我們只有一點(diǎn)點(diǎn)的發(fā)現(xiàn),發(fā)現(xiàn)后及時(shí)作出升級,打補(bǔ)丁,才能不被黑客有機(jī)可乘。小編最好是建議站長朋友們定期的對站點(diǎn)進(jìn)行備份,這樣就算被攻擊癱瘓了也是可以恢復(fù)備份的。
本文地址:http://www.gle-technology.com/dedecms/14938.html