ctfshow pwn52
ctfshow pwn52
我们先checksec一下:
那么可能就是栈溢出漏洞,拖入IDA中看看:
程序我已经动态调试,这里IDA给的s变量的大小是没错的,就是0x6c,我们看看有无其他的函数:
flag函数可以打印flag,但是有条件,a1==876且a2==877,a1与a2是我们调用函数时传入的参数,对于32位程序,参数就放在栈上,那就简单了,我们在溢出的时候,把参数一并写在栈上,payload如下:
1 | from pwn import * |
我们先checksec一下:
那么可能就是栈溢出漏洞,拖入IDA中看看:
程序我已经动态调试,这里IDA给的s变量的大小是没错的,就是0x6c,我们看看有无其他的函数:
flag函数可以打印flag,但是有条件,a1==876且a2==877,a1与a2是我们调用函数时传入的参数,对于32位程序,参数就放在栈上,那就简单了,我们在溢出的时候,把参数一并写在栈上,payload如下:
1 | from pwn import * |