Advanced Debugging
About AdvDbg Consult Train Services Products Tools Community Contact  
欢迎光临 高端调试 登录 | 注册 | FAQ
 
  ACPI调试
Linux内核调试
Windows内核调试
 
  调试战役
调试原理
新工具观察
 
  Linux
Windows Vista
Windows
 
  Linux驱动
WDF
WDM
 
  PCI Express
PCI/PCI-X
USB
无线通信协议
 
  64位CPU
ARM
IA-32
  CPU Info Center
 
  ACPI标准
系统认证
Desktop
服务器
 
  Embedded Linux
嵌入式开发工具
VxWorks
WinCE
嵌入式Windows
 
  易内核
  小朱书店
  老雷的微博
  《软件调试》
  《格蠹汇编》
沪ICP备11027180号

Windows内核调试

帖子发起人: greenland   发起时间: 2009-02-23 17:36 下午   回复: 15

Print Search
帖子排序:    
   2009-02-23, 17:36 下午
greenland 离线,最后访问时间: 2009-2-3 22:45:02 greenland

发帖数前75位
注册: 2009-02-03
发 贴: 15
windbg调试ntldr
Reply Quote
请问有没有方法用windbg调试ntldr啊?
不要用bochs调试的方法,那个我知道,但是没有routines的名字。
麻烦各位大侠告诉下方法。
谢谢!

IP 地址: 已记录   报告
   2009-02-23, 18:30 下午
WANGyu 离线,最后访问时间: 2012-9-10 3:34:00 王宇

发帖数前10位
男
注册: 2007-05-08
发 贴: 306
Re: windbg调试ntldr
Reply Quote
tiamo
IP 地址: 已记录   报告
   2009-02-23, 19:47 下午
MJ0011 离线,最后访问时间: 2009-12-24 22:33:41 MJ0011

发帖数前10位
注册: 2008-04-24
发 贴: 112
Re: windbg调试ntldr
Reply Quote
用ntldr_dbg替换ntldr就可以调试了 ,DDK下找
IP 地址: 已记录   报告
   2009-02-25, 08:57 上午
greenland 离线,最后访问时间: 2009-2-3 22:45:02 greenland

发帖数前75位
注册: 2009-02-03
发 贴: 15
Re: windbg调试ntldr
Reply Quote
谢谢MJ0011 我一会去试试
我也是做信息安全的 不过是学生啦
最近刚也有看看你关于tophet的东西呢
很佩服你

IP 地址: 已记录   报告
   2009-02-25, 09:13 上午
greenland 离线,最后访问时间: 2009-2-3 22:45:02 greenland

发帖数前75位
注册: 2009-02-03
发 贴: 15
Re: windbg调试ntldr
Reply Quote
刚找了一下 没发现 能告诉我一般是在哪个目录下么
我的系统是vista的 是不是可能没有那个东西啊
IP 地址: 已记录   报告
   2009-02-25, 10:12 上午
greenland 离线,最后访问时间: 2009-2-3 22:45:02 greenland

发帖数前75位
注册: 2009-02-03
发 贴: 15
Re: windbg调试ntldr
Reply Quote
我刚才在网上查了下 说是在debug目录下
我又在xp中装了下ddk 还是没找到ntldr_dbg
难道是ddk版本的问题?我用的是windows driver kit 6001.18001
IP 地址: 已记录   报告
   2009-02-25, 12:02 下午
MJ0011 离线,最后访问时间: 2009-12-24 22:33:41 MJ0011

发帖数前10位
注册: 2008-04-24
发 贴: 112
Re: windbg调试ntldr
Reply Quote
可能需要ifs ddk

http://bbs.driverdevelop.com/read.php?tid-96460.html这里有下载

IP 地址: 已记录   报告
   2009-02-25, 17:13 下午
greenland 离线,最后访问时间: 2009-2-3 22:45:02 greenland

发帖数前75位
注册: 2009-02-03
发 贴: 15
Re: windbg调试ntldr
Reply Quote
我下午又装了一个windows 2003 server版的ddk 终于找到ntldr_dbg了
我把xp的boot.ini中添加了调试选项 /debug comport:com1 /bautrate=15200/debugstop
然后又用ntldr_dbg替换了ntldr,结果启动的时候显示"NTLDR is corrupt. The system can not boot."
IP 地址: 已记录   报告
   2009-02-25, 17:39 下午
MJ0011 离线,最后访问时间: 2009-12-24 22:33:41 MJ0011

发帖数前10位
注册: 2008-04-24
发 贴: 112
Re: windbg调试ntldr
Reply Quote
你应该取了非I386的NTLDR_DBG文件


参考WINDOWS的BOOT代码:


if ((FileHeader->Characteristics & IMAGE_FILE_EXECUTABLE_IMAGE) == 0) {
puts(SU_NTLDR_CORRUPT);
WAITFOREVER;
}

if (FileHeader->Machine != IMAGE_FILE_MACHINE_I386) {
puts(SU_NTLDR_CORRUPT);
WAITFOREVER;
}
IP 地址: 已记录   报告
   2009-02-26, 09:11 上午
greenland 离线,最后访问时间: 2009-2-3 22:45:02 greenland

发帖数前75位
注册: 2009-02-03
发 贴: 15
Re: windbg调试ntldr
Reply Quote
谢谢MJ0011
确实是版本的问题
我的那个是windows server2003的
我在你给的那个网站上下了XP的 果然好了

IP 地址: 已记录   报告
   2009-02-26, 14:31 下午
greenland 离线,最后访问时间: 2009-2-3 22:45:02 greenland

发帖数前75位
注册: 2009-02-03
发 贴: 15
Re: windbg调试ntldr
Reply Quote
测试的时候发现调用一个函数的时候 后面出现的不是函数名字了 都是内存中的地址 不像在测试bootmgr等vista中的东西的时候 那些函数都是名字
这样,我想要了解ntldr的运行情况就要困难很多了
虽然基本的汇编的代码我看得懂 但是要弄清那些代码究竟是什么意思还是很难
请问有什么好一点的方法吗?
IP 地址: 已记录   报告
   2009-02-26, 14:39 下午
MJ0011 离线,最后访问时间: 2009-12-24 22:33:41 MJ0011

发帖数前10位
注册: 2008-04-24
发 贴: 112
Re: windbg调试ntldr
Reply Quote
下符号
IP 地址: 已记录   报告
   2009-02-26, 15:56 下午
greenland 离线,最后访问时间: 2009-2-3 22:45:02 greenland

发帖数前75位
注册: 2009-02-03
发 贴: 15
Re: windbg调试ntldr
Reply Quote
kd> .reload
Connected to Windows Boot Debugger 2600 x86 compatible target, ptr64 FALSE
Module List address is NULL - debugger not initialized properly.
WARNING: .reload failed, module list may be incomplete
KdDebuggerData.KernBase < SystemRangeStart
Loading Kernel Symbols
Module List address is NULL - debugger not initialized properly.
WARNING: .reload failed, module list may be incomplete

总是失败
IP 地址: 已记录   报告
   2009-02-27, 08:40 上午
greenland 离线,最后访问时间: 2009-2-3 22:45:02 greenland

发帖数前75位
注册: 2009-02-03
发 贴: 15
Re: windbg调试ntldr
Reply Quote
完整的信息如下:

Microsoft (R) Windows Debugger Version 6.9.0003.113 X86
Copyright (c) Microsoft Corporation. All rights reserved.

Waiting for pipe \\.\pipe\xp
Waiting to reconnect...
Connected to Windows Boot Debugger 2600 x86 compatible target, ptr64 FALSE
Kernel Debugger connection established.
Symbol search path is: *** Invalid ***
****************************************************************************
* Symbol loading may be unreliable without a symbol search path. *
* Use .symfix to have the debugger choose a symbol path. *
* After setting your symbol path, use .reload to refresh symbol locations. *
****************************************************************************
Executable search path is:
*********************************************************************
* Symbols can not be loaded because symbol path is not initialized. *
* *
* The Symbol Path can be set by: *
* using the _NT_SYMBOL_PATH environment variable. *
* using the -y argument when starting the debugger. *
* using .sympath and .sympath+ *
*********************************************************************
Module List address is NULL - debugger not initialized properly.
WARNING: .reload failed, module list may be incomplete
KdDebuggerData.KernBase .sympath
Symbol search path is: SRV*d:\xpsymbols*http://msdl.microsoft.com/download/symbols
kd> .reload
Connected to Windows Boot Debugger 2600 x86 compatible target, ptr64 FALSE
Module List address is NULL - debugger not initialized properly.
WARNING: .reload failed, module list may be incomplete
KdDebuggerData.KernBase < SystemRangeStart
Loading Kernel Symbols
Module List address is NULL - debugger not initialized properly.
WARNING: .reload failed, module list may be incomplete

IP 地址: 已记录   报告
   2009-02-27, 08:47 上午
greenland 离线,最后访问时间: 2009-2-3 22:45:02 greenland

发帖数前75位
注册: 2009-02-03
发 贴: 15
Re: windbg调试ntldr
Reply Quote
我先进XP下了一下symbols 然后又重启就好了
真奇怪啊 在用ntldr_dbg替换ntldr之前明明有.reload了的
不过不管了 只要能用就好了
IP 地址: 已记录   报告
  总页数 1 第 2 页 [共有 16 条记录] 1 2 >
高端调试 » 软件调试 » Windows内核调试 » Re: windbg调试ntldr

 
Legal Notice Privacy Statement Corporate Governance Corporate Governance
(C)2004-2013 ADVDBG.ORG All Rights Reserved.