2013年5月14日 星期二

從菲律賓DNS被攻破一事,檢視一下自己的WEB站台,是否也有相同的「人為疏失」


從菲律賓DNS被攻破一事,檢視一下自己的WEB站台,是否也有相同的「人為疏失」


好久沒回到這PO文了,2013年的第1篇文就與台菲事件有關,但無關政治議題,僅就這次的網站攻擊事件,對網站的安全省思上,提出筆者的淺見與檢視工具

另外,感謝鄭老師提供了好方法,一行設定就可以解決,作法如下:
-----------------------------------------------------------------------------------------

我試過修改:/etc/apache2/mods-enabled/php5.conf

  <FilesMatch "\.ph(p3?|tml)$">
SetHandler application/x-httpd-php

改成
<FilesMatch "\.ph(p3?|tml|p~)$">
 SetHandler application/x-httpd-php

然後 service apache2 restart
把.php~ 也當成php來執行
也可以暫時避免這個漏洞說
 只是不知道會不會有其他副作用
------------------------------------------------------------------------------------------


可以到http://blog.xsoin.com/2013/05/govph-vim.html來看到事情始末,但看完劇情,是否也要想想「他山之石可以攻錯」
筆者自己使用vi 去編輯了php檔案,並不會留下php~的檔案,測試了leafpad, vi, geany等都無此問題,只有gedit的編輯器會留下此暫存,所以在linux系統上,目前除了gedit外,無此情況,網站上所說的vim,應該是for windows版本的
筆者的測試:
以mediamosa的站台測試,以gedit編輯cron.php檔案後,將留下禍根

正常的php程式

留下~後,將被視為一般文字檔(看光光)

果然,魔鬼藏在細節中,就算網站的防護做的好,但小疏失,可導致大損失


找出這些檔案:

知道有此問題後,就要去找出系統中的問題檔案,尤其是放在/var/www底下,以http對外服務的目錄,絕不應殘留這些檔案,但/var/www底下這麼多子目錄,要一層層下去找,會累死人,所以當然要使用有效率的指令,進行遞迴搜尋並處理,那就用find指令


find /var/www -name '*~' -printf "找到了!" -print;

找到了!/var/www/mediamosa/cron.php~
找到了!/var/www/mediamosa/install.php~
找到了!/var/www/mediamosa/modules/user/user.api.php~


當然,依筆者的習慣,find指令的參數相當多而雜,所以,寫成shell,以備不時之需



使用:
放到/root
chmod u+x find~.sh
./find~.sh
請輸入要檢查的目錄,如/var/www,/home/xxx/public_html
/var/www
檢查的位置是/var/www
13899368    4 -rw-r--r--   1 root     root          720  5月 14 16:29 /var/www/mediamosa/cron.php~
13899369    4 -rw-r--r--   1 root     root          688  5月 14 16:29 /var/www/mediamosa/install.php~
13899370   16 -rw-r--r--   1 root     root        14545  5月 14 16:30 /var/www/mediamosa/modules/user/user.api.php~
總共有
3筆符合的檔案,要如何處置?(移動請輸入:m,刪除請輸入:d,按其他鍵離開)
m
移動到/var/~files/

然後,檔案就移動到/var/~files/底下

再執行一次,確認無相關檔案
./find~.sh請輸入要檢查的目錄,如/var/www,/home/xxx/public_html
/var/www
檢查的位置是/var/www
總共有
0筆符合的檔案,要如何處置?(移動請輸入:m,刪除請輸入:d,按其他鍵離開)

不做任何動作...



最後,筆者順便檢查了/home,發現還真不少這樣的檔案,雖非公開的目錄,但還是處理一下

後記:
避免將來使用gedit編輯檔案又留下這些檔案,所以要修改gedit的「偏好設定」
這樣,就不會留下這樣的檔案了



沒有留言:

blender:修改器Modifiers

  使用Modifiers:Array做出以下效果 plain axes(平面軸) \ Bevel(斜角) boolean