一、文件上传漏洞
1、意义:用户上传的可执行脚本文件(木马、病毒、恶意脚本、webshell等),并通过此脚本获得执行服务器的能力;
2、原因:前端和服务器端过滤不严格,黑白名单设置不完善导致,一些文件上传功能实现代码没有严格限制用户上传的文件后缀以及文件类型;
3、原理:文件上传检查不严、网站服务器黑名单检查忽略大小写、网站在服务器设置白名单忘记%00截断、文件上传后修改文件名处理不当;
4、危害:网站被控制、服务器沦陷、用服务器的其它网站沦陷、上传者留下后门webshell后门监听;
5、绕过JS验证:禁用chrome浏览器,地址栏输入:chrome://settings/content/javascript,禁用火狐浏览器:地址栏输入:aboutconfig,然后再搜索javascrpitenabled,双击关闭JS功能;
6、mime-type绕过防御:目录设置为不可执行,判断文件类型、用随机数改写;
7、黑名单绕过方式:忽略的扩展名、大小写转换、Windows特性(文件名中自动去掉小数点和空格)、双写后缀;
8、白名单绕过方式:观察是前端判断,还是服务器判断,如为前端,则抓包改包即可,后端时需利用一些其它方式,如将小马写入图片格式中,或其它操作;
9、绕过服务端目录路径:使用%00截断后缀名;
10、文件头:一段位于文件开头承担一定任务的数据,为描述文件的一些属性;
二、远程命令执行
1、原因:服务器没有针对执行函数做