首页
论坛
课程
招聘
[原创]Ntoskrnl_Viewer X64:可在非测试模式下符号化浏览内核内存
2022-8-28 19:00 3663

[原创]Ntoskrnl_Viewer X64:可在非测试模式下符号化浏览内核内存

2022-8-28 19:00
3663

Ntoskrnl_Viewer X64

本项目含三个模块

1.驱动模块(编译后的驱动需要和EXE放在同一文件夹)

 

2.用户模块

 

3.成品模块(驱动已签名)

功能 function:

可在不开启测试模式和WinDbg本地调试的情况下,以符号化的形式浏览本地内存!

 

不管是否为导出函数、未导出函数、系统内核变量、标志,只要在PDB文件中的符号,都能浏览其内存。

 

只支持X64系统,理论上支持任何版本(只要微软公开了此版本的PDB)

Windows 10:
 

Windows 11:
 

目前已实现的命令 :

“db” "dw" "dd" "dq",这四种功能同WinDbg,例如 :


(也可使用 l? 指定输出的个数,最大限度100 例: dq KeServiceDescriptorTable l4 效果如上图1)

”d“可通过符号读取内存,也可通过内存读取地址:(读取非法地址会报错):

“x” 同WinDbg:

退出需要通过命令"quit"。

不然驱动无法正常卸载!

此次更新

由于有PG、读写权限的原因,测试版先不提供写功能。
测试版 只支持X64系统,理论上支持任何版本(只要微软公开了此版本的PDB)
 

以后可能会更新 “eb、ew、ed、eq”命令。

 

The commands "EB, EW, ED, EQ" may be updated later.

 

会逐渐向 windbg本地调试可实现的功能靠近!

注意:

1.EXE和SYS需要放在同一目录下。
2.第一次运行会自动下载当前系统匹配的PDB文件(可能会有点久),如果无法下载,应该是网络问题。
3.管理员身份运行EXE,因为要安装内核服务。

 

项目地址:
Ntoskrnl_Viewer X64
期待你们的小星星


看雪招聘平台创建简历并且简历完整度达到90%及以上可获得500看雪币~

最后于 2022-8-31 21:57 被icey_编辑 ,原因: 更新
收藏
点赞1
打赏
分享
最新回复 (4)
雪    币: 2315
活跃值: 活跃值 (1305)
能力值: ( LV12,RANK:220 )
在线值:
发帖
回帖
粉丝
scz 活跃值 5 2022-8-29 10:16
2
0
与sysinternals的livekd.exe相比,有什么优势?它这个也不要求开启测试模式和WinDbg本地调试。
雪    币: 319
活跃值: 活跃值 (556)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
icey_ 活跃值 2022-8-30 10:38
3
0
scz 与sysinternals的livekd.exe相比,有什么优势?它这个也不要求开启测试模式和WinDbg本地调试。
你好,单功能而言,确实没有livekd如此全能。但是livekd的运行需要依靠windbg或kd的组件,还需要配置环境,我这个小项目不需要,直接运行就能用。
我这个小项目针对性比较强,就是为了能更方便快捷的查看Ntoskrnl的内存。开源,代码量少,原理简单,能和其他项目更好的结合。(缺点也能被我说成优点来
雪    币: 2315
活跃值: 活跃值 (1305)
能力值: ( LV12,RANK:220 )
在线值:
发帖
回帖
粉丝
scz 活跃值 5 2022-8-30 15:22
4
0
icey_ 你好,单功能而言,确实没有livekd如此全能。但是livekd的运行需要依靠windbg或kd的组件,还需要配置环境,我这个小项目不需要,直接运行就能用。 我这个小项目针对性比较强,就是为了能更方 ...
你说livekd需要配置环境指什么,设置_NT_SYMBOL_PATH环境变量或PATH环境变量?

livekd.exe -k kd.exe

需要kd.exe在场到是没错。不过一般都要看内核了,windbg不在场怕是很罕见。
雪    币: 1786
活跃值: 活跃值 (1633)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
fengyunabc 活跃值 1 2022-8-30 15:58
5
0
上次发现livekd的一个bug,第一次成功加载驱动A,假设基地址为a,然后成功卸载该驱动,再次成功加载驱动A,基地址为b,然而用livekd+windbg看到驱动A的基地址还是a!!
游客
登录 | 注册 方可回帖
返回