我想获得的基址ntdll.dll
上的PEB
。所以,我所做的是转储PEB
( d fs:[30]
)。然后,我试图PEB_LDR_DATA
越过 offset 0xC
。在偏移量0x1C
上PEB_LDR_DATA
我找到了 的指针,InInitializationOrderModuleList
我被告知我可以在ntdll.dll
那里找到地址。并且我应该首先找到kernel32.dll
(它总是第二个条目)的地址。所以,我能够找到 的地址,kernel32.dll
但似乎找不到 的地址ntdll.dll
。
00251ED8 .ܛὈ%Ậ%ὐ%Ẵ%.....@ᐴ@怀.TVٜڔ倀...뉨粘뉨粘趨即....ꮫꮫꮫꮫ......ܨ‐%Ỡ%‘%Ứ%
00251F58 †%Ẽ%.粑Ⱘ粒怀:Ȉ퀨粘⅘粓䀄耈..니粘니粘뾿䠂....ꮫꮫꮫꮫ......ܵC:\WINDOWS\system32\
00251FD8 kernel32.dll.ꮫꮫꮫꮫﻮﻮﻮ......߁⅐%Ὀ%⅘%ὐ%Ⅰ%%.粀똾粀耀@Bᾰ%Ῐ%䀄耈..늰粘늰粘뿀䠂
00252058 ....ꮫꮫꮫꮫ.....ߎC:\WINDOWS\WinSxS\x86_Microsoft.VC90.CRT_1fc8b3b
002520D8 9a1e18e3b_9.0.21022.8_x-ww_d08d0375\MSVCR90.dll.ꮫꮫꮫꮫ.....ߩẬ%‐%
00252158 Ẵ%‘%Ẽ%†%.硒ⵀ硔 .¾À⁸%℠%䀆逈..닀粘닀粘㷎䜱....ꮫꮫꮫꮫ....ߊ.ᓮîŸ%Ÿ%ﻮﻮﻮﻮﻮﻮﻮﻮﻮﻮﻮﻮ
这是我找到kernel32.dll
. 但事实上这是一个链表。我不应该也能找到ntdll.dll
吗?
当我打开“可执行模块”的窗口,我能看到ntdll.dll
,但它似乎我无法找到的基址内Struct
。
请告诉我您是否需要澄清或者我是否有严重的错误。