本文原作者:LaiX
关于abcEditor的相关介绍:
http://www.baidu.com/s?tn=baiduh ... =1&wd=abcEditor
最新版下载地址:
http://down.chinaz.com/soft/33653.htm
这个轻编辑器只有三个文件,唯一的PHP文件(abcedit.php)的功能就是上传.
我们来看看这个abcedit.php里面有哪些代码:
我们可以看见代码不多,文件后缀验证代码很仓促。
很明显只验证头信息是非常错误的。我们看看如何绕过这个验证
1.打开上传页面
这里要普及一下PHP知识。我们知道
[PHP] 纯文本查看 复制代码 $_FILES["file"]["type"]
获取的是头信息中的Content-Type //也就是文件的 MIME 类型,需要浏览器提供该信息的支持,例如"image/gif"。
如果我们篡改Content-Type会如何呢?
2.抓包修改Content-Type // PS:原作者这里用的是Tamper Data,因为burp也能达到效果,我这里测试就用Burp了。
最后,我们简单看下这段上传代码。
[PHP] 纯文本查看 复制代码
//判断文件类型和大小
if(
(
($_FILES["file"]["type"] == "image/gif")
||
($_FILES["file"]["type"] == "image/jpeg")
||
($_FILES["file"]["type"] == "image/pjpeg")
||
($_FILES["file"]["type"] == "image/x-png")
||
($_FILES["file"]["type"] == "image/bmp")
)
&&
$_FILES['file']['size'] < 1024*$filesize
)
最后 我们看下Pic目录,
我们菜刀连接下。。
|