每日一题:Web狗如何在险恶的CTF世界中存活

2020-11-19 8,079

题目:2019安洵杯-easy_web


题目打开之后,链接变为/index.php?img=TXpVek5UTTFNbVUzTURabE5qYz0&cmd=

将img的参数通过base64解码两次,再hex解码一次,得到555.png ,应该就是这张图片的文件名,访问一下果然是:


那么尝试把它换成背景图片bj.png ,发现源码里的base64已经是bj.png 的了:


换成index.php 就能得到base64编码后的源码,如下:


分析源码,$cmd 处过滤了很多linux命令,下面提供了反引号,可以执行命令:

所以只要绕过if处的md5相关即可,方法如昨天的题目一样,使用MD5碰撞:


但是没法读取flag,因为既限制了flag字符,也限制了读取命令。

这里有一个小trick,即linux命令是允许在其中加 的,也就是:

所以使用cat/flag,成功读取:


ez.

本文作者:白袍

本文为安全脉搏专栏作者发布,转载请注明:https://www.secpulse.com/archives/146892.html

Tags:
评论  (0)
快来写下你的想法吧!

白袍

文章数:5 积分: 40

安全问答社区

安全问答社区

脉搏官方公众号

脉搏公众号