杜強(qiáng) 文博
摘 ?要:文章闡述了鍵盤木馬的特點(diǎn)、作用及其工作原理,并以VBS鍵盤記錄木馬為例介紹了鍵盤木馬從移植、監(jiān)聽到郵件通訊的整個過程,最后總結(jié)出防御鍵盤木馬的主要策略和方法。
關(guān)鍵詞:木馬;鍵盤木馬;木馬防御;木馬原理;木馬監(jiān)聽
中圖分類號:TP393 ? ? 文獻(xiàn)標(biāo)識碼:A ? ? ?文章編號:1006-8937(2015)02-0077-02
1 ?鍵盤記錄木馬介紹
所謂鍵盤木馬,就是鍵盤記錄木馬,就是通過記錄鍵盤的擊鍵記錄,來盜取帳號密碼的一種盜號型木馬,這種木馬通常用于盜取網(wǎng)銀,網(wǎng)游,QQ密碼等。這種木馬一般通過通訊工具、Ffp、網(wǎng)絡(luò)下載、U盤等工具極其隱蔽的植入用戶的電腦,一般情況下,防火墻不會攔截,甚至有些木馬和鍵盤記錄程序可以通過加殼繞過防火墻,同時也避免了被殺毒軟件查殺。
2 ?鍵盤記錄木馬工作原理
一般鍵盤記錄木馬有三個模塊組成:主模塊,鉤子過程模塊以及FTP模塊。
以鍵盤記錄員為例:木馬在系統(tǒng)中釋放完文件后,首先會修改SSDT(系統(tǒng)服務(wù)調(diào)度表),從而接觸各種具有主動防御功能的殺毒軟件的武裝。然后,它修改注冊表中的相關(guān)數(shù)據(jù),把木馬文件屬性設(shè)置為“系統(tǒng)”、“隱藏”和“只讀”,并將顯示模式鎖定為隱藏,讓用戶無法發(fā)現(xiàn)木馬文件。接下來,木馬啟動監(jiān)視程序,監(jiān)視用戶的鼠標(biāo)、鍵盤操作,從而記錄下用戶操作電腦時輸入的各種信息。并每隔一段時間,就將這些偷到的信息加密,以郵件的形式通過SMTP通信協(xié)議和網(wǎng)頁收信空間發(fā)送給木馬作者。由于是采取完整的鍵盤記錄,用戶在中毒電腦上輸入的所有信息都會被木馬作者所掌握。他只需經(jīng)過簡單的分析和篩選,便可從中找到用戶輸入的各種帳號和密碼,甚至可以掌握用戶的個人隱私。
3 ?典型算法分析-以VBS鍵盤記錄木馬為例
木馬程序的三大功能:隱藏、監(jiān)視與通信。
3.1 ?進(jìn)程的隱藏
對于實現(xiàn)進(jìn)程的隱藏可以做的很低級,比如,VBS最大的特點(diǎn)就是運(yùn)行時沒有任何的可見性元素,當(dāng)然,這是在你沒有任何的輸出提示對話框出現(xiàn)的情況下。也可做得非常高級,比如,進(jìn)程隱藏,免殺等技術(shù)的運(yùn)用,如果將VBS嵌入到網(wǎng)頁文件中一般的防火墻簡直無法察覺。
3.2 ?鍵盤輸入監(jiān)視
要實現(xiàn)對整個系統(tǒng)中所有進(jìn)程的鍵盤輸入的監(jiān)視,最常用的手法就是做一個全局的鍵盤鉤子,而要實現(xiàn)全局的鍵盤鉤子必須要用到Win32API中的Hook函數(shù)。
通過下面這段代碼就可以獲取鍵盤的輸入按鍵:
Do
If Not IsTheWindowActive()Then Exit Do
Dim TheKey
TheKey=""
TheKey=GetThePressKey()
TheKeyResult=TheKeyResult & TheKey
WScript.Sleep 20
Loop Until TheKey="[ENTER]"
3.3 ?通 ?訊
將鍵盤獲取的按鍵信息自動發(fā)送給指定郵箱。核心代碼如下:
Function SendEmail(SenderAddress,SenderPassword,Send-
eeAddress,BackupAddress)
With objEmail.Configuration..Item(MS_Space)=2'發(fā)信端口
.Item(MS_Space & "smtpserverport")=25'SMTP服務(wù)器端口
.Item(MS_Space & "sendusername")=strSenderID(0)'寄件人郵箱賬戶名
.Item(MS_Space & "sendpassword")=SenderPassword'帳戶名密碼
End With objEmail.Send發(fā)送郵件
End Function
4 ?鍵盤記錄木馬的防御方法
我們分析了鍵盤記錄木馬的工作過程,就可以針對性地對它進(jìn)行防御。
4.1 ?被告動防御
首先,截斷傳染源,作為普通用戶,殺毒防護(hù)軟件是必不可少的。在用戶首次安裝完系統(tǒng)之后、首次聯(lián)網(wǎng)之前就應(yīng)該將殺毒防護(hù)軟件安裝好,記得開啟防護(hù)監(jiān)控。
其次,瀏覽網(wǎng)頁或者下載軟件時要特別謹(jǐn)慎,往往木馬就是捆綁在不亮網(wǎng)頁和不明程序上的。所以,用戶應(yīng)該做到不瀏覽不健康不正規(guī)的網(wǎng)站,尤其不能點(diǎn)擊網(wǎng)站上浮動的色情廣告。
再次,常用軟件要到正規(guī)下載站去下載安裝。用戶使用電腦方面也要注意,在插入陌生的U盤時應(yīng)該先對U盤進(jìn)行木馬查殺。打開優(yōu)盤最好不用雙擊方式,因為雙擊打開盤符會觸發(fā)Autorun啟發(fā)方式的木馬。
4.2 ?主動防御
方法一:禁止自動啟動,用戶可以從木馬的自動啟動特性著手,木馬自動運(yùn)行有以下幾種途徑:在Win.ini中啟動、在System.ini中啟動、利用注冊表加載運(yùn)行、在Autoexec.bat和Config.sys中加載運(yùn)行、在Winstart.bat中啟動、綁定文件啟動,我們只要禁用這些啟動項就可以了。啟動項的主鍵都存在于注冊表的以下路徑:
①KEY_CURRENT_USER\Software\Microsoft\Windows\Cu-
rrentVersion下的run主鍵
②KEY_LOCAL_MACHINE\Software\Microsoft\Windows\Cu-
rrentVersion下的五個主鍵:Run,RunOnce.RunOnceEx,RunSer-
vices和RunServicesOnce。
既然知道了開機(jī)啟動項在注冊表的位置,那么用戶就應(yīng)該經(jīng)常打開注冊表去檢查一下啟動項是否正常。打開注冊表的方法很簡單“開始”——“運(yùn)行”——輸入“regedit”,然后依次按照上面的路徑依次展開找到相關(guān)主鍵查看是否有異常的啟動項。另外,用戶還可以利用運(yùn)行MSCONFIG的方法進(jìn)行啟動項的查看。
方法二:多用軟鍵盤最后,針對木馬木馬記錄鍵盤的特征,對于非常重要的賬號密碼,如網(wǎng)上銀行、阿里旺旺、股票賬號等,建議使用軟鍵盤輸入賬號密碼,雖然麻煩但是很安全,并不是每個木馬都可以解毒的。
5 ? 結(jié) ?語
雖然網(wǎng)絡(luò)時代病毒木馬橫行,但并非不可以防御。只要我們了解其工作原理,針對性的制定策略進(jìn)行防御,就可以很好的保護(hù)電腦和信息的安全。
參考文獻(xiàn):
[1] 李輝.黑客攻防與計算機(jī)病毒分析[M].北京:電子信息技術(shù)出版社,2012.
[2] 程秉輝.木馬防護(hù)全攻略[M].北京:科學(xué)出版社,2010.
[3] 鄧吉.黑客攻防實戰(zhàn)入門(第2版)[M].北京:電子工業(yè)出版社,2011.