为什么文件上传会带来安全问题
…这还用解释吗?
如果是PHP的环境,我上传个一句话木马,不就拿到权限啦?
等等,我就不说了
常见的不安全的文件上传
一般不安全的上传都有以下几个要点:
-
文件名由前端控制
-
文件后缀也由前端控制
-
文件后缀过滤使用黑名单机制
总结一下,就是一些重要的信息均由前端控制
导致黑客修改文件名,文件夹等信息后,进一步控制网站的权限
例子
这是一段上传头像的数据包
这是返回数据包(图片路径包含其中)
细心的可能已经发行了,post数据包中的fileName的值,就是返回数据包中的图片路径
当然作为细心的我,也是一下就发行了,然后我将post数据包中的fileName的值修改为
返回数据包
看到返回数据包里面的文件路径,就是由前端来控制的
既然这样的话,我们在文件内容中插入恶意代码,在讲文件名修改为能解析的脚本文件
这样不就拿到权限了吗?
这就完了?
例子大概讲下就是啦,有空再更新,关键部位已打码
上面的例子呢,经过我自己测试,确实能够上传任意文件到任意目录
不过中间有个曲折…
我上传半天php,发现就是不解析
测试了好久,才发现中间件是tomcat的…
那就上传个JSP木马就拿到了权限
一般tomcat的中间件都是管理员权限
所以直接就拿到了服务器权限
本文始发于微信公众号(飓风网络安全):文件上传带来的安全问题
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论