隱藏 PHP

一般而言,通過隱藏來實(shí)現(xiàn)安全是最脆弱的安全方式之一。但在某些情況下,每一點(diǎn)額外的安全都是值得的。

一些簡單的方法可以幫助隱藏 PHP,這可能會減慢攻擊者試圖找到系統(tǒng)弱點(diǎn)的速度。 通過在 php.ini 文件中設(shè)置 expose_php 為 off, 可以減少能獲得的有用信息。

另一個策略是配置 web 服務(wù)器(例如 apache)通過 PHP 解析不同的文件類型, 無論是通過 .htaccess 文件還是 apache 的配置文件,都可以設(shè)置能誤導(dǎo)攻擊者的文件擴(kuò)展名:

示例 #1 把 PHP 隱藏為另一種語言

# 使 PHP 代碼看起來像其他代碼類型
AddType application/x-httpd-php .asp .py .pl
或者干脆徹底隱藏它:

示例 #2 使用未知的擴(kuò)展名作為 PHP 的擴(kuò)展名

# 使 PHP 代碼看起來像未知的類型
AddType application/x-httpd-php .bop .foo .133t
或者隱藏它為 HTML 代碼,這樣會有輕微的性能影響,因?yàn)樗械? HTML 都將通過 PHP 引擎進(jìn)行解析:

示例 #3 使用 HTML 作為 PHP 擴(kuò)展名

# 使所有的 PHP 代碼看起來像 HTML
AddType application/x-httpd-php .htm .html
要讓此方法生效,必須把 PHP 文件的擴(kuò)展名改為以上的擴(kuò)展名。這樣就通過隱藏來提高了安全性,這是一個小的預(yù)防措施,幾乎沒有缺點(diǎn)。