浅谈Ret2reg的理解

漏洞原理

1,查看栈溢出返回时哪个寄存器指向缓冲区空间。

2,查看对应的call寄存器或jmp寄存器指令,将IP设置为该指令地址。

3,将寄存器所指向的空间上注入shellcode(该空间是可执行的,通常是栈上)

4,一般解题该漏洞的特点是存在危险函数strcpy的字符串拷贝函数

解题一般步骤

1,检查保护存在RWX segments

2,使用gdb调试程序,看看那些寄存器是指向缓冲区的

3,在利用

ROPgadget --binary vuln --only "call"
ROPgadget --binary vuln --only "jmp"

4,栈布局

.PNG