(漏洞检查项)文件上传漏洞|File Update Vulnerabilities
漏洞场景
Web应用开放了文件上传功能(包括头像上传、附件上传)
用户可以利用文件上传功能向服务器上传文件。(服务器没有对用户上传的文件进行限制和过滤,就会导致恶意文件上传)
漏洞描述
攻击者可以利用文件上传功能,上传恶意文件(木马后门文件等)
漏洞原理
Web服务器开放了文件上传功能并且没有对文件上传功能做限制,或者限制不足
漏洞危害
- 获取WebShell
- 读取服务器端敏感文件
- 任意命名执行
- 控制服务器
漏洞评级
高危
漏洞验证
漏洞利用
漏洞防御
1. 代码角度:
- 采用白名单策略,严格限制文件上传的后缀名
- 上传文件进行重命名,尽量少的从客户端获取信息,包括文件名、文件类型、文件类容等。
- 文件内容检测
- 进行二次渲染,过滤掉图片中的恶意代码
- 避免文件包含漏洞
- 严格处理文件路径,防御00截断漏洞
- 检测Token值,防止数据包重放
2. 业务角度:
- 强口令策略,避免恶意攻击者登录网站后台
- 避免Web用户修改白名单
3. Web容器角度:
- 及时更新Web容器,防止解析漏洞产生
- 禁用Web容器PUT方法
4. 系统角度:
避开空格、点、'::$DATA’等Windows系统特性
5. 服务器部署角度:
严格控制权限,执行权限与写权限分离
建立单独的文件存储服务器,类似于站库分离