前言
解题之前我们先来简单了解什么是php://input, 一句话概括就是:一个可以读取没有处理过的原始数据的只读流。在此附上php中文网php://input详解,方便有兴趣的伙伴.
正文
我们已经了解了php://input, 接下来看题.题目给了我们一个文件入口 并说明:当传入的文件的前6个字符等于"php://"时,执行文件内容. 这时,我们就会想到用php://input来传入数据.那如何做呢?
哈哈..看官有没有想到强大又好用的爆破工具Burpsuite呢.我们用它来拦截试题页的请求,发送到转发器,然后在请求体植入PHP代码 连接到把机服务器.(还不会使用工具的伙伴先花点时间了解工具的基本使用,这里就不赘述啦..)
在转发器的操作具体如下:
在协议头输入: ?/file=php://input
在请求体输入:<?PHP system("ls /"); ?>
如上图显示,我们已经找到flag文件了,用cat查看即可.在请求体输入:<?PHP system("cat /flag_31474"); ?>
看到这儿的伙伴是不是觉得很简单!!