安全矩阵

 找回密码
 立即注册
搜索
查看: 3174|回复: 0

第一届“百度杯”信息安全攻防总决赛 web Upload

[复制链接]

8

主题

57

帖子

279

积分

中级会员

Rank: 3Rank: 3

积分
279
发表于 2020-4-1 22:54:17 | 显示全部楼层 |阅读模式
进入题目后 先查看页面源代码:
就是说post发送ichunqiu=你发现的东西
抓包发送到repeater
base64解密
猜测 大概能再解码一次
得到一串数字
post方式发送ichunqiu=这串数字
页面反显fast,说明我们得用脚本跑
  1. import base64,requests







  2. def main():



  3.     a = requests.session()



  4.     b = a.get("http://be27796e9fab4928b78d609e894a64f02db126a3d76e4996.changame.ichunqiu.com/")



  5.     key1 = b.headers["flag"]



  6.     c = base64.b64decode(key1)



  7.     d = str(c).split(":")



  8.     key = base64.b64decode(d[1])



  9.     body = {"ichunqiu": key}



  10.     f = a.post("http://be27796e9fab4928b78d609e894a64f02db126a3d76e4996.changame.ichunqiu.com/", data=body)



  11.     print f.text







  12. if __name__ == '__main__':



  13.     main()
复制代码

访问后进入新的页面
这里对这个网页进行源码泄露扫描发现这个
访问这个页面,得到:
解密得:8638d5263ab0d3face193725c23ce095
然后破解下验证码
substr(md5(captcha), 0, 6)=02ac0d 根据这个提示符写下脚本
  1. for($a; $a<100000000; $a++){



  2.        if(substr(md5($a),0,6) == '02ac0d'){



  3.               echo $a;



  4.               exit();



  5.        }

  6. }
复制代码

得到4682256,登陆
访问后进入新的页面
选择一个图片上传, 改后缀为pht即可获得 flag, Content-Type: 务必为 image/jpeg
为何可以直接上传后缀为 pht 或phtml 绕过黑名单呢?
php的conf文件中是有一个正则的后缀名限制的,只要符合都可以被当做php文件执行。
符合的后缀包括 php、php3、php4、php5、phtml、pht 等。
什么环境下可以解析 phtml 和pht 呢?
1,phpstudy和wamp以及centos用yum方式安装的lamp环境不能解析phtml和pht
2,ubuntu和debian利用apt-get方式安装的lamp环境就能解析phtml和pht
利用这些环境特性和黑名单就能绕过限制,达到上传webshell的目的。



版权声明:本文为CSDN博主「dyw_666666」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-11-28 00:39 , Processed in 0.012729 second(s), 19 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表