各位網路管理人員經常遇到的乙個問題就是**被別人掛馬,隨著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使用者只能執行我們想讓它能幹的事情,給每乙個目錄建立乙個單獨能讀寫的使用者。這也是當前很多虛擬主機提供商的流行配置方法哦,不過這種方法用於防止這裡就顯的有點大材小用了。
Windows和Linux下socket的區別
1.標頭檔案 windows下winsock.h或winsock2.h linux下netinet in.h 大部分都在這兒 unistd.h close函式在這兒 sys socket.h 在in.h裡已經包含了,可以省了 2.初始化 windows下需要用wsastartup啟動ws2 32.l...
windows和linux下socket程式設計的不同
windows windows 標頭檔案的區別 include include windows 初始化的區別 windows 宣告socket socket型別 windows socket關閉 closesocket windows socket操作錯誤返回值 socket error windo...
windows下換行和linux下換行的區別
用以下文字為例 linux下 0000000 h t m l n n h t m l n 0000010 widows下 0000000 h t m l r n r n h t m l 0000010 0000011 由來 在計算機還沒有出現之前,有一種叫做電傳打字機 teletype model ...