首先先来看下旧版的Top10漏洞
1.SQL注入(SQL Injection)
2.失效的身份认证和会话管理
3.跨站脚本攻击
4.直接引用不安全对象
5.安全配置错误
6.敏感信息泄漏
7.缺少功能级的访问控制
8.跨站请求伪造CSRF
9.使用含有已知漏洞的组件
10.未验证的重定向和转发
船新版本
Top-1:2021-Broken Access Control(被破坏的访问控制)
94% 的应用程序进行了某种形式的访问控制中断测试。映射到"中断访问控制"的 34 个 CWEs 在申请中发生的情况比任何其他类别都多。
Top-2:2021-Cryptographic Failures(加密故障)
以前称为敏感数据暴露,这是广泛的症状,而不是根本原因。这里重新关注的是与密码学相关的故障,这些故障通常会导致敏感数据暴露或系统泄露。
Top-3:2021-Injection(注入)
94% 的应用进行了某种形式的注入测试,而映射到该类别的 33 个 CWEs 在应用中发生率第二多。跨站点脚本现在是本版本中此类别的一部分。
注:CWEs(社区开发常见软件安全漏洞列表)
Top-4:2021-Insecure Design(不安全设计)
是 2021 年的新类别,重点是与设计缺陷相关的风险。如果我们真正想要作为一个行业"向左移动",它需要更多地使用威胁建模、安全的设计模式和原则以及参考架构。
Top-5:2021-Security Misconfiguration(安全配置错误)
90% 的应用程序进行了某种形式的错误配置测试。随着更多转向高度可配置的软件,看到这一类别上升并不奇怪。XML 外部实体 (XXE) 的前类别现已成为此类别的一部分。
Top-6:2021- Vulnerable and Outdated Components(易受攻击和过时的组件)
以前被命名为"使用已知漏洞的组件",在行业调查中(#2),但也有足够的数据通过数据分析进入前 10 名。这一类别从2017年的#9上升,是一个众所周知的问题,我们很难测试和评估风险。它是唯一没有将任何 CVEs 映射到所包含的 CWEs 的类别,因此默认利用和影响权重为 5.0 的权限将计入其分数中。
Top-7:2021-Identification and Authentication Failures(身份验证和身份验证失败)
以前是损坏的身份验证,并且从第二位置滑落,现在包括与身份验证故障关联更大的 CW。这一类别仍然是前 10 名中不可或缺的一部分,但标准化框架的增加似乎有所帮助。
Top-8:2021-Software and Data Integerity Failures(软件和数据完整性故障)
是 2021 年的新类别,重点是在不验证完整性的情况下做出与软件更新、关键数据和 CI/CD 管道相关的假设。CVE/CVSS 数据映射到该类别中的 10 个 CWE 的权重影响之一。从 2017 年起,不安全的去市场化现已成为这一更大类别的一部分。
Top-9:2021-Security Logging and Monitoring Failures(安全记录和监测故障)
以前是记录和监测不足,并添加自行业调查(#3),从之前的#10上升。此类别已扩展至包含更多类型的故障,具有测试的困难,并且在 CVE/CVSS 数据中未很好地表示。但是,此类故障会直接影响可见性、事件警报和取证。
Top-10:2021-Server side Request Forgery(服务器侧请求伪造)
此类别是从行业调查(#1)中添加的。数据显示,高于平均水平的测试覆盖率相对较低,同时对利用和影响潜力的评分也高于平均水平。此类别表示行业专业人士告诉我们这一点非常重要的场景,尽管此时数据中并未说明这一点。