linux下和windows下如何防止php木馬

技術小阿哥發表於2017-11-22
各位網路管理人員經常遇到的一個問題就是網站被別人掛馬,隨著php語言的流行,現在比較多的一種木馬就是php木馬,大家對此也非常的頭疼。現在我給大家講一下在linux和windwos下如何預防php木馬。
一、先講一下在linux下如何預防php木馬。
1.首先修改httpd.conf,如果你只允許你的php指令碼程式在web目錄裡操作,可以修改httpd.conf檔案限制php的操作路徑。比如你的web目錄是/usr/local/apache/htdocs,那麼在httpd.conf里加上這麼幾行:
php_admin_valueopen_basedir /usr/local/apache/htdocs
這樣,如果指令碼要讀取/usr/local/apache/htdocs以外的檔案將不會被允許,如果錯誤顯示開啟的話會提示這樣的錯誤:
Warning:open_basedirrestrictionineffect.Fileisinwrongdirectoryin/usr/local/apache/htdocs/open.phponline4等等。
2、防止php木馬執行webshell
  開啟safe_mode,在php.ini中設定disable_functions=passthru,exec,shell_exec,system二者選一即可,也可都選
3、防止php木馬讀寫檔案目錄
  在php.ini中的disable_functions=passthru,exec,shell_exec,system後面加上php處理檔案的函式
  主要有
  fopen,mkdir,rmdir,chmod,unlink,dir
  fopen,fread,fclose,fwrite,file_exists
  closedir,is_dir,readdir.opendir
  fileperms.copy,unlink,delfile
  即成為 disable_functions=passthru,exec,shell_exec,system,fopen,mkdir,rmdir,chmod,unlink,dir,fopen,fread,fclose,fwrite,file_exists,closedir,is_dir,readdir.opendir,fileperms.copy,unlink,delfile

  ok,大功告成,php木馬拿我們沒轍了,遺憾的是這樣的話,利用文字資料庫的那些東西就都不能用了。
二、windows下如何防止php木馬
  如果是在windos平臺下搭建的apache,apache預設執行是system許可權,這很恐怖,.那我們就給apache降降許可權吧。
  1.建立一個普通使用者apache,只把它加入windows的iis預設組裡面,其他任何許可權都不給。
  2.我們開啟計算機管理器,選服務,點apache服務的屬性,我們選擇logon,選擇thisaccount,我們填入上面所建立的賬戶和密碼,重啟apache服務,ok,apache執行在低許可權下了。

  實際上我們還可以通過設定各個資料夾的許可權,來讓apache使用者只能執行我們想讓它能幹的事情,給每一個目錄建立一個單獨能讀寫的使用者。這也是當前很多虛擬主機提供商的流行配置方法哦,不過這種方法用於防止這裡就顯的有點大材小用了。

 



本文轉自 gehailong 51CTO部落格,原文連結:http://blog.51cto.com/gehailong/267175,如需轉載請自行聯絡原作者


相關文章