亲爱的,关注我吧
9/21
文章共计2761个词
预计阅读7分钟
来和我一起阅读吧
引言之前一直没去了解过vm-pwn,做一些题目对vm-pwn进行一个大体上的了解,算是入门。
前置知识对指令有过了解
有耐心(感觉vm程序的代码量有点大)
canary
没开启
fetch函数较为简单,即取出pc值,以pc值作为下标返回指定的指令
可以看到指令是由几个部分组成的,其实execute
函数就是一个指令表,我们通过指令表输入相应的指令就可以完成相应的操作。
指令表
操作码|操作数1|操作数2|操作数3
op |num1 |num2 |num3
---------------------------
操作码
0x70: reg[num1] = reg[num3]+reg[num2] | add指令
0xB0: reg[num1] = reg[num3]^reg[num2] | 异或指令
0xD0: reg[num1] = reg[num2]>>reg[num3] | 右移指令
0xFF: 若reg[13]为0,则退出,否则打印指令集
0xC0: reg[num1] = reg[num2]
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?
立即登录/注册


微信扫码登录