关键信息 漏洞描述 CWE ID: 329 名称: Generation of Predictable IV with CBC Mode 描述: 使用可预测的初始化向量(IV)与CBC模式加密可能导致算法在使用相同密钥时容易受到攻击。 影响 范围: 机密性 细节: 如果IV未正确初始化,加密的数据可以被压缩并泄露信息。 潜在后果 实施阶段: 实现 缓解措施: NIST建议使用两种方法生成不可预测的IV用于CBC模式。一种是随机生成IV,另一种是在加密前将噪声与密钥和明文异或。 相关关系 父级: CWE-573 Improper Following of Specification by Caller 子级: CWE-1216 Generation of Weak Initialization Vector (IV) 背景细节 CBC模式: 常见的块密码操作模式,通过XOR初始明文块与IV开始,然后对每个后续块进行XOR操作。 重要性: 不可预测的IV对于防止选择明文攻击至关重要。 引入方式 实现阶段: 开发人员可能忽视IV的重要性,选择更简单的实现以节省时间,从而削弱方案。 示例代码 提供了两个示例,展示了在加密数据时使用CBC模式的情况,其中IV总是零块,使得密文更可预测且易受字典攻击。 观察到的例子 列举了多个CVE实例,如CVE-2014-1770、CVE-2017-1133等,说明了该漏洞在不同场景下的表现。 检测方法 自动化静态分析: 可以通过分析源代码找到此弱点的实例,无需运行代码。 功能区域 密码学 映射关系 CLASP: Not using a random IV with CBC mode ``` 这些信息总结了关于CWE-329的关键点,包括其定义、影响、潜在后果、相关关系、背景细节、引入方式、示例代码、观察到的例子、检测方法、功能区域以及映射关系。