搜尋PEB結構獲取Kernel32 dll基址

2021-05-10 01:39:54 字數 1286 閱讀 9017

teb偏移0x30處,即fs:[0x30]位址處儲存著乙個指標,指向peb,peb結構的偏移0xc處儲存著另外乙個指標ldr,該指標執行peb_ldr_data

該結構的後三個成員是指向ldr_module鍊錶結構中相應三條雙向煉表頭的指標,分別是按照載入順序、在記憶體中位址順序和初始化順序排列的模組資訊結構的指標。

peb->ldr->initializationordermodulelist指向按照初始化順序排序的第乙個ldr_module節點的ininitializationordermodulelist成員的指標,在winnt平台下,該煉表頭節點的ldr_module結構包含的是ntdll.dll,而鍊錶的下乙個節點所包含的就是kernel32.dll相關的資訊。

彙編核心**:

mov

eax, dword ptr

fs:[

30]

;獲取peb基址

moveax, dword ptr

ds:[eax+c]

;獲取peb_ldr_data結構指標

movesi, dword ptr

ds:[eax+1c]

;獲取ininitializationordermodulelist成員指標

lods dword ptr

ds:[esi]

;獲取雙向鍊錶當前節點的後繼指標

movebx, dword ptr

ds:[eax+8]

;取其基位址,該結構當前包含的是kernel32.dll

git獲取Android最新kernel核心

git clone git kernel git branch a 在我的電腦上面可以看到下面的內容,前面帶星號是當前的分支 android 2.6.36 remotes origin archive android 2.6.32 remotes origin head origin android...

搜尋結構 雜湊

雜湊函式設計 1 直接定製法 2 除留餘數法 3 數學分析發 雜湊衝突乙個可能原因就是雜湊函式設計不合理 如果雜湊函式設計巧妙,雜湊衝突可能性越低,但是不能夠避免雜湊衝突。雜湊衝突的處理 閉雜湊和開雜湊 閉雜湊閉雜湊也叫開放位址法,當發生雜湊衝突時,如果雜湊表未被裝滿,說明雜湊表中還有空位置,那麼可...

獲取表結構

sql server 2000 feixian sql server 2000 select 表名 case when a.colorder 1 then d.name else end 表說明 case when a.colorder 1 then isnull f.value,else end ...