殺毒軟件智能主動防御的軟肋--無驅(qū)恢復(fù)系統(tǒng)SSDT表
大部分的殺毒軟件其內(nèi)置的主動防御功能,通??紤]到用戶易用性的問題,都是采用的智能HIPS攔截,也就是說內(nèi)置一些HIPS攔截規(guī)則,智能判斷未知運(yùn)行的程序安全性。智能HIPS為了解決兼容性的問題,通常攔截規(guī)則都比較寬松,否則會彈出許多攔截提示,而且會造成誤殺正常應(yīng)用程序的問題,因此智能HIPS往往會對一些特殊的內(nèi)核操作不進(jìn)行攔截,這也給木馬病毒留下了可供利用的空間。
上面提到的ByShell是通過加載驅(qū)動的方式實(shí)現(xiàn)恢復(fù)SSDT表的,這種方法目前已被殺毒軟件所查殺,然而有許多木馬開始采用了無驅(qū)方式恢復(fù)SSDT表,例如通過修改內(nèi)存、發(fā)送消息等,都可讓殺毒軟件的HIPS主動防御功能失效。
例如有一個名為"路過主動工具"的免殺程序,這個小工具可以讓目前最新的瑞星殺毒軟件2010、江民殺毒軟件KV2010、諾頓、卡巴斯基等主動防御功能全部失效。工具的使用很簡單,點(diǎn)擊"打開"按鈕,瀏覽指定要進(jìn)行過主動防御免殺的木馬程序,確定后點(diǎn)擊"路過一下主動"按鈕,指定保存路徑即可生成一個過所有殺毒軟件主動防御功能的木馬程序(圖1)。
圖1 路過主動工具#p#
運(yùn)行經(jīng)過處理的木馬程序,瑞星殺毒軟件2010、江民殺毒軟件KV2010等殺毒軟件的主動防御功能根本沒有任何提示,木馬被正常執(zhí)行加載。如果查看系統(tǒng)SSDT表,將會發(fā)現(xiàn)所有掛鉤的API函數(shù)已經(jīng)被恢復(fù)成系統(tǒng)原始狀態(tài)。
如果采用手工HIPS軟件進(jìn)行保護(hù)防御,則可以看到經(jīng)過免殺的木馬程序是通過直接修改物理內(nèi)存的方式,實(shí)現(xiàn)恢復(fù)SSDT表功能的(圖2)。這也說明了手工專業(yè)的HIPS軟件主動防御功能,遠(yuǎn)比殺毒軟件的智能HIPS防御更強(qiáng)。
圖2 修改物理內(nèi)存過主動防御#p#
完全過主動防御的木馬--Poison Ivy
Poison Ivy是一款極為特殊的木馬程序,它采用了特殊的ShellCode生成方式,并且可以突破各種殺毒軟件和一些專業(yè)HIPS軟件的主動防御功能,無聲無息的運(yùn)行于系統(tǒng)中。Poison Ivy的最新版本為2.3.2(圖3),被發(fā)布于2008年,然而直到2010年,Poison Ivy的過主動防御方式依然未能被各種殺毒軟件所攔截查殺,可見其生命力之強(qiáng)!
圖3 Poison Ivy木馬
Poison Ivy的功能也是極為的強(qiáng)大和全面,而且支持插件擴(kuò)展其功能,這也使得Poison Ivy木馬被廣泛利用。#p#
生成木馬服務(wù)端程序
運(yùn)行Poison Ivy,點(diǎn)擊菜單"File"→"New Server"命令,打開服務(wù)端生成對話框(圖4)。點(diǎn)擊"Create Profile"按鈕將新建一個配置文件,在打開的對話框中輸入一個配置文件名稱。完成后左邊項(xiàng)目欄中的原本灰色的按鈕將被激活,然后按其排列順序完成服務(wù)端的其它配置。
圖4 創(chuàng)建配置文件
點(diǎn)擊界面中的"Connection"按鈕,將出現(xiàn)設(shè)置連接信息的界面(圖5)。
圖5 反彈連接設(shè)置#p#
poison ivy是一個具有反向連接的木馬程序,可在"DNS/PORT"文本框中,輸入正確的客戶端IP地址和監(jiān)聽服務(wù)器端的端口。默認(rèn)設(shè)置為"127.0.0.1:3460:0"以連接本機(jī)進(jìn)行測試,可點(diǎn)擊"Add"按鈕添加設(shè)置(圖6)。
圖6 設(shè)置連接域名與端口
其它項(xiàng)目用于設(shè)置Poison Ivy被控端只有指定用戶可進(jìn)行控制和連接,可以保持默認(rèn)的空設(shè)置。其中,ID項(xiàng)中可輸入建立的用戶名,在"GROUP"中輸入組名,在"Password"輸入連接密碼。另外,可設(shè)置通過代理連接被控端。
點(diǎn)擊"Next"按鈕,進(jìn)入"Install"配置項(xiàng)。在Install配置界面,可以指定文件名、安裝到系統(tǒng)中的什么位置。為了突破主動防御,可選擇ActiveX Key方式啟動,并設(shè)置ActiveX插件名稱(圖7)。下方的Copy File使用默認(rèn)設(shè)置即可。其中有一個特殊的選項(xiàng)"Copy to Alternate Data Streams",這是采用NTFS分區(qū)數(shù)據(jù)流隱藏木馬,非常獨(dú)特少見的一種木馬隱藏方式。
圖7 選擇ActiveX Key啟動方式可過主動防御#p#
點(diǎn)擊Next下一步,在Advanced高級設(shè)置界面中,可以選擇"key logger"啟用記錄鍵盤輸入功能。在Format選項(xiàng)中,可以設(shè)置最終生成程序格式,一般生成PE文件格式,也可選擇生成ShellCode方式。這里選擇生成PE格式(圖8)。
圖8 點(diǎn)擊Icon按鈕
點(diǎn)擊Next下一步按鈕,點(diǎn)擊Icon按鈕,可為木馬程序設(shè)置一個圖標(biāo)。
再點(diǎn)擊"Generate"按鈕(圖9),指定木馬保存路徑,即可生成一個EXE格式的木馬程序了。生成的木馬程序體積僅有7KB,非常小巧。
圖9 生成木馬#p#
監(jiān)聽上線遠(yuǎn)程控制
當(dāng)遠(yuǎn)程目標(biāo)主機(jī)運(yùn)行了木馬程序后,就可打開客戶端進(jìn)行監(jiān)控了。
在Poison Ivy界面中點(diǎn)擊菜單"File"→"New Client"命令,打開生成客戶端界面(圖10)。在生成客戶端界面的"Listen on Port"下拉框中選擇建立服務(wù)端時設(shè)置的端口號,在"Password"文本框中輸入建立服務(wù)端時設(shè)置的密碼,或直接導(dǎo)入軟件產(chǎn)生的"KEY"文件,然后點(diǎn)擊"Start"按鈕就可以開始新的監(jiān)聽服務(wù)。
圖10 顯示上線主機(jī)信息
木馬上線后,在界面中會顯示上線主機(jī)信息,包括遠(yuǎn)程主機(jī)IP地址、CPU、內(nèi)存、系統(tǒng)版本等(圖11)。
圖11 木馬上線#p#
在上線主機(jī)列表中,雙擊主機(jī)名,可打開控制界面,就可以進(jìn)行各種遠(yuǎn)程控制了(圖12)。Poison Ivy的遠(yuǎn)程控制功能很強(qiáng),包括遠(yuǎn)程文件、注冊表、進(jìn)程、硬件設(shè)備、安裝程序、窗口管理,還可查看遠(yuǎn)程端口、管理員密碼和網(wǎng)絡(luò)密碼,鍵盤記錄、聲音記錄、桌面與視頻捕獲等。
圖12 遠(yuǎn)程控制功能
【編輯推薦】
- 基于Windows的攻擊可以繞過文件限制和網(wǎng)絡(luò)檢測
 - 強(qiáng)化企業(yè)系統(tǒng)安全從木馬程序開始
 - 清除能突破主動防御的新型木馬的有效方案
 - 主動防御型殺毒軟件技術(shù)的深入探討
 



























 
 
 
 
 
 
 