10秒后自動關(guān)閉
ThinkPHP(TP)如何做安全加固,防webshell、防篡改、防劫持、TP漏洞防護

ThinkPHP是一款非常知名的PHP框架,很多知名CMS系統(tǒng)都是采用TP框架進行二次開發(fā)而來,當(dāng)然ThinkPHP本身也可以直接建站,開源免費、功能強大,深受廣大用戶喜歡。


雖然ThinkPHP非常優(yōu)秀,但是為了保障網(wǎng)站安全,我們還是需要做一些必要的防護措施,提升ThinkPHP的安全性。

今天我們就來聊聊有哪些防護方法!


一、 對文件做篡改防護

要防止入侵,防篡改是必不可少的。對文件做篡改防護有兩種方法:1、通過ACL策略實現(xiàn)   2、使用底層驅(qū)動實現(xiàn)



1、 通過ACL策略防護

防護思路:設(shè)置全站都只有讀取權(quán)限;再對部分必須目錄開放寫權(quán)限,并限制這些目錄禁止執(zhí)行動態(tài)腳本。


ThinkPHP需要開放寫權(quán)限的目錄有:/runtime/、/uploads/

注意:這2個目錄務(wù)必禁止執(zhí)行PHP腳本。


這樣設(shè)置以后,黑客就只能往這2個目錄寫入文件了,由于限制了禁止執(zhí)行PHP腳本,即使黑客上傳了webshell,也無法運行。


此方法設(shè)置較為復(fù)雜,需要有很強的專業(yè)技術(shù)。另外局限性也較多,例如需要對所有文件做防篡改,不能只對PHP文件做防篡改。如果網(wǎng)站需要生成HTML靜態(tài)文件,就無法使用此方法部署防護。



2、 使用底層驅(qū)動防護

使用操作系統(tǒng)底層驅(qū)動技術(shù)進行防篡改攔截,即通過防篡改軟件進行防護。不同軟件設(shè)置方法不同,推薦使用《護衛(wèi)神.防入侵系統(tǒng)》,因為其內(nèi)置ThinkPHP防篡改規(guī)則,非常簡單的操作就可以開啟強大的防篡改功能(如下圖一),同時沒有副作用。

 ThinkPHP防篡改模板

(圖一:ThinkPHP防篡改模板)


如上圖,選擇網(wǎng)站目錄,安全模板選擇“ThinkPHP安全模板”,防篡改功能就開啟了。系統(tǒng)立即就會對PHP文件進行7*24防篡改保護,同時不會影響管理員日常維護網(wǎng)站,沒有副作用(非常有特色的地方,大部分防篡改軟件都有副作用)。


當(dāng)黑客上傳webshell的時候,攔截效如下圖二。

 ThinkPHP防篡改攔截效果

(圖二:ThinkPHP防篡改攔截效果)




二、 對后臺做訪問保護

開啟防篡改保護后,還需要對后臺做下防護,防止黑客竊取后臺權(quán)限,進行合法的篡改操作(如設(shè)置網(wǎng)站配置信息,植入惡意代碼)。

防護思路也很簡單,給后臺設(shè)置二次密碼,或是限制特定區(qū)域才能訪問(如某個城市)。《護衛(wèi)神.防入侵系統(tǒng)》的“網(wǎng)站后臺保護”模塊可以實現(xiàn),填寫后臺地址,設(shè)置授權(quán)密碼以及允許訪問的區(qū)域,就可以了(如下圖三)。

 ThinkPHP后臺保護

(圖三:ThinkPHP后臺保護)




不在授權(quán)區(qū)域的用戶訪問后臺時,會要求輸入授權(quán)密碼(如下圖四)

 ThinkPHP后臺攔截保護

(圖四:ThinkPHP后臺攔截保護)



輸入正確的授權(quán)密碼,或是在授權(quán)區(qū)域的用戶,就可以正常訪問ThinkPHP后臺(如下圖五)

 ThinkPHP后臺訪問

(圖五:ThinkPHP后臺訪問)



三、 防SQL注入、防XSS跨站攻擊

SQL注入和XSS跨站攻擊是黑客常用的入侵手段,也需要做好防護。

《護衛(wèi)神·防入侵系統(tǒng)》自帶有SQL注入防護模塊(如下圖六),除了攔截SQL注入,還可以攔截XSS跨站腳本,一并解決全服務(wù)器的安全漏洞,攔截效果如圖七。

溫馨提示:此模塊默認(rèn)已經(jīng)開啟,無需再另行設(shè)置!

ThinkPHP SQL注入防護

(圖六:ThinkPHP SQL注入防護)



 ThinkPHP防SQL注入攔截效果

(圖七:ThinkPHP防SQL注入攔截效果)


怎么樣,是不是很簡單,只需要簡單兩步設(shè)置,就能輕松解決ThinkPHP漏洞防護問題,同時也能阻止黑客上傳WebShell和篡改網(wǎng)站。