汇编语言04-IP/CS/浮点

IP和CS两个寄存器,在非英特尔厂商中一半都叫做PC计数器,甚至java语言的程序计数器,也是根据这个来的

修改IP寄存器和CS寄存器的指令是jmp指令

IP/CS用于存放当前代码段即将被执行的下一条指令的位置

当执行一个函数的时候,其实是跑到另外一个内存地址去执行了,那么该函数执行完的时候,必须要跳转回来继续执行刚才的指令,那么这个问题的解决就是与EIP相关,当执行CALL指令的时候,系统会将EIP中的地址放到栈里,当CALL执行完毕之后,这样下一条指令就是可以继续进行了

日记:使用CALL指令将EIP内容读取到栈,这样我们就能获取到EIP中的内容了,然后使用RET/IRET指令修改栈,这样就实现了函数注入

猜你喜欢

转载自blog.csdn.net/u011624903/article/details/110428160