
保护模式-段
寄存器保护
qq_857305819
这个作者很懒,什么都没留下…
展开
-
任务门
任务门的类型为 :5低4字节的高16位是一个TSS段描述符的选择子思考:已经有任务段了,为什么还提供了任务门????实验: 通过任务门去访问任务段...原创 2020-04-05 22:13:18 · 213 阅读 · 0 评论 -
Symbol file could not be found. Defaulted to export symbols for ntkrnlpa.exe
我的系统是win10的1:设置系统环境变量windbg符号文件路径搜索的两个位置:环境变量中的_NT_SYMBOL_PATH设置及windbg中的"symblos file path";2:SRV* E:\Windows\Symbols...原创 2020-04-05 16:54:24 · 3648 阅读 · 0 评论 -
调用门提权 int 3 单步程序返回出错
这是因为int 3 异常处理程序里面修改了fs段寄存器,把fs保存了就没事了。#include "stdafx.h"#include <windows.h>#include "stdio.h"int a=0;void _declspec(naked) test(){_asm{ pushad pushfd push fs; //保存fs...原创 2020-04-05 22:39:09 · 227 阅读 · 0 评论 -
任务段(TSS)
TSSTSS是一块内存,里面包括了任务切换需要的所有寄存器的值。大小是104字节TRTR寄存器,该寄存器里面存的是TSS段描述符的段选择子。TSS段描述符GDT表中的一个8字节的段描述符,类型是TSS...原创 2019-05-02 18:46:05 · 1296 阅读 · 1 评论 -
中断门
## IDT表在WINDBG中查找方式3:该描述符的16到31位为另外一个段描述符的选择子(决定是否提权)门描述符当段描述符是门描述符时,高16位与低16位组成一个32的地址。是程序通过门后代码执行的地址。16到31位是一个段选择子,决定是否提权。...原创 2019-03-06 23:32:31 · 355 阅读 · 0 评论 -
代码段跳转流程
JMP 0x20:0x423633 CPU如何执行这一条代码?1:段选择子拆分RPL =0TI =0Index=42:查表得到段描述符TI=0 查GDT表Index=4 在表里找到对应的段描述符,判断段描述符的S位为下列之一则可以跳转。四种情况可以跳转:代码段,调用门,TSS任务段,任务门3:权限检查如果是非一直代码段,要求CPL==DPL 并且 RPL&amp;lt;=DPL如果...原创 2019-03-03 18:57:37 · 454 阅读 · 0 评论 -
段权限检查
**CPL(Current Provilege Level)当前特权级别 **CS和SS中存储的段选择子的后2位DPL(Descriptor Provilege Level)描述符特权级别DPL存储在段描述符中,规定了访问该段所需要的特权级别RPL(Request Provilege Level)请求特权级别段选择子的后两位...原创 2019-03-03 15:17:49 · 295 阅读 · 0 评论 -
段描述符 DB位
原创 2019-03-03 14:53:10 · 220 阅读 · 0 评论 -
段描述符与段选择子
GDTR 寄存器存放的是GDT(全局描述符表)表的位置和大小,大小为48位在windeg中 r gdtr 查看GDT表的位置r gdtl 查看表的大小GDT表里面存放的元素称为段描述符 大小为8字节dd +地址 查看地址里面的内容 查看4字节dq +地址 查看8字节段描述符段选择子段选择子是一个16位的段描述符...原创 2019-03-03 10:29:23 · 752 阅读 · 0 评论