首页 > 其他 > 详细

XCTF_ics-07

时间:2021-08-18 15:28:40      阅读:26      评论:0      收藏:0      [点我收藏+]

这道题确实也卡了很久 垮了垮了

话不多说直接找到view source.php审代码吧

技术分享图片

先看这段

技术分享图片
要你:
(1)floatval($ _ GET [id])!==‘1’ //浮点不为1

(2)substr($ _ GET [id],-1)===‘9‘ //id最后一位为9
构造:
1 9
1-9
都可以绕过去。

大骨头是这个代码

技术分享图片

1.首先是preg_match函数通配符限制,文件名尾不能是p/tml这些,但这种只匹配最后一个点的后缀,可以写入两次.php。

2.其次一个chdir重置了一个新的文件目录,也是说之前咱们是在backup,现在要去uploaded目录下了。这边有一个坑坑就是你们应该也会发现了。

3.其他的没有了,挑战一天挣两万,今天腰疼不管干!

构造一波:
file=p.php/.&con=
访问/uploaded/backup/p.php即可。
接下来换一个构造一句话或者像我这样:
file=…/123.php/1.php/…&con=
直接再访问/uploaded/123.php?bash=cat ../../flag.php
查看源码就有flag了.
技术分享图片

XCTF_ics-07

原文:https://www.cnblogs.com/fengnianxu/p/15155791.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!