Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1348057
  • 博文数量: 81
  • 博客积分: 10060
  • 博客等级: 上将
  • 技术积分: 2366
  • 用 户 组: 普通用户
  • 注册时间: 2006-10-17 14:44
文章分类
文章存档

2009年(6)

2008年(75)

我的朋友

分类: WINDOWS

2008-04-10 09:55:43

windbg是调试驱动的工具,其实原来已经配置过他了,可以通过vm进行远程调试,但是那个过程忘记了,好像当初也是乱搞,然后突然发现好了,可是原来系统重装了,结果又要重新配置过了,结果现在,连symbol都出现问题,找了一些资料,终于搞定了。把这个过程写下来,以免忘记。
 
我在“symbol File Path”中设置“reload”,出现下面的问题:
 
 

lkd> .reload
Unable to read head of debugger data list
Connected to Windows XP 2600 x86 compatible target, ptr64 FALSE

*** ERROR: Symbol file could not be found.  Defaulted to export symbols for ntkrnlpa.exe -
Loading Kernel Symbols
..................................................................................................................................................
Loading User Symbols
............................................................................................................
Loading unloaded module list
.........................

还以为真是的操作系统是AMD64位的,而虚拟机是单核CPU的,symbol文件是不一样的,但是我的虚拟机系统是windows xp+sp2 32bit的,而symbol文件也是对应版本,应该不会错的。

使用一些命令,比如:u KeAttachProcess,则没有问题,应为这些函数是导出的,但是我用:u PspTerminateProcess,则显示错误,unresovle,好像又是symbol的问题,后面就这样设置了“symbol file path”:

C:\WINDOWS\Symbols; SRV*C:\WINDOWS\Symbols*

我的symbol文件放在C:\WINDOWS\Symbols目录下,然后添加了环境变量:
在我的电脑属性->高级->系统变量那里设置
变量名:_NT_SYMBOL_PATH
变量值:C:\WINDOWS\Symbols

然后reload,出现如下提示:

lkd> .reload
Connected to Windows XP 2600 x86 compatible target, ptr64 FALSE
Loading Kernel Symbols
................................................................................................................
Loading User Symbols
...................................................................
Loading unloaded module list
..........

然后输入命令:u PspTerminateProcess,终于有结果了:

805c863e 8bff mov edi,edi
805c8640 55 push ebp
805c8641 8bec mov ebp,esp
805c8643 56 push esi
805c8644 64a124010000 mov eax,dword ptr fs:[00000124h]
805c864a 8b7508 mov esi,dword ptr [ebp+8]
805c864d 3b7044 cmp esi,dword ptr [eax+44h]
805c8650 7507 jne nt!PspTerminateProcess+0x1b (805c8659)

事情貌似终于搞定了。可以反汇编函数,这样才能做inline hook了。

阅读(3049) | 评论(0) | 转发(0) |
0

上一篇:颓废中

下一篇:头痛中

给主人留下些什么吧!~~