用Suhosin加強PHP腳本語言安全性_PHP教程
推薦:配置Apache 1.3或者Apache 2.0服務器的5個技巧本文提出了配置Apache 1.3或者Apache 2.0服務器的5個技巧。我們將闡述以下的配置方案:調整Apache的accept()串行化、Apache 2.0線程、采用mod_ssl的SSL會話緩存、優化keep-alive超時值以及檢查
PHP是一種非常流行的網站腳本語言,但是它本身所固有的安全性是非常薄弱。本文講述了PHP增強計劃(Hardened-PHP project)和新的Suhosi計劃,Suhosin提供了增強的PHP的安全配置。
PHP是帶有爭論地但又是最流行的一種網站腳本語言。它之所以流行,是因為它低廉的價格,然而,這低廉的價格導致用PHP寫的網站應用程序越來越多的同時也越來越多的展現出PHP本身在安全上的脆弱,這種安全特性顯示出PHP是極不可靠,不過同時對這個腳本語言本身而言它又是非常靈活的,使用它就能很容易的實現代碼,不過這些代碼都是臃腫的且不安全的,雖然是這樣它還是一直都擁有很多的使用者。你可以根據實際情況來假設,一次又一次,各種應用軟件都體現了這種脆弱性:容易受到SQL注入、跨站腳本、任意執行指令等等的攻擊。
因為象safe_mode和open_basedir這樣內置的PHP安全措施將被忽略,PHP增強計劃創建的PHP更具有安全性,同時也對PHP進行校驗檢查。最初,這些是由增強的PHP補丁完成的,這些補丁需要修補并重新編譯PHP自身。最近,PHP增強計劃發布了一個名為Suhosin的新工程。
Sohosin包括有兩部分:第一部分是PHP的補丁,這個補丁強化了Zend引擎自身,以免可能產生緩沖溢出,也可以防止相關的弱點。第二部分是Suhosin的擴展,這是一個PHP的獨立使用模塊。這兩部分可以一起工作,或者是擴展部分單獨工作。
開發人員不希望為了達到安全性而總去維護他們自己的PHP安裝設置和他們當然更喜歡直接使用銷售商提供的Linux分布系統上PHP,使用擴展模塊能提供更多PHP本身所不能具有的安全特點。
擴展模塊很容易安裝;它也能通過PECL安裝,或者是下載后通過編譯安裝:
$ tar xvzf suhosin-0.9.17
$ cd suhosin-0.9.17
$ phpize
$ ./configure
$ make
$ sudo make install
為了使用suhosin,還需要增加/etc/php.ini,如下所示:
extension=suhosin.so
對于大部分人來說默認的配置選項已經足夠了。為了加強設置,可以在/etc/php.ini中增加相應的值。網站中詳細地介紹了有關的各種配置選項,這些說明可以幫助你進行初始化配置。
使用Suhosin,你可以得到一些錯誤日志,你能把這些日志放到系統日志中,也可以同時寫到其他任意的日志文件中去;它還可以為每一個虛擬主機創建黑名單和白名單;可以過濾GET和POST請求、文件上載和cookie。你還能傳送加密的會話和cookie,可以設置不能傳送的存儲上線等等。它不像原始的PHP強化補丁,Suhosin是可以被像Zend Optimizer這樣的第三方擴展軟件所兼容的。
分享:PHP后門的隱藏技巧測試報告最近很多朋友都在問我是否能把我那一句話木馬隱藏到HTML或圖片里,其實把一句話木馬插入到PHP文件中就已經很隱蔽了,如果說硬是要放到HTML文件或圖片里,就接著往下看這篇的篇測試報告吧。要知
- 相關鏈接:
- 教程說明:
PHP教程-用Suhosin加強PHP腳本語言安全性。