病毒實(shí)驗(yàn)二-映像劫持_第1頁
病毒實(shí)驗(yàn)二-映像劫持_第2頁
病毒實(shí)驗(yàn)二-映像劫持_第3頁
病毒實(shí)驗(yàn)二-映像劫持_第4頁
病毒實(shí)驗(yàn)二-映像劫持_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、病毒實(shí)驗(yàn)二映像劫持【實(shí)訓(xùn)目的】通過映像劫持操作讓學(xué)生熟悉注冊(cè)表編輯器的用途以及幾個(gè)相關(guān)軟件的操作,為以后進(jìn)行具體病毒分析打好基礎(chǔ)。【知識(shí)準(zhǔn)備】參見最后的附錄【實(shí)訓(xùn)要求】學(xué)員先確定需要被劫持的映像,然后在注冊(cè)表中找到:HKEY_LOCAL_MACHINESOFTWAREMICROSOFTWINDOWS NTCURRENTVERSION IMAGE FILE EXECUTION OPTIONS項(xiàng),對(duì)目標(biāo)文件進(jìn)行映像劫持操作。觀察效果?!緦?shí)訓(xùn)環(huán)境】l PC一臺(tái),安裝Windows XP版本。l 第三方工具autoruns軟件【實(shí)訓(xùn)步驟】1. 選擇NOTEPAD.EXE為被劫持的映像文件。打開注冊(cè)表編

2、輯器(在C:WINDOWS下打開regedit.exe文件或者在開始菜單中選擇“運(yùn)行”,在“運(yùn)行”中輸入regedit亦可),在注冊(cè)表中找到:HKEY_LOCAL_MACHINESOFTWAREMICROSOFTWINDOWS NTCURRENTVERSION IMAGE FILE EXECUTION OPTIONS項(xiàng) 圖1也可通過AUTORUNS軟件找到“映像劫持(IMAGE HIJACKS)”頁,找其中任意一項(xiàng),右鍵點(diǎn)擊“跳轉(zhuǎn)到注冊(cè)表(JUMP TO)”即可跳轉(zhuǎn)到此注冊(cè)表項(xiàng) 圖2右鍵點(diǎn)擊該項(xiàng),選擇“新建”“項(xiàng)”圖3用NOTEPAD.EXE來命名新建項(xiàng),在NOTEPAD.EXE項(xiàng)中新建字符串

3、值,命名DEBUGGER, 圖4數(shù)值數(shù)據(jù)為NTSD D ,此時(shí)記事本文件就無法正常運(yùn)行了。圖5圖6完成后,再啟動(dòng)記事本程序,就會(huì)發(fā)現(xiàn)打不開了。也可以把該項(xiàng)的數(shù)值數(shù)據(jù)設(shè)定為另一文件的路徑,例如:C:WINDOWSregedit.exe則此時(shí)執(zhí)行notepad.exe時(shí),就會(huì)自動(dòng)跳轉(zhuǎn)到運(yùn)行 regedit.exe附錄當(dāng)前的木馬、病毒似乎比較鐘情于“映像劫持”,通過其達(dá)到欺騙系統(tǒng)和殺毒軟件,進(jìn)而絕殺安全軟件接管系統(tǒng)。所謂的映像劫持(IFEO)就是Image File Execution Options,它位于注冊(cè)表的HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows

4、 NTCurrentVersion Image File Execution Options鍵值下。由于這個(gè)項(xiàng)主要是用來調(diào)試程序用的,對(duì)一般用戶意義不大,默認(rèn)是只有管理員和local User有權(quán)讀寫修改。雖然映像劫持是系統(tǒng)自帶的功能,對(duì)一般用戶來說根本沒什么用的必要,但是就有一些病毒通過映像劫持來做文章,表面上看起來是運(yùn)行了一個(gè)正常的程序,實(shí)際上病毒已經(jīng)在后臺(tái)運(yùn)行了。大部分的病毒和木馬都是通過加載系統(tǒng)啟動(dòng)項(xiàng)來運(yùn)行的,也有一些是注冊(cè)成為系統(tǒng)服務(wù)來啟動(dòng),他們主要通過修改注冊(cè)表來實(shí)現(xiàn)這個(gè)目的,主要有以下幾個(gè)鍵值:HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsC

5、urrentVersionRunHKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWindows AppInit_DLLsHKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionWinlogon NotifyHKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunOnceHKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServicesO

6、nce但是與一般的木馬、病毒不同的是,就有一些病毒偏偏不通過這些來加載自己,不隨著系統(tǒng)的啟動(dòng)運(yùn)行。木馬病毒的作者抓住了一些用戶的心理,等到用戶運(yùn)行某個(gè)特定的程序的時(shí)候它才運(yùn)行。因?yàn)橐话愕挠脩?,只要發(fā)覺自己的機(jī)子中了病毒,首先要察看的就是系統(tǒng)的加載項(xiàng),很少有人會(huì)想到映像劫持,這也是這種病毒高明的地方。映像脅持(IFEO)就是對(duì)注冊(cè)表下HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionImage File Execution Options項(xiàng)進(jìn)行修改,其目的使用戶在執(zhí)行被劫持程序時(shí)不予執(zhí)行,而是執(zhí)行另一個(gè)指定程序(像病毒),其操作

7、方法很簡(jiǎn)單:“開始”-“運(yùn)行”-“regedit”:HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionImage File Execution Options 然后選上Image File Execution Options,新建個(gè)項(xiàng),然后,把這個(gè)項(xiàng)改成avp.exe,選上這個(gè)項(xiàng),然后默認(rèn)右邊是空白的,點(diǎn)右鍵,新建個(gè)“字串符”,然后改名為“Debugger”這一步要做好,再雙擊該鍵,修改數(shù)據(jù)數(shù)值,把它改為 C:windowssystem32Virus.exe這樣,當(dāng)我們?cè)龠\(yùn)行avp.exe(卡巴)時(shí),就會(huì)執(zhí)行C:windows

8、system32目錄下的Virus.exe其原理在于:NT系統(tǒng)在試圖執(zhí)行一個(gè)從命令行調(diào)用的可執(zhí)行文件運(yùn)行請(qǐng)求時(shí),先會(huì)檢查運(yùn)行程序是不是可執(zhí)行文件,如果是的話,再檢查格式的,然后就會(huì)檢查是否存在。如果不存在的話,它會(huì)提示“系統(tǒng)找不到文件”或者是“指定的路徑不正確”等等。如果對(duì)于注冊(cè)表一點(diǎn)不懂的人,想運(yùn)用映像脅持技術(shù)(IFEO),也是完全可以的,跟運(yùn)用腳本,批處理修改注冊(cè)表是一樣的。創(chuàng)建一個(gè)批處理文件ifeo.bat ,內(nèi)容為:reg add HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersion Image File Executi

9、on Options%1 /v Debugger /t REG_SZ /d %2 /f在命令行下使用方法:ifeo ,例:ifeo avp.exe C:windowssystem32Virus.exe這樣即可達(dá)到與上述修改注冊(cè)表相同的效果由于這個(gè)項(xiàng)主要是用來調(diào)試程序用的,對(duì)一般用戶意義不大。默認(rèn)是只有管理員和local system有權(quán)讀寫修改。 在注冊(cè)表的HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NT CurrentVersionImage File Execution Options處新建一個(gè)以殺毒軟件主程序命名的項(xiàng),例如Rav.exe。然后再創(chuàng)

10、建一個(gè)子鍵“Debugger=C:WINDOWS system32drivers”。以后只要用戶雙擊 Rav.exe就會(huì)運(yùn)行OSO的病毒文件,類似文件關(guān)聯(lián)的效果?!菊f明】oso.exe是一個(gè)典型的U盤病毒,典型特征就是在硬盤的每個(gè)盤下面生成autorun.inf和oso.exe文件,并在硬盤右鍵出現(xiàn)AUTO,并在系統(tǒng)盤下生成可執(zhí)行文件 c:/windows/system32/server.exe,殺毒軟件殺毒后導(dǎo)致打開regedit.exe等被映象劫持的軟件打開錯(cuò)誤。 既然有這好處,我們當(dāng)然也可以利用這種技術(shù)留取各種后門例如shift后門sethc.exe 后門調(diào)用5個(gè)shiftWindows

11、RegistryEditorVersion5.00HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsNTCurrentVersionImageFileExecutionOptionssethc.exedebugger=c:windowssystem32cmd.exeon也可以在sql中利用這種辦法exec master.xp_regwrite HKEY_LOCAL_MACHINE,SOFTWAREMicrosoftWindows NTCurrentVersionImage File Execution Options sethc.exe,debugger, R

12、EG_sz,c:windowssystem32cmd.exe on;-類似的我們還可以留取放大鏡后門magnify.exeshift后門 利用黏貼鍵漏洞;sethc.exe是按5下shift后,windows就執(zhí)行了system32下的sethc.exe。本來是為不方便按組合 鍵的人設(shè)計(jì)的,當(dāng)你服務(wù)器受到攻擊時(shí),把sethc.exe 替換成木馬程序,就留下后門。你的服務(wù)器就等于他的服務(wù)器了解決的方法有兩種:一種去掉這個(gè)黏貼鍵功能,一種是修改改文件的權(quán)限以下內(nèi)容轉(zhuǎn)載自網(wǎng)絡(luò)第一種方法是直接刪除C:WINDOWSsystem32和C:WINDOWSsystem32dllcache這兩個(gè)目錄的 set

13、hc.exe文件,(注意:dllcache這個(gè)目錄是隱藏的,要在文件夾選項(xiàng)里選擇“顯示所有文件和文件夾”把“隱藏受系統(tǒng)保護(hù)的操作系統(tǒng)文件”的選擇取消才能看得到)。第二種方法是使用權(quán)限來約束這兩個(gè)文件C:WINDOWSsystem32和C:WINDOWSsystem32dllcache這兩個(gè)目錄的 sethc.exe文件,在權(quán)限里設(shè)置為所有用戶(Everyone)禁止運(yùn)行。刪除不如直接禁止運(yùn)行的好。這樣可以防止再次被安裝及覆蓋.ntsd用法ntsd從2000開始就是系統(tǒng)自帶的用戶態(tài)調(diào)試工具。被調(diào)試器附著(attach)的進(jìn)程會(huì)隨調(diào)試器一起退出,所以可以用來在命令行下終止進(jìn)程。使用ntsd自動(dòng)就獲

14、得了debug權(quán)限,從而能殺掉大部分的進(jìn)程。只有System、SMSS.EXE和CSRSS.EXE不能殺。前兩個(gè)是純內(nèi)核態(tài)的,最后那個(gè)是Win32子系統(tǒng),ntsd本身需要它。ntsd會(huì)新開一個(gè)調(diào)試窗口,本來在純命令行下無法控制,但如果只是簡(jiǎn)單的命令,比如退出(q),用-c參數(shù)從命令行傳遞就行了?!?ntsd -c q -p pid 】如果能知道進(jìn)程的pid,比如explorer.exe的pid為196,運(yùn)行cmd后輸入ntsd -c q -p 136即可殺掉這個(gè)進(jìn)程。【 ntsd -c q -pn 進(jìn)程名 】只要知道了進(jìn)程的名稱,比如explorer.exe,運(yùn)行cmd后輸入ntsd -c q

15、 -pn explorer.exe即可殺掉但是,如果同一個(gè)進(jìn)程(比如iexplorer.exe)開了多個(gè),就會(huì)出現(xiàn)錯(cuò)誤,所以,ntsd 每次只能結(jié)束一個(gè)單獨(dú)出現(xiàn)的進(jìn)程。下面為ntsd的用法和幫助ntsdusage: ntsd -? -2 -d -g -G -myob -lines -n -o -s -v -w -r BreakErrorLevel -t PrintErrorLevel -hd -pd -pe -pt # -pv -x | -xe|d|n|i - | -p pid | -pn name | command-line | -z CrashDmpFile -zp CrashPageF

16、ile -premote transport -robp -aDllName -c command -i ImagePath -y SymbolsPath -clines # -srcpath SourcePath -QR machine -wake -remote transport:server=name,portid -server transport:portid -ses -sfce -sicv -snul -noio -failinc -noshell【command-line】 在dubugger模式下運(yùn)行【-】 默認(rèn)為執(zhí)行【-G -g -o -p -1 -d -pd】參數(shù)【-a

17、DllName】設(shè)置默認(rèn)的擴(kuò)展dll【-c】執(zhí)行后面的dubugger命令 【-clines】 number of lines of output history retrieved by a remote client【-failinc】失敗時(shí)產(chǎn)生不完全的符號(hào)和模型【-d】 通過DbgPrint向kernel(核心)發(fā)送debugger輸出信息 注: -d 不可與debugger remoting同用 -d 只能在kernel(核心)debugger 可以用時(shí)才能使用【-g】在debuggee下忽略初始化斷點(diǎn) 【-G】忽略程序結(jié)束時(shí)的最終斷點(diǎn)【-hd】規(guī)定debug命令集不能用于(dubug

18、gee)創(chuàng)建的程序。該參數(shù)只能作用在Windows Whistler(windows xp的測(cè)試版本)系統(tǒng)上 【-o】 debug所有由debuggee載入的程序【-p pid】指定要綁定的進(jìn)程的十進(jìn)制ID(就是pid)【-pd】 指定debugger自動(dòng)與綁定的程序分離【-pe】 規(guī)定任何綁定都要對(duì)應(yīng)一個(gè)存在的debug端口【-pt #】指定中斷超時(shí)時(shí)間 【-pv】 指定任何綁定都是封閉的,不對(duì)外共享 【-r】 指定03等級(jí)的中斷(SeeSetErrorLevel)【-robp】允許在只讀內(nèi)存中設(shè)置斷點(diǎn)【-t】 指定顯示03級(jí)的錯(cuò)誤(SeeSetErrorLevel) 【-w】 指定在一個(gè)單

19、獨(dú)的VDM(DOS虛擬機(jī))中debug 16位應(yīng)用程序【-x】 在AV排除項(xiàng)中設(shè)置第二個(gè)可選斷點(diǎn) -xe|d|n|i 為指定的事件設(shè)置中斷狀態(tài) 【-2】 為debuggee創(chuàng)建一個(gè)單獨(dú)核心的窗口Ntsd.exe的用法:ntsd -c q -p PID或者ntsd -c q pn ImageName- c是表示執(zhí)行debug命令,q表示執(zhí)行結(jié)束后退出(quit),-p 表示后面緊跟著是你要結(jié)束的進(jìn)程對(duì)應(yīng)的PID,-pn 表示后面緊跟著是你要結(jié)束的進(jìn)程名(process_name.exe 比如:QQ.exe,explorer.exe 等等,值得注意的是后綴名.exe是不可省略的,否則系統(tǒng)會(huì)告訴你“不支持此接口”)查看pid及進(jìn)程名,我們可以在任務(wù)管理器看,在特殊情況下,也可以使用tasklist命令。比如我們要結(jié)束pid為3212的進(jìn)程maxthon.exe,那么我們可以在命令提示符中輸入:ntsd -c

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論