星期六, 7月 22, 2006

如何發現木馬

貓問我怎麼發現有中木馬,我用的東西都很簡單,主要是注意異常而已。
  • 安裝個人防火牆軟體。我自己用的是ZoneAlarm的免費版本,它能攔截各個程式對網路的動作。我通常只開必要的程式,當莫明奇妙的程式要用網路時就會發現。

  • 使用firefox。其實firefox是否比IE安全?或是相容性夠不夠好都並不重要,去使用和大眾不同的東西才是重點。因為比較小眾,較不容易成為主流攻擊的焦點。非主流的東西一般在使用上都會不習慣,但是firefox已經夠好了。不過隨著用戶數增加,firefox成為攻擊標的應該只是時間問題。

  • 限制IE的網路權限。在我的ZoneAlarm設定中,IE在使用網路前都要再確認。這幾次異常的徵兆之一,就是啟動過程中IE會要求使用網路,而這是當初重裝機器時沒有的現象,這表示木馬以某種方法利用IE的身法去用網路。我遇到這種狀況時都不許IE去用網路,猜測這也是第一次中木馬時,側錄的資料沒有送出去的原因。不過這樣只是知道有異常,沒有辦法找出元兇。

  • 檢查開機時執行的程式。程度較低的作者會以開機外掛程式的方法來執行木馬,可以用autoruns之類的工具檢查是否有不正常的程式在開機時執行。我第一次遇到的木馬就把自己掛成IE的擴充DLL。

  • 查服務列表。NT的服務基實和一般程式是一樣的,但是一般使用者比較陌生,所以外掛成服務也是木馬常用的手法。像這次我用「控制台」裡「系統管理工具」的「服務」去看,赫然發現有個叫GreyPigeonServer的服務,不能啟動也不能停止。

  • 查裝置管理員。「控制台」-「系統」,選「硬體」頁按「裝置管理員」叫出裝置管理員。執行「檢視」-「顯示隱藏裝置」,就會看到多一項「非隨插即用裝置」,這裡頭通常是很舊的硬體,或是沒有依附硬體而單獨存在的驅動程式(如虛擬光碟)。在我發現木馬時,這裡就多了好幾個莫名奇妙的東西,而且有的還弄出一些似是而非的名字(Microsoft XXX Manager)。我是一個一個去看內容,並且利用google來確認其身份。如果確定有問題就直接解除安裝。

  • 使用偵測工具。我感覺一般的防毒程式或惡意程式偵測工具的作用都不大,個人是用RootkitRevealer這個分析工具,它是直接檢查系統中是否有被特殊技術隱藏起來的registry或檔案,而這種現象有可能是惡意程式所產生的。

如果嫌這些東西太複雜,很難攪清楚,可以在確定系統乾淨時,用截圖或抄寫的方法把開機程式、服務、非隨插即用裝置記下來。懷疑有問題時就比對之前的記錄,多出來的東西通常就是問題所在。
=== 本文結束 ===

3 則留言:

lcat 提到...

看起來果然很複雜 *_<

mph 提到...

哎呀呀,連貓都說複雜,果然是太複雜了。那只好等夠力的工具出現吧。

tu 提到...

這個年頭,只要是「需要的步驟稍微繁瑣」、「有許多不確定性」、「不太能夠一步步地照著做實驗」,就算是很複雜了。

工具,就是希望能夠「點按個兩三下,就看到結果」,藉此來節省一些氣力吧?