7.跨段跳转,短调用和长调用堆栈图
一、回顾
上一节,我们学习了 JMP FAR 实现段间跳转,该指令修改了 CS 和 EIP。本节我们学习长调用 CALL FAR,该指令除了修改 CS和EIP,还会修改堆栈。
二、CALL 堆栈图
三、长调用
CALL FAR 和 RETF 一般是成对的,RETF 的执行流程(权限控制)和 CALL FAR 是一样的
CALL FAR 不提权
3环跳转到另一个3环代码段,不会切换堆栈。
CALL FAR 提权
从3环跳转到0环,此过程发生堆栈替换。
四、总结
7.跨段跳转,短调用和长调用堆栈图相关推荐
- (9)跨段跳转,短调用和长调用堆栈图
一.回顾 上一节,我们学习了 JMP FAR 实现段间跳转,该指令修改了 CS 和 EIP.本节我们学习长调用 CALL FAR,该指令除了修改 CS和EIP,还会修改堆栈. 二.CALL 堆栈图 学 ...
- [转](9)跨段跳转,短调用和长调用堆栈图
一.回顾 上一节,我们学习了 JMP FAR 实现段间跳转,该指令修改了 CS 和 EIP.本节我们学习长调用 CALL FAR,该指令除了修改 CS和EIP,还会修改堆栈. 二.CALL 堆栈图 学 ...
- [保护模式]段间跳转和跨段跳转
文章目录 段间跳转 段寄存器 段间跳转 段间跳转的执行流程 1.段选择子拆分 2.查表得到段描述符 3.权限检查 4.加载段描述符 5.代码执行 总结 跨段跳转 短调用 长调用 跨段不提权 跨段提权 ...
- Windows保护模式学习笔记(二)—— 代码跨段跳转
Windows保护模式学习笔记(二)-- 代码跨段跳转 要点回顾 代码跨段跳转 执行流程 1)段选择子拆分 2)查表得到段描述符 3)权限检查 4)加载段描述符 5)代码执行 6)总结 一致代码段(共 ...
- 段、GDT、调用门学习笔记
保护模式 什么是保护模式 x86 CPU的3个模式:实模式.保护模式.虚拟8086模式. AMD64与Intel64 AMD在1999年的时候拓展了这套指令集,成为x86-64后改名叫AMD64,AM ...
- 段间转移、长调用、短调用
段间转移不同于段内转移,段间转移同时修改CS:EIP,而段内转移只修改EIP 如JMP FAR 与JMP之间的区别 段间转移 JMP 0x20:0x004183D7 流程 1. ...
- Windows保护模式学习笔记(三)—— 长调用/短调用/调用门
Windows保护模式学习笔记(三)-- 长调用/短调用/调用门 要点回顾 长调用与短调用 一.短调用 二.长调用(跨段不提权) 三.长调用(跨段并提权) 长调用执行时: 执行返回(RETF)时: 总 ...
- 09-长调用与短调用
要点回顾: 我们通过JMP FAR可以实现段间的跳转,如果要实现跨段的调用就必须要 学习CALL FAR,也就是长调用. CALL FAR 比JMP FAR要复杂,JMP并不影响堆栈,但CALL指令会 ...
- 【2021.03.19】长调用与短调用
要点回顾 通过前文知道JMP FAR可以实现段间跳转,如果要实现跨段的调用就必须要学习CALL FAR,也就是长调用. CALL FAR 比 JMP FAR 要复杂,JMP并不影响堆栈,而CALL指令 ...
最新文章
- Camera开发系列之六-使用mina框架实现视频推流
- jre,jdk,jvm的关系
- mysql 5.0 5.1_mysql从5.0升级到5.1
- nefu 753 n!末尾有多少个0
- springmvc02
- Spring Boot参数校验
- UDP与TCP对比,TCP保证可靠性传输的详细说明
- 60-300-022-使用-延迟数据-Flink中allowedLateness详细介绍
- CentOS8 DNF简介 常用命令以及配置本地yum源
- java 方法互斥_Java 两个互斥方法同时访问一个成员变量
- 通过PO接口表导入PO数据
- 【优化预测】基于matlab粒子群算法优化SVM预测【含Matlab源码 1424期】
- 广电700M,到底行不行?
- VSCode中Markdown 无法显示图片
- c++实现汉诺塔(图文并茂)
- 运维工程师之日常巡检
- 【BZOJ4327】[JSOI2012] 玄武密码(AC自动机的小应用)
- 【转】Fluent学习笔记(10)-----多相流模型
- 理解围绕软件技术标准的上层动机和力量
- 干涉仪测向原理matlab,干涉仪测向原理.pdf