每日一题:Web狗如何在险恶的CTF世界中存活
2020-11-19 18:59:38 Author: www.secpulse.com(查看原文) 阅读量:444 收藏

题目: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


文章来源: https://www.secpulse.com/archives/146892.html
如有侵权请联系:admin#unsafe.sh