首页
课程
问答
CTF
社区
招聘
峰会
发现
排行榜
知识库
工具下载
看雪20年
看雪商城
证书查询
登录
注册
首页
社区
课程
招聘
发现
问答
CTF
排行榜
知识库
工具下载
峰会
看雪商城
证书查询
社区
AI 工具与工作流
发新帖
3
2
[原创]内核学习阶段还在翻手册查 PDE/PTE 标志位?这个工具让你一眼看懂
发表于: 2026-4-28 06:37
1714
[原创]内核学习阶段还在翻手册查 PDE/PTE 标志位?这个工具让你一眼看懂
刘宝
2026-4-28 06:37
1714
--- # [原创]TF_PDE-PTE:x86/x64 分页地址转换与段描述符可视化学习工具 关于本工具 声明:本工具在 AI(DeepSeek)协助下完成开发,核心逻辑由人工设计,代码实现 AI 参与。 开发过程:人工设计架构 + AI 辅助编码 ## 0x00 写在前面 学习 x86 分页机制的时候,有没有这种感觉: - PDE/PTE 几十个标志位,学完就忘 - WinDbg 的 `!vtop` / `!pte` 输出是一堆十六进制数,要对着手册手动拆位 - 每次想确认一个线性地址转换是否正确,都要翻半天 Intel 手册 为了解决这个痛点,我写了一个本地 Qt 可视化学习工具:**TF_PED-PTE** 绿色 = 1(开启),红色 = 0(关闭),一眼看清标志位状态。  --- ## 0x01 工具定位 > 专治"学完就忘,不想翻笔记"的分页/段描述符标志位可视化查阅器 - **粘贴即用**:支持 WinDbg 输出自动解析 - **一图胜千言**:绿红块可视化,一眼看清标志位状态 - **离线可用**:无需网络,不依赖在线服务 - **轻量快速**:PySide6 / Qt 实现 --- ## 0x02 功能概览 ### 1. 分页地址转换(核心功能) | 特性 | 说明 | |------|------| | 分页模式 | 非 PAE / PAE | | 输入方式 | 手工填写 CR3/PDPTE/PDE/PTE/线性地址,或直接粘贴 WinDbg 文本自动抽取 | | 输出 | 详细文本报告 + 真彩色标志位卡片 | **真彩色标志位卡片示例:**   - ???? 绿色 = 1(开启) - 红色 = 0(关闭) - ⚪ 灰色 = 保留位 / 忽略位 ### 2. 段描述符解析 支持解析 64 位段描述符: - Type / S / DPL / P / G / D/B / L - 自动区分代码段/数据段/系统段 - 展示默认操作数宽度、栈指针语义等  ### 3. 分页位拆分 | 分页模式 | 位拆分 | |---------|--------| | non_pae | 10 / 10 / 12 | | pae | 2 / 9 / 9 / 12 | | x64 | 9 / 9 / 9 / 9 / 12 | 以文本方式显示位切分和索引值。  --- ## 0x03 WinDbg 联动 支持以下格式的自动解析: **!vtop 输出示例:** ``` kd> !vtop 3eb63ac0 0028E928 X86VtoP: Virt 0028e928, pagedir 3eb63ac0 X86VtoP: PAE PDPE 3eb63ac0 - 0000000019487801 X86VtoP: PAE PDE 19487008 - 0000000023ec2867 X86VtoP: PAE PTE 23ec2470 - 8000000019ed2967 X86VtoP: PAE Mapped phys 19ed2928 ``` **!pte 输出示例:** ``` VA 12345678 PDE at C030048C PTE at C0091A28 contains 00ABC003 contains 0FEDC007 ``` 粘贴到工具文本框,点击"从文本提取字段",自动填充所有字段并执行转换。 --- ## 0x04 界面预览 ``` ┌─────────────────────────────────────────────────────────────────┐ │ [分页转换] [段描述符] [分页拆分] │ ├─────────────────────────────────────────────────────────────────┤ │ ┌─────────────────────┐ ┌─────────────────────────────────────┐ │ │ │ 输入区 │ │ ???? 标志位可视化面板 │ │ │ │ - 线性地址 │ │ ┌─────┬─────┬─────┬─────┬─────┐ │ │ │ │ - CR3 │ │ │ P │ R/W │ U/S │ PWT │ PCD │ │ │ │ │ - PAE 复选框 │ │ │ 1 │ 1 │ 1 │ 0 │ 0 │ │ │ │ │ - PDPTE/PDE/PTE │ │ └─────┴─────┴─────┴─────┴─────┘ │ │ │ │ - WinDbg 文本导入 │ │ │ │ │ └─────────────────────┘ │ ┌─────┬─────┬─────┬─────┬─────┐ │ │ │ │ │ A │ D │ G │ PAT │ NX │ │ │ │ │ │ 1 │ 0 │ 1 │ 0 │ 0 │ │ │ │ │ └─────┴─────┴─────┴─────┴─────┘ │ │ │ └─────────────────────────────────────┘ │ │ ┌─────────────────────────────────────────────────────────────┐ │ │ │ 详细报告 │ │ │ │ ======================================================== │ │ │ │ 模式: PAE │ │ │ │ 线性地址: 0x0028E928 │ │ │ │ 物理地址: 0x19ED2928 │ │ │ │ 结论: PDPTE.P=1,PDE.P=1,PDE.PS=0,PTE.P=1,有效 │ │ │ └─────────────────────────────────────────────────────────────┘ │ └─────────────────────────────────────────────────────────────────┘ ``` --- ## 0x05 运行环境与使用方法 ### 环境要求 - Python 3.8+ - PySide6 ### 安装依赖 ```bash pip install PySide6 ``` ### 运行 ```bash python run_tf_ped_pte.py ``` ### 快速上手 1. **非 PAE 示例**:点击"非 PAE 示例"按钮,自动填充并转换 2. **PAE 示例**:点击"PAE 示例"按钮 3. **WinDbg 文本**:复制 WinDbg 输出,粘贴到文本框,点击"从文本提取字段" --- ## 0x06 项目文件说明 | 文件 | 说明 | |------|------| | `run_tf_ped_pte.py` | 启动入口 | | `tf_ped_pte/qt_app.py` | Qt 主界面 | | `tf_ped_pte/paging_logic.py` | 分页换算核心逻辑 | | `tf_ped_pte/gui_support.py` | WinDbg 正则解析、标志位颜色模型 | | `tf_ped_pte/segment_logic.py` | 段描述符解析、分页拆分逻辑 | --- ## 0x07 已知限制 - 当前仅支持 32 位线性地址的 PAE/非 PAE 转换(x64 模式仅位拆分支持) - 不直接连接 WinDbg,不读取 live memory - WinDbg 文本解析依赖正则表达式,极端格式可能需要微调 --- ## 0x08 下载地址 **GitHub**:<mark class="encrypted">656K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6Y4K9i4c8Z5N6h3u0Q4x3X3g2U0L8$3#2Q4x3V1k6T1j5h3W2@1j5h3&6Y4x3o6x3J5i4K6u0r3f1p5g2p5i4K6u0V1f1q4c8q4i4K6u0V1g2X3W2*7i4K6u0r3N6s2u0W2k6g2)9J5c8X3#2S2K9h3^5`.</mark> --- ## 0x09 后续计划 - [ ] x64 完整分页转换支持 - [ ] 一键复制可视化面板为图片 - [ ] 输入历史记录 - [ ] 亮色/暗色主题切换 --- ## 0x0A 写在最后 这个工具的目标很简单:**当你需要查分页标志位的时候,不用再翻手册。** 如果你觉得有用,欢迎点赞、转发、提 PR。 有问题或建议,直接回帖或 GitHub Issues 见。 --- **TF_PDE-PTE** —— 让分页学习不再痛苦 ???? ---
冰与火的战歌:Windows内核攻防实战高级班!从零到实战,融合AI与Windows内核攻防全技术栈,打造具备自动化能力的内核开发高手。
最后于
2026-4-28 06:45 被刘宝编辑 ,原因:
收藏
・
3
点赞
・
2
打赏
分享
分享到微信
分享到QQ
分享到微博
赞赏记录
参与人
雪币
留言
时间
我的小拇指啊
感谢你分享这么好的资源!
2026-4-28 18:25
a0yark
为你点赞!
2026-4-28 08:50
查看更多
赞赏
×
1 雪花
5 雪花
10 雪花
20 雪花
50 雪花
80 雪花
100 雪花
150 雪花
200 雪花
支付方式:
微信支付
赞赏留言:
快捷留言
感谢分享~
精品文章~
原创内容~
精彩转帖~
助人为乐~
感谢分享~
最新回复
(
1
)
刘宝
雪 币:
977
活跃值:
(985)
能力值:
( LV3,RANK:30 )
在线值:
发帖
6
回帖
18
粉丝
12
关注
私信
刘宝
2
楼
工程创建的时候手感不佳,名字打错了
2026-4-28 06:47
0
游客
登录
|
注册
方可回帖
回帖
表情
雪币赚取及消费
高级回复
返回
刘宝
6
发帖
18
回帖
30
RANK
关注
私信
他的文章
[原创]Deadlock 游戏辅助源码分析与二次开发全记录
8235
[原创]RT3070 Kali hashcat: 一次真实的WPA2握手包抓取与破解记录
2842
[原创]内核学习阶段还在翻手册查 PDE/PTE 标志位?这个工具让你一眼看懂
1714
[原创]2026腾讯游戏安全PC初赛 新手使用IDAPRO+AI结合参赛 分析复盘
10949
[原创]新手向|LE手游助手 手工逆向分析:反调试机制与关键检测点解析
2896
关于我们
联系我们
企业服务
看雪公众号
专注于PC、移动、智能设备安全研究及逆向工程的开发者社区
看原图
赞赏
×
雪币:
+
留言:
快捷留言
为你点赞!
返回
顶部