-
使用gdb运行程序
gdb ./pwn
-
生成溢出字符串
($gdb-peda) pattern create 200
长度需要保证可以溢出覆盖至RIP
-
运行至输入点
($gdb-peda) c
-
输入生成的溢出字符串,回车后报错
-
复制栈顶前四个字节(64 bits为前8个字节)
-
计算偏移量
($gdb-peda) pattern offset [xxxx]
-
偏移量显示出来后,重新运行程序至输入点,输入offset*‘A’,然后回车至报错停下,查看是否为预期的ebp被覆盖、eip正常,根据结果调整offset的长度