10大Web应用程序安全风险
2021年top10中有三个新类别、四个类别的命名和范围变化,以及一些合并。
A01:2021-访问控制中断
从第五位上升到top1,94%的应用程序都经过了某种形式的访问控制破坏测试,平均发生率为 3.81%且在贡献的数据集中出现次数最多,超过 318k。映射到“破坏访问控制”的 34 个常见弱点枚举 (CWE) 在应用程序中的出现次数比任何其他类别都多。
已映射的CWE | 最大发生率 | 平均发生率 | 平均加权漏洞利用 | 平均加权影响 | 最大覆盖范围 | 平均覆盖率 | 总发生次数 | CVE 总数 |
---|---|---|---|---|---|---|---|---|
34 | 55.97% | 3.81% | 6.92 | 5.93 | 94.55% | 47.72% | 318,487 | 19,013 |
值得注意的是常见弱点枚举 (CWE) 包括 CWE-200:将敏感信息暴露给未经授权的参与者,CWE-201: 将敏感信息插入到发送的数据中,以及 CWE-352: 跨站点请求伪造。
什么是访问控制中断?
访问控制是指控制对信息或功能的访问权限的系统。损坏的访问控制使攻击者可以绕过授权并执行任务,就像他们是管理员等特权用户一样。例如,Web 应用程序可能允许用户仅通过更改 url 的一部分即可更改他们登录的帐户,而无需任何其他验证。
预防
许多服务在用户登录时都会发布授权令牌。用户发出每个特权请求都需要出示授权令牌。这是确保用户身份与声称相符的安全方法,而无需他们不断输入登录凭据。通过确保 Web 应用程序使用授权令牌并对其设置严格的控制,可以确保访问控制的安全。
在客户端部分实施或弱实施的访问权限控制。缓解这些控制措施通常需要在应用端进行重写,以便正确强制执行只能由已获授权的用户访问的资源。
- 强制执行访问权限控制
- 限制数据操纵
- 集中控制访问权限
- 可配合云应用和本地应用使用
- 保护 HTTP 和 TCP 连接
- 情境感知访问权限
- 过滤跨域请求
- 过滤本地或远程文件包含攻击
- 过滤 HTTP 参数污染攻击
A01:2021-访问控制中断
A02:A02:2021-Cryptographic Failures
A03:2021-injection
A04:2021-不安全设计
A05:2021-安全配置错误