环境:windows xp sp2 + vc 6.0


1

2

3

4



5

6

7

8

9

10

11



12

13

14

15

16

17

18

19

20



21

22

23

执行后会在控制台打印出-------------Get privilege!---------,并在下一行等待输入。
溢出主要发生在13-15行,通过pRet获取iRet在堆栈中的位置,然后相对偏移到存放函数的返回地址处,由第15行代码用fun2的地址覆盖返回地址,当fun1返回时将跳转到fun2执行。
环境:windows xp sp2 + vc 6.0
执行后会在控制台打印出-------------Get privilege!---------,并在下一行等待输入。
溢出主要发生在13-15行,通过pRet获取iRet在堆栈中的位置,然后相对偏移到存放函数的返回地址处,由第15行代码用fun2的地址覆盖返回地址,当fun1返回时将跳转到fun2执行。
转载于:https://www.cnblogs.com/anzhihun/archive/2008/12/10/1351944.html