1,什么是文件上传漏洞?
上传文件时,未对上传的文件进行严格的验证和过滤,造成用户可以上传可执行脚本的漏洞叫文件上传漏洞。
2,文件上传漏洞有哪些危害?
可以通过文件上传漏洞上传网站后门,获取网站权限
3,文件上传的防御
1、文件上传的目录设置为不可执行
2、判断文件类型(使用白名单的方式,对于图片的处理,可以使用压缩函数或resize函数,在处理图片的同时破坏图片中可能包含的HTML代码)
3、使用随机数改写文件名和文件路径
4、单独设置文件服务器的域名
5、隐藏文件路径,将用户上传文件的路径保存在数据库中,并且在需要的时候再去读取加载。
4,漏洞利用
一般我们会利用文件上传漏洞上传一句话木马,然后菜刀连接过去webshell。要想获取webshell,必需让我们上传的文件当成脚本文件执行,所以文件上传漏洞通常会和文件包含漏洞和文件解析漏洞一起利用。
5,前端验证绕过
前端验证浏览器可直接禁用或删除,后端是安全的
1、将前端下载到本地。
2、删除过滤代码。
3、增添或修改action,修改为上传的源文件。
后端一些验证可通过 .user.ini. 实现绕过
本节主要依靠靶场测试环境理解:具体可参考WEB攻防-通用漏洞&文件上传&二次渲染&.htaccess&变异免杀_@墨竹的博客-CSDN博客