close

資安的問題  最近越來越被重視了

PHP網站很多  所以有些基本的防禦是必須的

我整理了幾個要注意的地方  做為各位的參考

 

1. php程式防禦

 

php程式上的防禦是最基本的做法,駭客攻擊常用手段一般為兩種,木馬程式和sql injection ,以下再分類說明:

  

    (1) 木馬程式

          木馬程式在php主機上其實就是一支寫好的php檔案,這支程式一旦上主機之後,不管在哪個目錄下,他都可以隨意更改主機上任何檔案,當然包含整個刪除,問題在於駭客如何把木馬程式丟上主機?最簡單的方法就是利用網站上有上傳檔案的表單,利用上傳程式的漏洞把這支木馬傳上主機,所以首先防禦的原則就是檢查上傳檔案的程式,請判斷上傳檔案的副檔名,有相關php的一律阻擋。

 

    (2) sql injection

          這個大家不陌生才對,這是駭客常常用的方式,php5.2以上有一個叫做PDO的套件,用它存取MySQL,防禦sql injection的能力高達100%,所以請利用這個套件來存取MySQL,但問題在於PDO的寫法跟傳統的寫法差了十萬八千里,舊有的程式要逐一修改真的不太可能,比較簡單的做法就是在每支程式上include過濾程式,下載過濾程式

 

2. php設定防禦

 

php.ini檔裡可以做出更安全的環境,用預設的值是很危險的,安全屬性更改如下:

    

     (1) expose_php=off   關閉php資訊

     (2) display_errors = Off    錯誤訊息一定要關

     (3) magic_quotes_gpc = Off   自動跳脫也要關閉  請在程式裡面處理跳脫

     (4) disable_functions=exec,file_get_contents,fileperms,system,passthru,error_log,ini_alter,dl,openlog,syslog,readlink,symlink,link,

leak,proc_open,popepassthru,chroot,scandir,chgrp,chown,escapeshellcmd,shell_exec,proc_get_status

          這很重要一定要禁用這些內建函式,為什麼要禁用?因為這些函式很危險,駭客木馬程式裡都會用到這些函式,禁用它木馬就沒用了,如果網站程式裡面有用到,請改寫吧,例如:file_get_contents請用curl代替。

 

3. Apache設定防禦

 

   Apache設定的好,可以讓網站更安全,安全配置如下(httpd.conf)

 

   # 副檔名為php4php5的檔案禁止執行

   <Directory "網站根目錄">

    <Files ~ "\.(php4|php5)">

       Order allow,deny

       Deny from all

    </Files>

   </Directory>

 

  # 讓用戶或管理者上傳的目錄  直接讓一些不應該出現的檔案失效

   <Directory "路徑/upload/">

       php_flag engine off

       <Files ~ "\.(js|php|jsp|php4|php3|php5)">

         Order allow,deny

         Deny from all

       </Files>

   </Directory>

 

維度自動免費架站系統,讓你快速擁有自己的網站
維度架站(新版系統)
維度架站
維度雲商城

arrow
arrow
    全站熱搜

    Border 發表在 痞客邦 留言(0) 人氣()