A01:2021 — 访问控制失效
未授权用户能访问受限功能或数据。
利用这些缺陷,攻击者可以访问其他用户的账户、查看敏感文件、修改其他用户的数据、更改访问权限等。
A02:2021 — 加密机制失效
敏感数据因弱加密或未加密而泄露(如:密码、信用卡号)。
这种漏洞通常与加密算法的选择、密钥管理、协议使用等方面的问题相关。
A03:2021 — 注入攻击
恶意数据被解释为可执行代码(如:SQL注入、OS命令注入、XSS)。
这类漏洞主要是由于应用程序没有正确地验证和过滤用户输入的数据,导致恶意代码得以执行。从而进一步数据泄露、数据篡改、系统被控。
A04:2021 — 不安全的设计
因设计缺陷导致的安全风险(如:缺乏威胁建模、业务流程漏洞)。
不安全设计通常与应用程序的架构、功能、数据处理和交互方式等方面有关。包括关键身份验证、访问控制、业务逻辑等。
A05:2021 — 安全配置错误
默认配置、未关闭的调试接口或暴露的敏感信息(如:错误日志泄露密钥)。
A06:2021 — 使用含已知漏洞的组件
自带缺陷和过时的组件是指Web应用程序中使用的第三方库、框架、插件或其他软件组件存在已知的安全漏洞,或者这些组件的版本过于陈旧,不再接收安全更新或修补程序。若被攻击者利用,可能会造成严重的数据丢失和服务器接管。同时,使用含有已知漏洞的组件的应用程序和API可能会破坏应用程序防御、造成各种攻击并产生严重影响。(如:Log4j漏洞、未更新的第三方组件)
A07:2021 — 认证与授权缺陷
弱密码、会话固定攻击、多因素认证(MFA)实现不当。
在开发web应用程序时,开发人员往往只关注Web应用程序所需的功能,所以常常会建立自定义的认证和会话方案。但是要正确的实现这些方案却是很难的。结果就在退出、密码管理、超时、密码找回、账户更新等方面存在漏洞。
A08:2021 — 软件和数据完整性失效
供应链攻击(如:篡改软件更新包)、不安全的反序列化。
A09:2021 — 日志与监控不足
日志缺失或监控不力导致攻击无法被及时发现(如:APT攻击长期潜伏)。
A10:2021 — 服务端请求伪造(SSRF)
诱骗服务端发起恶意请求(如:访问内网系统或云元数据API)。