版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第二章引導(dǎo)型惡意代碼引言引導(dǎo)型惡意代碼運行在系統(tǒng)的底層,加載時機早、抗查殺能力強的特點引得攻擊者們對其趨之若鶩。當前計算機的引導(dǎo)方式主要有BIOS固件和UEFI固件兩類,本章重點介紹基于這兩類的引導(dǎo)型惡意代碼。Windows引導(dǎo)過程引導(dǎo)型病毒1Windows引導(dǎo)過程Windows引導(dǎo)過程1.1固件BIOS引導(dǎo)過程BIOS(BasicInputOutputSystem)全稱“基本輸入輸出系統(tǒng)”,它是計算機主板ROM芯片上的一組程序,它保存著計算機最重要的基本輸入輸出程序、開機后自檢程序和系統(tǒng)自啟動程序,它可以從CMOS中讀寫系統(tǒng)設(shè)置的具體信息,其主要功能是為計算機提供最底層的、最直接的硬件設(shè)置和控制。計算機加電后,系統(tǒng)首先由上電自檢程序(PowerOnSelfTest,POST)對各個硬件設(shè)備檢查,通常包括對CPU、640K基本內(nèi)存、1M以上擴展內(nèi)存、ROM、主板等測試,若發(fā)現(xiàn)問題,則給出提示信息或鳴笛警告。POST自檢完成后,讀入并執(zhí)行引導(dǎo)扇區(qū)的主引導(dǎo)記錄(MasterBootRecord,MBR),引導(dǎo)記錄找到安裝在操作系統(tǒng)的活動分區(qū),將控制權(quán)轉(zhuǎn)交給活動分區(qū)的引導(dǎo)記錄PBR,由該引導(dǎo)記錄找到分區(qū)上的操作系統(tǒng)啟動文件,從而完成操作系統(tǒng)的啟動。1.2固件UEFI引導(dǎo)過程UEFI(UnifiedExtensibleFirmwareInterface)全稱“統(tǒng)一的可擴展固件接口”,是一種詳細描述全新類型接口的標準,其主要目的為了提供在操作系統(tǒng)加載之前,面向所有平臺的一組標準的啟動服務(wù)。UEFI與傳統(tǒng)BIOS引導(dǎo)方法有很大區(qū)別,傳統(tǒng)的BIOS是與第一批PC兼容的計算機固件一起開發(fā)的,隨著PC硬件復(fù)雜性的增長,需要更復(fù)雜的BIOS代碼來配置它。而UEFI標準被提出后可以用統(tǒng)一的結(jié)構(gòu)控制固件的復(fù)雜性。UEFI固件類似一個小型操作系統(tǒng),它甚至有自己的網(wǎng)絡(luò)棧。它包含幾百萬行代碼,實現(xiàn)復(fù)雜,能夠提供比傳統(tǒng)BIOS更多的功能。UEFI具有更好的可編程性、更高的安全性、更強的可擴展性,并且更好的適應(yīng)64位平臺。1.3Windows操作系統(tǒng)引導(dǎo)過程卷引導(dǎo)記錄和初始加載程序bootmgr模塊和引導(dǎo)配置數(shù)據(jù)Windows引導(dǎo)過程視圖Windows引導(dǎo)過程引導(dǎo)型病毒2引導(dǎo)型病毒9DOSWin9x/meWin2000/XP/Win7…OS的變遷什么技術(shù)阻礙了引導(dǎo)型病毒的繼續(xù)擴張?引導(dǎo)型病毒采用什么技術(shù)突破了限制?引導(dǎo)型惡意代碼StoneBrainMonkey…PolyBoot
…鬼影系列
TDL系列…回顧--硬盤分區(qū)結(jié)構(gòu)
--系統(tǒng)啟動過程10BIOS啟動主機加電OS啟動系統(tǒng)啟動過程如果用惡意代碼替換引導(dǎo)記錄,那么…11什么是引導(dǎo)型病毒?2引導(dǎo)型病毒引導(dǎo)型病毒是指專門寄生在磁盤引導(dǎo)扇區(qū)或者主分區(qū)的引導(dǎo)扇區(qū)的計算機病毒。DOS時代叫病毒,Windows
NT后稱為引導(dǎo)型惡意代碼,或BootKit。危害:啟動早難清除破壞性大2引導(dǎo)型病毒12MBR的工作流程2引導(dǎo)型病毒病毒傳播:利用軟盤和硬盤的引導(dǎo)區(qū)進行自我復(fù)制。PC1(毒)PC2毒毒毒2引導(dǎo)型病毒病毒需解決的問題:病毒代碼必須能正常引導(dǎo)啟動計算機;病毒代碼運行后要常駐在內(nèi)存中;病毒代碼要能夠識別軟盤插入并能夠感染其引導(dǎo)區(qū);2引導(dǎo)型病毒15實現(xiàn)內(nèi)存駐留常規(guī)內(nèi)存(640KB)高端內(nèi)存(384KB)DOS內(nèi)存管理:實模式2引導(dǎo)型病毒W(wǎng)indows系統(tǒng)常用“事件觸發(fā)”的消息通知方式;病毒利用DOS系統(tǒng)插入軟盤時自動讀取軟盤引導(dǎo)區(qū)的方式進行判斷。實現(xiàn)軟盤的識別2引導(dǎo)型病毒17病毒代碼為常駐內(nèi)存開設(shè)空間設(shè)置傳播機制組合完整代碼,實現(xiàn)常駐內(nèi)存?引導(dǎo)型病毒的工作流程病毒的激活病毒的存儲病毒的感染2引導(dǎo)型病毒18BIOS(int13h)讀
AH=02h,寫AH=03hAL=扇區(qū)數(shù)CH=柱號的低8位CL=低6位為起始扇區(qū)號,高2位為柱號高2位DH:DL=磁頭號:驅(qū)動器實現(xiàn)磁盤讀寫例:讀主引導(dǎo)區(qū)所在1號扇區(qū)movax,0201hmoval,01hmovcx,0001hmovdx,0h19NT內(nèi)核的操作系統(tǒng)安全改進如何對扇區(qū)進行讀寫?1禁止通過BIOS中斷對硬件直接訪問2由DOS引導(dǎo)啟動后交由Windows運行,內(nèi)存采用保護模式管理2引導(dǎo)型病毒Bootkit2引導(dǎo)型病毒20Win2000、XP操作系統(tǒng)(1)應(yīng)用層
hDev=CreateFile("\.\PHYSICALDRIVE0",…);ReadFile(hDev,Buffer,512,&dwRet,0);
(2)驅(qū)動層
DeviceIoControl(…,IOCTL_OLS_SET_SECTION,…);
IoGetDeviceObjectPointer(L"http://??//PhysicalDrive0",…);
pIrpS=IoGetCurrentIrpStackLocation(pIrp);
pIrpS->Parameters.Write.ByteOffset=Sections_To_Byte(…);
Windows下如何讀寫扇區(qū)?pIrpSp->Flags
|=
SL_FORCE_DIRECT_WRITE
Bootkit2引導(dǎo)型病毒W(wǎng)in系統(tǒng)下讀寫磁盤引導(dǎo)扇區(qū)問題的解決,標志著可以對引導(dǎo)扇區(qū)進行改寫。21如何解決程序從DOS系統(tǒng)到Windows系統(tǒng)的跨越?Bootkit2引導(dǎo)型病毒22Windows引導(dǎo)過程BIOS加電自檢讀主引導(dǎo)扇區(qū)MBR讀激活分區(qū)DBRNTLDR將實模式轉(zhuǎn)換為保護模式OS啟動讀BOOT.INI文件,顯操作系統(tǒng)菜單加載NTDETECT.COM,檢測并注冊硬件信息選擇硬件配置文件進行硬件配置裝載內(nèi)核NtOsKrnl.EXE初始化內(nèi)核加載驅(qū)動程序啟動用戶登錄程序WinLogon.EXEBootkit2引導(dǎo)型病毒回歸初衷:實現(xiàn)一個代碼從主機啟動開始就駐留獲得控制權(quán)直到Windows操作系統(tǒng)啟動運行仍然在活躍在內(nèi)核?23trojan.sys(Win)mbrstart(DOS)從MBR中啟動,實現(xiàn)Windows系統(tǒng)加載時運行l(wèi)oadmc具體的木馬功能loadmc(Win)磁盤sec0sec1
sec2
sec3…mbrstartloadmctrojan.sys內(nèi)存trojan.sys組裝、加載及保護。windows系統(tǒng)是如何加載的?Bootkit2引導(dǎo)型病毒24Windows操作系統(tǒng)啟動的三階段MBR-DOS系統(tǒng)DOS-Windows系統(tǒng)Windows系統(tǒng)1.BIOS加電自檢2.讀取并執(zhí)行MBR3.讀激活分區(qū)DBR4.加載NTLDR1.SU初始化物理內(nèi)存,調(diào)用osloader2.初始化保護模式下的內(nèi)存子系統(tǒng)3.確定啟動分區(qū),讀boot.ini并加載NTDETECT.COM4.初始化系統(tǒng)目錄,將ntokrnl.exe加載內(nèi)存Ntoskrnl加載文件系統(tǒng)、注冊表,設(shè)備驅(qū)動程序等mbrstart如何在啟動的過程中實現(xiàn)三階段代碼控制權(quán)的交替?實質(zhì)是解決代碼進入內(nèi)存與激活兩個問題loadmctrojan.sysBootkit2引導(dǎo)型病毒以“鬼影”Bootkit為例25a.將loadmc代碼直接以新節(jié)patch到NTLDR上,并計算其在內(nèi)存中應(yīng)被加載的位置xxxx;b.定位Ntldr.callBlLoadBootDrivers,將其下一句改為callxxxx;Bootkit第一步:mbrstartpatchntldr通過hookint13中斷對讀取的扇區(qū)進行過濾,發(fā)現(xiàn)ntldr時對其實現(xiàn)hook,確保ntldr執(zhí)行時loadmc能夠獲得控制權(quán)。2引導(dǎo)型病毒26a.尋址BlLoaderBlock,通過其LoadOrderListHead結(jié)構(gòu)找到ntoskrnl.exe基址;b.在ntoskrnl.exe的空間中插入loadmc代碼中加載驅(qū)動的部分;c.通過ntoskrnl文件結(jié)構(gòu)找到導(dǎo)入函數(shù)OnInitSystem的地址,替換為loadmc的地址。Bootkit第二步:loadmc-hookntoskrnl通過對ntldr內(nèi)存空間的搜索,找到ntoskrnl.exe的基地址,通過inlinehook將其導(dǎo)入函數(shù)OnInitSystem替換為代碼中的loadmc函數(shù),確保ntoskrnl.exe執(zhí)行時獲得控制權(quán)。27Bootkit2引導(dǎo)型病毒第三步:trojan.sys木馬的加載loadmc驅(qū)動代碼加載時,系統(tǒng)初始化已完成,磁盤驅(qū)動、注冊表以及設(shè)備驅(qū)動等都已經(jīng)加載,因此直接可加載trojan.sys到內(nèi)核。思考題281.通過對磁盤結(jié)構(gòu)和文件系統(tǒng)的學(xué)習(xí)和分析,惡意代碼會隱蔽駐留在磁盤中的哪些位
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《外科手術(shù)基本技術(shù)》課件
- 2025年湖南貨運從業(yè)資格證模擬考試試題及答案大全
- 2025年蚌埠貨運資格證題庫下載安裝
- 2025年河南年貨運從業(yè)資格證考試試題及答案
- 水利工程清運施工合同
- 軌道交通電焊工程協(xié)議
- 旅游景區(qū)開發(fā)招投標委托期限
- 文化藝術(shù)外包協(xié)作
- 機械設(shè)備保函管理準則
- 銀行金融設(shè)備安全
- 牛肉丸銷售合同模板
- 上海市普陀區(qū)曹楊二中2025屆生物高二上期末綜合測試試題含解析
- 1.1 公有制為主體多種所有制經(jīng)濟共同發(fā)展 課件-2024-2025學(xué)年高中政治統(tǒng)編版必修二經(jīng)濟與社會
- 第三單元(單元測試)-2024-2025學(xué)年四年級上冊數(shù)學(xué)人教版
- 中高層管理人員薪酬激勵制度
- 2024年秋季新人教版七年級上冊英語全冊教案設(shè)計
- TWSJD 66-2024 放射工作人員職業(yè)健康檢查技術(shù)指南
- 江西美術(shù)出版社(贛美版)美術(shù)三年級上冊全冊課件
- 9《知法守法 依法維權(quán)》(教學(xué)設(shè)計)部編版道德與法治六年級上冊
- 山東省機場管理集團濟南國際機場股份有限公司招聘筆試題庫2024
- 2024年全國新能源汽車關(guān)鍵技術(shù)技能大賽考試題庫500題
評論
0/150
提交評論