版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Windows內(nèi)核安全編程實(shí)踐之路,安于此生@看雪學(xué)院,自我介紹,安于此生@ExpLife,現(xiàn)任高級(jí)逆向工程師。主要從事windows驅(qū)動(dòng)開(kāi)發(fā)及逆向方面的工作,擅長(zhǎng)C/C++,ASM,軟件調(diào)試逆向,惡意代碼分析與對(duì)抗。 主頁(yè):https://github.com/ExpLife0011https://github.com/ExpLife0011/awesome-windows-kernel-security-devel
2、opment,本課內(nèi)容,UNREFERENCED_PARAMETER宏的運(yùn)用初識(shí)UNICODE_STRING結(jié)構(gòu)探究驅(qū)動(dòng)程序入口函數(shù)的兩個(gè)參數(shù),,在編寫(xiě)驅(qū)動(dòng)的時(shí)候,如果有函數(shù)的參數(shù)在函數(shù)體內(nèi)未引用, 并且將警告視為錯(cuò)誤的編譯選項(xiàng)啟用了的話(huà),這時(shí)驅(qū)動(dòng)程序 編譯會(huì)報(bào)錯(cuò),并提示程序中存在未引用的變量.這個(gè)時(shí)候我 們只需要使用UNREFERENCED_PARAMETER來(lái)描述未引 用到的參數(shù)就可以消除該警告,UNREFERENCED
3、_PARAMETER宏的運(yùn)用,typedef struct _UNICODE_STRING { USHORT Length; USHORT MaximumLength; PWSTR Buffer;} UNICODE_STRING, *PUNICODE_STRING;Length:存儲(chǔ)在緩沖區(qū)中的字符串所占的字節(jié)數(shù)MaxinumLength:緩沖區(qū)能夠容納的字節(jié)數(shù)Buffer:指向了用于包含一個(gè)寬字符字符串的緩
4、沖區(qū),初識(shí)UNICODE_STRING結(jié)構(gòu),入口函數(shù)的第一個(gè)參數(shù)PDRIVER_OBJECT DriverObject typedef struct _DRIVER_OBJECT { CSHORT Type; //驅(qū)動(dòng)程序的類(lèi)型 CSHORT Size;
5、 //驅(qū)動(dòng)對(duì)象結(jié)構(gòu)體的大小 PDEVICE_OBJECT DeviceObject; //指向驅(qū)動(dòng)程序創(chuàng)建的設(shè)備對(duì)象,這些設(shè)備對(duì)象構(gòu)成一個(gè)鏈表 ULONG Flags; //驅(qū)動(dòng)程序標(biāo)志 PV
6、OID DriverStart; //驅(qū)動(dòng)程序映像的起始地址 ULONG DriverSize; //驅(qū)動(dòng)程序映像的大小 PVOID DriverSection;
7、 //指向驅(qū)動(dòng)程序映像的內(nèi)存區(qū)對(duì)象,可以通過(guò)該成員遍歷系統(tǒng)中所有的驅(qū)動(dòng)模塊 PDRIVER_EXTENSION DriverExtension; //指向驅(qū)動(dòng)程序?qū)ο蟮臄U(kuò)展結(jié)構(gòu) UNICODE_STRING DriverName; //驅(qū)動(dòng)的名稱(chēng) PUNICODE_STRING HardwareDatabase;
8、 //設(shè)備的硬件數(shù)據(jù)庫(kù)名,一般為HKEY_LOCAL_MACHINE\Hardware\DESCRIPTION\System PFAST_IO_DISPATCH FastIoDispatch; //指向文件系統(tǒng)以及網(wǎng)絡(luò)傳輸驅(qū)動(dòng)會(huì)用到的派遣函數(shù)的指針表 PDRIVER_INITIALIZE DriverInit; //指向DriverEn
9、try函數(shù),這是IO管理器設(shè)置的 PDRIVER_STARTIO DriverStartIo; //記錄StartIO例程的函數(shù)地址,用于串行化操作. PDRIVER_UNLOAD DriverUnload; //指向驅(qū)動(dòng)卸載時(shí)所用的回調(diào)函數(shù)地址 PDRIVER_DISPATCH MajorFunction[IRP_MJ_MA
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 寒江獨(dú)釣——windows內(nèi)核編程與信息安全(免費(fèi)試讀版)
- linux0.11內(nèi)核研究與內(nèi)核編程實(shí)踐
- Windows內(nèi)核模塊安全技術(shù)的研究與實(shí)現(xiàn).pdf
- windows高級(jí)編程
- 內(nèi)核中c++編程
- 內(nèi)核編程筆記(一、內(nèi)核字符串處理)
- Windows內(nèi)核安全機(jī)制中進(jìn)程多點(diǎn)聯(lián)合隱藏技術(shù)研究.pdf
- Windows內(nèi)核態(tài)Rootkit隱藏性研究.pdf
- windows系統(tǒng)內(nèi)核rootkit的檢測(cè)技術(shù)研究
- 第6章windows編程資料
- windows游戲編程快速入門(mén)方法
- 64位Windows操作系統(tǒng)內(nèi)核監(jiān)控研究.pdf
- 基于Windows內(nèi)核的軟件保護(hù)系統(tǒng)研究.pdf
- Windows系統(tǒng)內(nèi)核Rootkit的檢測(cè)技術(shù)研究.pdf
- 基于Windows內(nèi)核驅(qū)動(dòng)的加密文件系統(tǒng).pdf
- Windows內(nèi)核態(tài)密碼服務(wù)接口設(shè)計(jì)與實(shí)現(xiàn).pdf
- windows可視化編程復(fù)習(xí)資料
- 系統(tǒng)核心編程win+c內(nèi)核對(duì)象
- windows高級(jí)編程-中山市華僑中學(xué)
- 基于windows(2000-2003)內(nèi)核對(duì)象的rootkit檢測(cè).pdf
評(píng)論
0/150
提交評(píng)論