Web通用型漏洞——文件
文件上传 0X00 概述 文件上传漏洞是用户上传了一个可执行的脚本文件,并通过该脚本文件获得服务端可执行命令的能力。该文件上传功能本身没有问题,有问题的是上传成功后,服务端如何处理、如何执行解析该脚本文件。如果服务端的处理逻辑不够安全,就会导致上传的文件被web容器解析执行,从而造成严重的后果。 文件上传可以上传图片,上传相册、上传附件、添加新闻图片、添加背景图片等等 文件漏洞分类: 代码层:开发者对安全意识的不足,或者是在对文件上传的校验不严谨造成的 应用层:Web容器漏洞、配置不当等等 0X01 常见的文件上传绕过漏洞 1.前端绕过 客户端JS验证:上传文件时提示只允许上传.jpg/.png/.jpeg后缀名的文件。 绕过方法:1.通过修改脚本文件,添加上传文件的文本类型后缀名 2.删除JS验证脚本的调用,让其不能对上传文件进行校验 3.修改上传文件的类型后缀名进行绕过,例如:webshell.php改为webshell.jpg,当点击上传时,burp抓包进行修改,以便服务器能够正常解析 2.服务端绕过 服务端的MIME验证:MIME是描述消息内容类型的因特网标准,即Content-type内容 绕过方法:修改Content-type内容,例如:上传Content—type:text/php --> Content--type