vm pwn知识学习
- 有时候可以逆向出结构体
- vmpwn难度在于逆向,逆向结束后一般都是会有整数溢出进行任意地址读写或者是个堆题,七分逆向三分猜,多练习才是重点
- 一般vmpwn逆向结束后就是简单的pwn题技巧叠加,不会有太大难度。要综合性地考虑各种知识:整数溢出、格式化字符串漏洞、栈溢出、堆溢出,不要局限在某个方面,不然都很难解题
- 我们现在常见到的VMPwn基本设计如下:
- 分配内存模拟程序执行,基本组成要素为代码区和数据区,这两块区域可以分配在同一块内存或者两块独立内存。
- 数据区域包含模拟栈和模拟寄存器。
- 代码区根据用户指令模拟各种操作,如压栈出栈,寄存器立即数运算等。一般都是数据区的读写越界引发的漏洞,根据数据区内存分配位置的不同可以分为栈越界,bss越界和堆越界三类问题。