x64环境下利用IDA+Windbg+VmWare实现对Nt!KiSystemStartup 的调试
2024-6-7 17:51:52 Author: mp.weixin.qq.com(查看原文) 阅读量:1 收藏

KiSystemStartup是内核模块nt 的入口函数,如果想调试此函数单单用windbg+Vmware是实现不了的(或者我不知道实现方法)。下面我将介绍一下用ida的GDB调试功能结合windbg的调试器共同实现对KiSystemStartup的调试方法。(只针对X64的环境)

1.Vmware虚拟的设置

打开Vmware虚拟机的安装路径下的.vmx配置文件,我的电脑是:Windows 10 x64.vmx这个文件,然后添加如下两行配置:
debugStub.listen.guest64 = "TRUE"
debugStub.hideBreakpoints = "TRUE"
类似这样:

配置windbg的调试环境:



windbg的快捷方式中,目标:"C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\windbg.exe" -b -k com:pipe,port=\.\pipe\com_1,resets=0



2.在Vmware中启动windows操作系统,待系统启动后管理员权限打开cmd,输入:
"bcdedit /bootdebug on" 开启winload.exe的启动项调试。
拷贝一份虚拟机中的ntoskrnl.exe文件至真是物理机,以备后用。
3.重新启虚拟机中的widnows,后开启windbg等待被中断。
4.此时windbg 断在 winload.exe进程中。
5.windbg中加载内核模块符号表后,查找根据符号
OslArchTransferToKernel 函数地址 addr=0x0000000000aa5ce0。
如:键入命令:u OslArchTransferToKernel



6.开启ida的gdb调试器,选择go后进入主界面。依次选择:Debugger->Attatch->Remote GDB debugger。



如果是64bit的一定选择port:8864。

7.选择Debug option->Set specific options,配置Processor为:Intel X64如下:



8.设置完毕后,会出现 下面的图示:


点击OK后,IDA成功attach到windows内核上。

9.设置IDA的内存映射。ida中主界面的Debugger->manual memory regions。

进入下图所示界面:


空白处,右键鼠标,选择insert,配置内存映射区域0-0xfffffffffffffffe。


点击确定。

10.此时gdb调试器的RIP也是在winload.exe的进程空间中。



11.ida中按G,输入windbg中获取到的。

OslArchTransferToKernel 函数地址,在此函数末尾下断点。



12.F9后,ida的gdb调试器就会执行到断点处。F7单步执行当执行完retfq指令后,就会进入KiSystemStartup函数的地址空间。

下面介绍如何让IDA加载系统符号,方便调试。IDA调试器必须要知道模块的基地址才能加载符号信息,所以我们需要找到目前内核nt模块的基地址。方法如下:

(1)在本地重新打开一个IDA并加载从虚拟机中拷贝出来的内核nt模块,计算出nt!KiSystemStartup和模块基地址之间的偏移地址如:OFFSET = 0x98D010。

(2)这样ida gdb调试器中的nt!KiSystemStartup地址-OFFSET就是当前调试器中内核nt模块的基地址Base如:(FFFFF80768800000)。

(3)加载符号:IDA主界面选择File->LoadFile->PDB file。




这时,我们可以看到符号信息已经加载正确,可以欢快的调试os的核心函数了。

看雪ID:大飞猪

https://bbs.kanxue.com/user-home-773270.htm

*本文为看雪论坛优秀文章,由 大飞猪 原创,转载请注明来自看雪社区

# 往期推荐

1、F5 Shape最新版逆向分析-加解密和补环境

2、IOT漏洞复现——PSV-2020-0437

3、自动化采集Android系统级设备指纹对抗&如何四两拨千斤?

4、基于 Frida 对单字节加密验证程序侧信道爆破

5、Frida-Hook-Native层操作大全

球分享

球点赞

球在看

点击阅读原文查看更多


文章来源: https://mp.weixin.qq.com/s?__biz=MjM5NTc2MDYxMw==&mid=2458558461&idx=2&sn=7bb9694f316cef38ec113f0a4320a978&chksm=b18daf7786fa2661658fe7bb318952d5898128b78833011460c70e95575beffb835fcf9be1f7&scene=58&subscene=0#rd
如有侵权请联系:admin#unsafe.sh