文本独家广告赞助商:安全龙
加入安全龙VIP学习最新的网络安全技术!客服微信cyj9961;安全龙,一家专注网络安全技术培训的网站!
xm17是安全龙官方src核心战队成员之一与安全龙出品的系列高质量原创技术文章,看文末集合链接!安全龙官方src核心战队开始招募了~
文件上传漏洞大多存在于和文件上传相关的功能上,比如个人的照片上传,一些后台的插件上传等,主要存在如下:
1) 对于上传文件的后缀没有进行检测,造成任意文件上传
2) 只进行对上传文件的MIMETYPE的检测,造成绕过MIMETYPE上传
3) 黑名单检测,造成其他格式绕过上传
4) 进行前端js检测,造成改包绕过
5) 对上传文件的文件头信息检测,造成伪造文件头信息上传
6) 其他解析、截断等就不说了
一个文件上传代码的例子
我们上传一个图片
可以看到输出了我们想要的信息,这里简单说一下
$_FILES['upfile']['name']
$_FILES['upfile']['type']
这两个,我们都可以控制
$_FILES['upfile']['tmp_name']
这一个,是随机生成的
$_FILES['upfile']['size']
$_FILES['upfile']['error']
这两个,第一个是上传文件的大小,可以通过修改php.ini相关的配置,但是对我们来说没用,第二个,是文件上传的错误提示。
Ok,我们来看第一个,对于上传文件的后缀没有进行检测,造成任意文件上传
比如上一步的例子就可以做到,我们直接上传php文件
第二个,只进行对上传文件的MIMETYPE的检测,造成绕过MIMETYPE上传
我们看看修改的代码,这里我允许了几个图片和txt文档类型的文件格式
我们上传
可以看到不能上传,所以说,mimetype对我们的文件进行了验证,刚才我说过,type我们可以控制,我们抓一个包看看
我们修改一下为允许的类型
成功上传
第三个 黑名单检测,造成其他格式绕过上传
可以看到,我们在这里对文件的后缀进行了验证,直接上传黑名单的格式会提示不能上传,但是我们可以上传其他的,比如ashx的之类的,但是这样的话,比如要服务器有相应的环境能够解析,还有就是phtml大家或许很少接触,但是他的确是php文件的一种,如果遇到了,不妨试试。
这里的话我就上传一个ashx进行演示
可以看到,我们在这里对文件的后缀进行了验证,直接上传黑名单的格式会提示不能上传,但是我们可以上传其他的,比如ashx的之类的,但是这样的话,比如要服务器有相应的环境能够解析,还有就是phtml大家或许很少接触,但是他的确是php文件的一种,如果遇到了,不妨试试。
这里的话我就上传一个ashx进行演示
第四个 进行前端js检测,造成改包绕过
这个的话想必大家都懂,抓下上传的包,直接修改就可以
正如这样的一个脚本,不是来源于服务端的验证,这里我们就不演示了
第五个 对上传文件的文件头信息检测,造成伪造文件头信息上传
这种就是一些对上传文件的文件内容进行了检测,我们可以通过cmd命令中的copy命令,进行合成
copy 1.jpg/a+2.php/b 诸如此类
或者
Win7系统里面可以对文件的属性进行修改,也可以绕过对文件内容的检测
如果是代码审计的,大多数,我说的是大多数都会用到move_uploaded_file这个函数,所以直接全局搜索这个函数,然后看一下,周围代码的调用操作。是否可绕过等等。
这是前几天在hack80看到的一个案例,很有意思的是他这里对文件的后缀取值,只是为了区分文件存在那个文件夹,然后直接拼接,上传。
可能会有人问 ,,为什么这里没有调用move_uploaded_file函数
我们看一下
这里是直接加载类过去了。所以。。
Src的话,放开手,多试试,只要遇到上传的地方,只管怼。我看别人再挖的时候,遇到一个上传的地方,竟然允许html上传,想想,这不就是一个储存xss吗?(不考虑其他因素)
作者历史稿件:
从漏洞复现到代码审计,深入学习csrf漏洞原理 完整版
狗年狗粮,代码审计之某cms后台getshell
干货!从代码审计深度细讲xss漏洞攻击与防御
What?利用获取IP方式,进行SQL注入攻击
纯干货!一个白帽子挖漏洞经验细致分享
针对某开源cms一次严谨的渗透测试、代码审计、黑盒测试
文章版权说明:
1、本文由xm17编写的原创文章,授权给安全龙微信公众号发布,并授予安全龙原创标识。
2、通过本链接转载本文章,请联系安全龙客服进行授权,才可以转载。同时转载需要注明,来自安全龙(hackyue520)微信公众号。
3、文章如有侵权请与我们微信客服cyj9961联系,并携带版权证明。
联系客服
安全龙客服微信号cyj9961、QQ9582238、邮箱[email protected]
技术分享自媒体号
安全龙学堂服务号
安全龙,一家专注做网络安全技术教育培训的网站!网址www.anquanlong.com