POST TIME:2018-01-08 14:06
前言:隨著織夢DEDECMS使用的站長越來越多,黑客也開始活動起來。爭對DEDECMS的開源特性,很多能利用的漏洞,都被黑客利用從而進(jìn)行攻擊等。做為站長或服務(wù)器idc商,肯定是想辦法解決這些隱患的!所以很多idc空間商,都把虛擬主機(jī)用戶的php.ini中的fsockopen函數(shù)給禁用了!導(dǎo)致dedecms無法采集。前幾天給一個客戶安裝程序的時候就碰到此問題。讓客戶和空間商溝通無果。本站搜搜源碼結(jié)合多年的php開發(fā)經(jīng)驗(yàn),找不到了解決辦法。如下:
第一:原理我們是把fsockopen函數(shù)替換成pfsockopen 函數(shù),因?yàn)閜fsockopen可保持keep-alive連接,使黑客無法持續(xù)性的攻擊。
第二:涉及到的dedecms文件有如下:
dedecms5.6有如下:
include/dedehttpdown.class.php
include/dedecollection.func.php:
include/mail.class.php
dede/module_main.php
dede/api_ucenter.php
dedecms5.7有如下:
include/dedehttpdown.class.php
include/sphinxclient.class.php
include/dedecollection.func.php:
include/mail.class.php
ask/data/scores.inc.php:
dede/module_main.php
dede/api_ucenter.php
plus/bshare.php
找到這些文件把其中的fsockopen替換成pfsockopen就可以了。
有的人會說這么多文件一個一個的尋找。太累了。呵呵。別著急。本站提供相當(dāng)方便快速替換方法。
大家下載editplus工具 使用在文件夾中查找替換就可以了。
安裝好editplus軟件,選擇編輯——在文件中替換——選擇好DEDEcms目錄,指定fsockopen替換成pfsockopen就可!