吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 9115|回复: 5
收起左侧

[系统底层] 实验基础 02段描述符表与段选择子

[复制链接]
BeneficialWeb 发表于 2019-9-2 17:33
本帖最后由 BeneficialWeb 于 2019-9-4 16:42 编辑

1.段选择子
selector.png
这个图就是讲解cpu如何去利用段寄存器,index GDT or LDT中的索引值,RPL:请求特权级,用于权限检查的 TI:决定查哪个表 LDT:1 GDT:0
在内核实验02中我们得到了一些段寄存器的值

现进行拆分解析:
0x33
0000000000110 0 11‬
Index: 6 TI: 0 RPL:3

ring3层,GDT表的第5项
0x10
0000000000010 0 00
Index:2 TI:0 RPL:0
ring0层,GDT表的第2项

0x2b
0000000000101 0 11
Index:5 TI:0 RPL:3
ring3层,GDT表的第5项
0x53
0000000001010 0 11
Index:10 TI:0 RPL:3
ring3层,GDT表的第10项
2.段描述符
SegmentDescriptor.png
这里不做过多解释,windbg通过r gdtr找到gdt表,对上述遇到的GDT段直接进行讲解
windbg.png

技巧:
先看P位(决定段的有效性)如:0020fb00中的第四位: f>=8,P位为1,段在内存中存在,若P位为0,则段是不存在的 如 00000000中的0<8,段不存在
再看S位  (判断是属于什么段,系统段,数据段or代码段,本节尚未遇到系统段,以后进行讲解)
如果代码段或者数据段接着看Type位,然后查看下表 (进一步是属于确定数据段还是代码段)
type.png
至于基址和界限,在win7x64下,看了Intel白皮书,我也没完全吃透,先不做演示。
intel.png
演示:
0x33
index: 0x6
0020fb00`00000000
P:1,段存在 S:1代码或者数据  Type:1011 Code Execute/Read,accessed   G:1 byte units  DPL:11 特权级3
由于是代码段,所以考虑查看L位
L:1 this code segment are executed in 64-bit mode.

0x10
index:0x2
00209b00`00000000
P:段存在  S:代码或者数据 Type:1011 Code Execute/Read,accessed  G:0 byte units DPL:00 特权级0
由于是代码段,所以考虑查看L位
L:1 this code segment are executed in 64-bit mode.

0x2b
index: 0x5
00cff300`0000ffff
P:1,段存在  S:1代码或者数据  Type:0011 Data Read/Write,accessed    G:1 4KB units  DPL:11 特权级3

0x53
index:0xA
ff40f3fe`00003c00
P:段存在  S:1代码或者数据 Type:0011 Data Read/Write,accessed  G:0 byte units DPL:11 特权级3

Ok 和XueTr工具查出来的一样,我估计他GDT数量也是根据gdtl的长度,遍历GDT的P位统计得出来的。
xuetr.png

3.int 20中断门的构造原理,仿造int 3
int 3
03e9ee00`0010aa00 00000000`fffff800
Segment Selector:  0010
Offset: fffff80003e9aa00
Attribute: ee00
P:1  DPL:11  S: 0 系统段 TYPE:1110  64-bit Interrupt Gate
int 20
4000ee00`00101210 00000000`00000001
Segment Selector:  0010
Offset: 140001210
Attribute: ee00
P:1 DPL:11  S: 0 系统段 TYPE:1110  64-bit Interrupt Gate

免费评分

参与人数 2吾爱币 +14 热心值 +2 收起 理由
sangong + 2 + 1 我很赞同!
willJ + 12 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!

查看全部评分

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

Mangoの 发表于 2019-9-2 18:00
不错 不错 很厉害啊
头像被屏蔽
sangong 发表于 2019-9-16 08:46
头像被屏蔽
yyspawn 发表于 2019-10-1 08:15
cccc菜鸟 发表于 2022-2-22 15:28
感谢分享,正在学习
pgf1225 发表于 2022-4-29 15:35
(⊙o⊙)…这个基础~~
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

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

GMT+8, 2024-11-15 15:56

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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