吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 850|回复: 2
收起左侧

[求助] 关于FS寄存器

[复制链接]
0X0011 发表于 2023-6-8 15:50
晚辈又来求助了,这次是内核相关问题
如标题,FS这个寄存器究竟放了什么内容,先看用户态
image.png
段选择子是0x003B,段基址是0x7FFDF000,那是不是意味着我用段选择子去GDT表里找到这个基址为0x7FFDF000的段描述符
0x3B拆解 00111 011 索引是0x7,
image.png
很明显这个描述符的段基址并不是0x7FFDF000
于是我就想着是不是方法有问题,我找了一下内核态下的FS
根据KPCR结构体,0x1C指向自己,也就是说0x83f7cc00就是fs寄存器的段基址
image.png
段选择子是0x0030 拆解 110 000 索引是0x6
image.png
这个索引就正好对的上0x83f7cc00这个段基址
image.png

晚辈的问题就是用户态下的fs寄存器的段基址放哪去了呢?

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

BlueTears 发表于 2023-6-8 18:06
会线程切换的,每个线程都有自己的TEB,所以每次线程切换GDT表都会被修改,当前查看的gdt表是当前线程的fs段基地址
想看用户态fs的话,可以随便找个用户态程序,下个断点,让windbg断下来,就可以在gdt表看到用户态的fs段基地址了
 楼主| 0X0011 发表于 2023-6-8 18:56
BlueTears 发表于 2023-6-8 18:06
会线程切换的,每个线程都有自己的TEB,所以每次线程切换GDT表都会被修改,当前查看的gdt表是当前线程的fs ...

感谢感谢,受教了
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-12-22 01:17

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表