PHP是一種非常流行的網站腳本語言但是它本身所固有的安全性是非常薄弱本文講述了PHP增強計劃(HardenedPHP 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
$ cd suhosin
$ phpize
$ /configure
$ make
$ sudo make install
為了使用suhosin還需要增加/etc/phpini如下所示
extension=suhosinso
對於大部分人來說默認的配置選項已經足夠了為了加強設置可以在/etc/phpini中增加相應的值網站中詳細地介紹了有關的各種配置選項這些說明可以幫助你進行初始化配置
使用Suhosin你可以得到一些錯誤日志你能把這些日志放到系統日志中也可以同時寫到其他任意的日志文件中去它還可以為每一個虛擬主機創建黑名單和白名單可以過濾GET和POST請求文件上載和cookie你還能傳送加密的會話和cookie可以設置不能傳送的存儲上線等等它不像原始的PHP強化補丁Suhosin是可以被像Zend Optimizer這樣的第三方擴展軟件所兼容的
From:http://tw.wingwit.com/Article/program/PHP/201311/20817.html