說到CPU跑滿100%情況,首先想到主機(jī)配置太低、網(wǎng)站流量太大、網(wǎng)站中毒,作為國內(nèi)第一大開源程序織夢,很多黑客在研究漏洞,織夢站點用戶在50W左右,那么黑客攻擊下來后掛上自己的廣告打來收益。這也是為什么那么多黑客研究織夢的原因。
前幾個月,發(fā)現(xiàn)不少用戶的服務(wù)器出現(xiàn)CPU100%的情況,經(jīng)檢查后,大部分是php(dedecms居多)程序?qū)е碌模易约壕S護(hù)的幾個網(wǎng)站也出現(xiàn)同樣情況,并且收到過機(jī)房告知服務(wù)器外發(fā)攻擊的通告,于是馬上檢查網(wǎng)站,并進(jìn)行問題排查。 發(fā)現(xiàn)占用CPU的網(wǎng)站用的都是dede程序,檢查文件后,發(fā)現(xiàn)plus文件夾下有幾個異常文件,從文件修改時間上看與其他文件截然不同(出了緩存文件以及配置文件,大部分文件的修改時間都是一致的)。
偶,馬依噶,中毒了
打開查看里面的源碼,都存在’IP”post’等奇怪代碼,再通過文件對比,這些異常文件都是多出的,果斷刪除。重新開啟網(wǎng)站,CPU正常,沒有出現(xiàn)100%的情況。為了防止再出現(xiàn)類似情況,可以通過禁用php的fsockopen 函數(shù)以及屏蔽服務(wù)器的UDP端口來防止被利用php-ddos外發(fā)udp攻擊。屏蔽了服務(wù)器被利用外發(fā)udp攻擊這個比較好辦,最重要的是要堵住網(wǎng)站漏洞,因為就算攻擊發(fā)不出,只要惡意代碼被執(zhí)行了,一樣會占用大量CPU%,照樣影響網(wǎng)站的運(yùn)行。
下面介紹禁用php的fsockopen 函數(shù)以及屏蔽服務(wù)器的UDP端口的方法:
1.禁用函數(shù)
打開php.ini查找到 disable_functions ,添加需禁用的函數(shù)名,如下例:
passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,fsocket,fsockopen
這樣就可以禁用php的fsockopen 函數(shù)。
2.屏蔽UDP端口
將以下藍(lán)色文本復(fù)制到記事本,另存為 banudp.bat 或任意名,雙擊運(yùn)行即可。
REM 添加安全策略,名稱
netsh ipsec static add policy name=我的安全策略
REM 添加 IP篩選器列表
netsh ipsec static add filterlist name=允許列表
netsh ipsec static add filterlist name=拒絕列表
REM 添加篩選器到IP篩選器列表(允許上網(wǎng))
netsh ipsec static add filter filterlist=允許列表 srcaddr=me dstaddr=209.11.240.36 description=dns訪問 protocol=udp mirrored=yes dstport=53
REM 添加篩選器到IP篩選器列表(不讓別人訪問)
netsh ipsec static add filter filterlist=拒絕列表 srcaddr=me dstaddr=any description=別人到我任何訪問 protocol=udp mirrored=yes
REM 添加篩選器操作
netsh ipsec static add filteraction name=可以 action=permit
netsh ipsec static add filteraction name=不可以 action=block
REM 創(chuàng)建一個鏈接指定 IPSec 策略、篩選器列表和篩選器操作的規(guī)則(加入規(guī)則到我的安全策略)
netsh ipsec static add rule name=允許規(guī)則 policy=我的安全策略 filterlist=允許列表 filteraction=可以
netsh ipsec static add rule name=拒絕規(guī)則 policy=我的安全策略 filterlist=拒絕列表 filteraction=不可以
REM 激活我的安全策略
netsh ipsec static set policy name=我的安全策略 assign=y
以上方法都是針對windows主機(jī)的。希望對建站的朋友們有些幫助。
最主要的織夢程序的安全防護(hù):
1、目錄權(quán)限
2、刪除易被掛馬的系統(tǒng)文件
安裝完成后會有一些文件,可以說是冗余文件,完全沒有作用,反而帶來被黑的危險,刪除即可,以下目錄文件均可刪除:
目錄 | 刪除原因 |
---|---|
/install | 安裝后的余留文件,沒用,整個文件夾刪除 |
/member | 會員功能文件,大數(shù)企業(yè)站沒用,文件夾刪除,若需要會員功能的就不能刪 |
/special | 專題功能,如果你不需要這個功能,文件夾刪除,需要就別刪,大部分是不需要的 |
/tags.php | TAG標(biāo)簽,沒有此功能可刪除 |
網(wǎng)站后臺目錄dede要刪除的文件 | 刪除原因 |
---|---|
/dede/tpl.php | 文件上傳管理系統(tǒng)文件,易被掛馬,強(qiáng)烈建議刪除或者不用時請改名(tpl備用.php) |
/dede/templets_*.php | 模板管理功能,老手建議刪除,使用FTP管理 |
/dede/media_*.php | 附件數(shù)據(jù)管理功能文件,易被掛馬,刪除(用你的FTP管理文件就可以了,別用這個) |
/dede/file_*.php | 文件式管理器功能控制器文件,易被掛馬,刪除(用你的FTP管理文件就可以了,別用這個) |
/dede/mytag_*.php、mytag_tag_*.php | 自定義標(biāo)記管理,易被上傳一句話木馬 |
/dede/story_*.php | 小說功能,可刪除 |
/dede/erraddsave.php | 糾錯功能,可刪除 |
/dede/feedback_*.php | 評論管理,可刪除 |
/dede/group_*.php | 圈子功能,很少用到,可刪除 |
/dede/co_*.php | 采集控制文件,可刪除 |
/dede/cards_*.php | 點卡功能功能,可刪除 |
/dede/ad_*.php | 廣告管理添加/刪除文件,企業(yè)站一般不用可刪除 |
/dede/spec_*.php | 專題管理,沒有專題頁面,可刪除 |
/dede/vote_*.php | 投票功能,可刪除 |
/dede/sys_sql_query.php | SQL命令運(yùn)行器,不需要的話可以改名為(sys_sql_query安全禁用.php)也可以刪除 |
目錄/plus要刪除的文件 | 刪除原因(正常的企業(yè)站可以只保留list.php、view.php、count.php、search.php、diy.php(企業(yè)站經(jīng)常用到的表單)五個文件以及img文件夾,其他全部刪除) |
---|---|
/plus/guestbook | 留言簿模塊,整體刪除,容易SQL注入及垃圾留言, |
/plus/task和task.php | 計劃任務(wù)控制文件,文件夾和文件都刪除 |
/plus/bookfeedback.php、bookfeedback_js.php | 圖書評論和評論調(diào)用文件,存在注入漏洞,不安全 |
/plus/bshare.php | 分享插件 |
/plus/ad_js.php | 廣告插件,新聞資訊站用到的,請勿刪除 |
/plus/car.php、posttocar.php、carbuyaction.php | 購物車 |
/plus/comments_frame.php | 調(diào)用評論,存在安全漏洞 |
/plus/digg_ajax.php、digg_frame.php | 頂踩 |
/plus/download.php、disdls.php | 下載和次數(shù)統(tǒng)計 |
/plus/erraddsave.php | 糾錯 |
/plus/feedback.php、feedback_ajax.php、feedback_js.php | 評論 |
/plus/stow.php | 內(nèi)容收藏 |
/plus/vote.php | 投票 |