社区
汇编语言
帖子详情
特权级的转换
Areslee
2000-03-30 09:52:00
请问哪位大侠知道如何不通过任务切换将程序从特权级0跳转到其他特权级?
...全文
431
12
打赏
收藏
特权级的转换
请问哪位大侠知道如何不通过任务切换将程序从特权级0跳转到其他特权级?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
FinalDoom
2000-05-27
打赏
举报
回复
START:
PUSH EAX
SIDT FWORD PTR [ESP-2]
POP EBX
CLI
LEA EAX,ESI[RING0-START]
MOV [EBX],AX
SHR EAX,10H
MOV [EBX+6],AX
STI
INT 3H
RETRING0:
............
............
............
RING0: ..........;已进入RING0
..........
..........
IRET ;返回RETRING0
smile_and_smile
2000-05-27
打赏
举报
回复
pop ebp
;get IDT base address
cli
....
;get exception base entry point
....
;modify exeption entry point address
int 3
int 3
......
aabbcc
2000-04-28
打赏
举报
回复
this is a test
sysadm
2000-04-24
打赏
举报
回复
do you really think the anser to your question just only value of 20 ???
!!!???
土豆
2000-04-13
打赏
举报
回复
茂奇软件
2000-04-06
打赏
举报
回复
just sign the CR0 with protect mode
and use a long jump to next code line
in order to clean the preread code in
pipelining
your jansen.
「已注销」
2000-04-05
打赏
举报
回复
关注.
JavaForce
2000-04-05
打赏
举报
回复
CIH的关键技术是修改中断描述符表,把windows的断点异常(03异常)处理代码替换为自己的病毒代码,然后用int 03指令来进入这段代码.而异常代码的特权级是0级,因而就通过这
种办法在windwos下面获得了0级特权.而以前要想有0级特权是必须写VXD.
这位仁兄的问题有点让人莫名其妙,要从0级特权转换为其他特权,而且不是在windows下.
让人不明所以,我觉得这个论坛很多人连问题都提不好,自己不先仔细考虑推敲,不把问题描述清楚.折磨我们的大脑,可恶.
Areslee
2000-04-04
打赏
举报
回复
我的程序不是在WINDOWS下执行,是在完全没有任何保护模式操作系统的情况下执行(如用完全模式启动到DOS模式)
Un1
2000-04-04
打赏
举报
回复
http://person.zj.cninfo.net/~yao/download/cih14.zip
Un1
2000-03-31
打赏
举报
回复
去看看 CIH 源码!
sunsetyang
2000-03-31
打赏
举报
回复
那儿有cih源代码?谢谢!可否mailto:chyang@163.net!
用户态应用程序
特权
级
转换
的研究与实现
通过分析虚拟内存保护模式下
特权
保护原理,研究用户态应用程序
特权
级
转换
的一种途径———中断 门;提出了在中断门中添加新的软件中断钩子扩展系统功能的方法,并给出用汇编语言编写软件中断钩子的 代码;
中断处理
特权
级
转换
中断处理得
特权
级
转换
是通过门描述符(gate descriptor)和相关指令来完成的。一个门描述符就是一个系统类型的段描述符,一共有4个子类型:调用门描述符(call-gate descriptor),中断门描述符(interrupt-gate descriptor),陷阱门描述符(trap-gate descriptor)和任务门描述符(task-gate descriptor)。与中
总结:
特权
级
之间的
转换
1、
特权
级
2、一致代码段和非一致代码段 3、DPL、RPL、CPL分别代表的含义,存储在什么位置,以及它们之间的关系 4、不同
特权
级
数据段之间的访问规则 5、不同
特权
级
代码段之间的转移 6、代码段之间的转移对堆栈的影响 7、结合pmtest5.asm来见证不同
特权
级
代码段之间的跳转 一、
特权
级
在IA32的分段机制下,
特权
级
总共有4个
特权
级
别,从高到低分别是0、1
专注于操作系统18之完整的
特权
级
转换
在上一篇文章中,我们已经能从ring0
级
进入到ring3
级
,在这里我们将再加上从ring3
级
到ring0
级
。从ring3
级
到ring0
级
这需要使用在第十四篇文章中提到的调用门来实现。即在进入ring3
级
后,在使用调用门来调用ring0
级
代码(注意当发生
特权
级
转换
时,堆栈是发生了变化的,上一篇文章已说明从ring0
级
到ring3
级
堆栈所发生的变化。当从ring3到ring0
级
时,ring0
级
堆栈信息
通过retf和调用门实现
特权
级
转换
不打算按别人的思路来,因为在我学的过程中上网查,发现网上的博客都是互相抄的,最终还是抄书的。Intel 64 和 IA-32架构处理器在进入保护模式之后,就会有一些列保护机制。其中出现了三个特别重要的东西:CPL、DPL、RPL。 CPL表示当前正在执行程序的
特权
级
,它保存在cs段寄存器里面; DPL表示某个段的
特权
级
,保存在这个段对应的段描述符中; RPL表示请求访问
汇编语言
21,458
社区成员
41,603
社区内容
发帖
与我相关
我的任务
汇编语言
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
复制链接
扫一扫
分享
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章