调试NTDLL加载

1 随便切到一个进程

0: kd> !process 0 0 explorer.exe
PROCESS 8157e9a8 SessionId: 0 Cid: 06a4 Peb: 7ffde000 ParentCid: 0688
DirBase: 01f401e0 ObjectTable: e1f44840 HandleCount: 341.
Image: Explorer.EXE

0: kd> !dlls

 

0x00251f18: C:\WINDOWS\system32\ntdll.dll
Base 0x7c920000 EntryPoint 0x7c932c28 Size 0x00093000
Flags 0x80084004 LoadCount 0x0000ffff TlsIndex 0x00000000
LDRP_IMAGE_DLL
LDRP_ENTRY_PROCESSED
LDRP_PROCESS_ATTACH_CALLED 

 

2 把虚拟地址转为物理地址

0: kd> !vtop 01f401e0 0x7c932c28
X86VtoP: Virt 7c932c28, pagedir 1f401e0
X86VtoP: PAE PDPE 1f401e8 - 0000000003ff7801
X86VtoP: PAE PDE 3ff7f20 - 0000000003bff867
X86VtoP: PAE PTE 3bff990 - 0000000005c7a025
X86VtoP: PAE Mapped phys 5c7ac28
Virtual address 7c932c28 translates to physical address 5c7ac28.

 

3 往物理地址写入断点

0: kd> !eb 5c7ac28 cc
0: kd> g

ntdll!_DllMainCRTStartupForGS:
001b:7c932c28 cc int 3
0: kd> kvnf
# Memory ChildEBP RetAddr Args to Child
00 04dafc10 7c92118a 7c920000 00000002 00000000 ntdll!_DllMainCRTStartupForGS (FPO: [Non-Fpo])
01 20 04dafc30 7c93b175 7c932c28 7c920000 00000002 ntdll!LdrpCallInitRoutine+0x14
02 74 04dafca4 7c93afee 04dafd30 04dafd30 00b80000 ntdll!LdrpInitializeThread+0xc0 (FPO: [Non-Fpo])
03 78 04dafd1c 7c92e437 04dafd30 7c920000 00000000 ntdll!_LdrpInitialize+0x219 (FPO: [Non-Fpo])
04 00000000 00000000 00000000 00000000 00000000 ntdll!KiUserApcDispatcher+0x7
0: kd> !stacks

 

转载于:https://www.cnblogs.com/sysnap/p/4973989.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值