PHP防止木馬攻擊的措施


防止跳出web目錄

只允許你的PHP腳本在web目錄里操作,針對Apache,還可以修改httpd.conf文件限制PHP操作路徑。

例如:php_admin_value  open_basedir(將用戶可操作的文件限制在某目錄下)  web目錄。

 

在Linux系統中web根目錄有個.user.ini文件,修改該文件與修改httpd.conf文件效果一樣。

.user.ini文件文檔介紹:

自 PHP 5.3.0 起,PHP 支持基於每個目錄的 .htaccess 風格的 INI 文件。此類文件被 CGI/FastCGI SAPI 處理。此功能使得 PECL 的 htscanner 擴展作廢。如果使用 Apache,則用 .htaccess 文件有同樣效果。

除了主 php.ini 之外,PHP 還會在每個目錄下掃描 INI 文件,從被執行的 PHP 文件所在目錄開始一直上升到 web 根目錄($_SERVER['DOCUMENT_ROOT'] 所指定的)。如果被執行的 PHP 文件在 web 根目錄之外,則只掃描該目錄

在 .user.ini 風格的 INI 文件中只有具有 PHP_INI_PERDIRPHP_INI_USER 模式的 INI 設置可被識別。

 

防止PHP木馬執行webshell

第一種:打開safe_mode。

第二種:在PHP.ini中設置d isable_functions = passthru,exec,shell_exec ,system。

 

防止PHP木馬讀寫文件目錄

在PHP.ini中設置

disable_functions=fopen ,mkdir ,chmod,unlink,dir,fread,fclose,fwrite,file_exists,closedir,is_dir,readdir,open_dir,fileperms(取得文件權限),delfile,copy。

 

到此為止在Linux環境下沒什么問題了,但在win下,Apache默認運行system權限

解決方法:

給web目錄設置權限。

使Apache以另一種身份運行。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM