在windows平台做逆向、外掛等,經常需要調用很多未導出的內核函數,怎么方便、快速查找了?可以先用IDA等工具查看硬編碼,再根據硬編碼定位到需要調用的函數。整個思路大致如下: 1、先查找目標模塊 遍歷模塊的方式有多種。既然通過驅動在內核編程,這里選擇遍歷driverObject ...
字符串處理 在驅動中一般使用的是ANSI字符串和寬字節字符串,在驅動中我們仍然可以使用C中提供的字符串操作函數,但是在DDK中不提倡這樣做,由於C函數容易導致緩沖區溢出漏洞,針對字符串的操作它提供了一組函數分別用來處理ANSI字符串和UNICODE字符串。 針對兩種字符串,首先定義了它們的結構體 typedef struct STRING USHORT Length 字符串的長度 USHORT ...
2017-10-24 20:55 0 1077 推薦指數:
在windows平台做逆向、外掛等,經常需要調用很多未導出的內核函數,怎么方便、快速查找了?可以先用IDA等工具查看硬編碼,再根據硬編碼定位到需要調用的函數。整個思路大致如下: 1、先查找目標模塊 遍歷模塊的方式有多種。既然通過驅動在內核編程,這里選擇遍歷driverObject ...
Windows內核-7-IRP和派遣函數 IRP以及派遣函數是Windows中非常重要的概念。IRP 是I/O Request Pocket的簡稱,意思是I/O操作的請求包,Windows中所有User和Kernel之間的交流都會被封裝成一個IRP結構體,然后不同的IRP會被派遣到不同的派遣 ...
編譯環境Windows10 X64 首先通過 msr = (PUCHAR)__readmsr(0xC0000082);獲取內核函數入口地址, msr在開啟內核隔離模式下獲取到的是KiSystemCall64Shadow函數地址,在未開啟內核隔離模式下獲取到的是KiSystemCall64 ...
直接調用0環函數實現ReadProcessMemory&WriteProcessMemory函數 工具 IDA VC++6.0 步驟 一、實現ring0調用ReadProcessMemory 1、ALT+T 找到ReadProcessMemory 2、找到 ...
引子 WRK 是微軟於 2006 年針對教育和學術界開放的 Windows 內核的部分源碼, WRK(Windows Research Kernel)也就是 Windows 研究內核, 在 WRK 中不僅僅只提供了 Windows 內核模塊的部分代碼,其還提供了編譯工具, 也就 ...
本系列意在記錄Windwos線程的相關知識點,包括線程基礎、線程調度、線程同步、TLS、線程池等。 用內核對象進行線程同步 內核對象:Windows操作系統使用內核對象來管理進程、線程、文件等諸多種類的大量資源。內核對象的創建通常是通過Windows API ...
大槪就是看這個句柄是當前進程的句柄還是當前線程的句柄,最后再看看這AccessMode是內核還是用戶態下,內核的話,句柄表就用ObpKernelHandleTable,用戶態的話就用當前進程的句柄表 NTSTATUSObReferenceObjectByHandle ...
Windows 和 Linux 可以說是我們比較常見的兩款操作系統的。 Windows 基本占領了電腦時代的市場,商業上取得了很大成就,但是它並不開源,所以要想接觸源碼得加入 Windows 的開發團隊中。 對於服務器使用的操作系統基本上都是 Linux,而且內核源碼也是開源 ...