首页
社区
课程
招聘
未解决 [求助]有更简单的方法,用WINDBG 找WIN10  KERNELBASE.dll  的导出函数API方法 吗?
发表于: 2019-4-12 16:00 1857

未解决 [求助]有更简单的方法,用WINDBG 找WIN10  KERNELBASE.dll  的导出函数API方法 吗?

2019-4-12 16:00
1857
                   
 本人是初学者,现在在看《加密解密》第四版,尝试用WINDBG 找WIN10  KERNELBASE.dll  的导出函数API,我的笨方法如下:
1)启动WINDBG ,随便Attach 一个用户进程;
2)WINDBG 窗口中找
     ModLoad: 00000000`75b10000 00000000`75d0a000   KERNELBASE.dll (我的WIN10 64位  KERNELBASE.dll 的基址是:00000000`75b10000)
3) dd 75b10000 +0X3C ----PE 文件的NT头偏移处
    00000000`75b10030  00000000 00000000 00000000 000000f0
4)显示NT头信息:dd 75b10000+0xf0
     00000000`75b100f0  00004550 0006014c 3424aead 00000000
      这里的00004550 即为NT的标志 :PE
5) 在NT头偏移78h处,找到EAT(导出表):  dd 75b10000+0xf0 + 0x78
00000000`75b10168  001b49c0 0000eac3 001c8adc 0000003c
6) 在EAT 头的1ch处获取AddressOfFunctions的地址:dd 75b10000+  001b49c0 + 0x1c
    00000000`75cc49c0  00000000 3424aead 00000000 001b936c

7) 在EAT头的20h处获取AddressOfNames地址:dd 75b10000+  001b49c0 + 0x20
00000000`75cc49e0  001b6750 001b84b8 00173310 000ee7a0
8)找到 001b6750地址所指向的函数名地址:dd 001b6750 + 75b10000
 00000000`75cc6750  001b9429 001b9435 001b944f 001b9461
9)显示 001b9429 + 75b10000 所指向的函数名:da 001b9429 + 75b10000
00000000`75cc9429  "AccessCheck"
10)找到函数输出序列号地址:dd 75b10000+  001b49c0 + 0x24
  00000000`75cc49e4  001b84b8 00173310 000ee7a0 00107220
11)显示函数输出序列号:dd 001b84b8 + 75b10000
`75cc84b8  00080007 000a0009 000c000b 000e000d


以上的操作用一条命令:
da (poi((poi((poi(75b10000+0xf0 + 0x78) and 00000000ffffffff) + 75b10000 + 0x20) and 00000000ffffffff) +  75b10000) and 00000000ffffffff) + 75b10000
然后我觉得我的方法太笨了,有没有更加简单的方法,请教大神们。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//