CWE

常见的弱点枚举

一个由社区开发的软件&硬件缺陷类型的列表

2021 CWE最重要的硬件的弱点
CWE最危险的弱点
>CWE列表> CWE -个人字典定义(4.10)
ID

cwe - 311:失踪的敏感数据的加密

弱点ID: 311
抽象:
结构:简单的
视图定制的信息:
+描述
产品不加密敏感或关键信息在存储或传输之前。
+扩展描述
缺乏适当的数据加密传递保证机密性,完整性和责任,正确实施加密传达。
+的关系
部分帮助此表显示了弱点和高水平类别相关的这一弱点。这些关系被定义为ChildOf、ParentOf MemberOf,并洞察类似项目可能存在的在较高和较低的抽象级别。此外,关系如PeerOf和CanAlsoBe定义显示类似的弱点,用户可能想要探索。
+相关的视图”研究概念”(cwe - 1000)
自然 类型 ID 的名字
ChildOf 支柱支柱——一个弱点是最抽象类型的弱点和代表一个主题类/基地/变体相关弱点。支柱是不同于一个类别作为支柱技术上仍然是一种弱点,描述了一个错误,而一个类别代表一个共同特征用于组相关的东西。 693年 保护机制失败
ParentOf 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。 312年 明文存储的敏感信息
ParentOf 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。 319年 明文传输的敏感信息
PeerOf 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。 327年 使用损坏或危险的密码算法
部分帮助此表显示了弱点和高水平类别相关的这一弱点。这些关系被定义为ChildOf、ParentOf MemberOf,并洞察类似项目可能存在的在较高和较低的抽象级别。此外,关系如PeerOf和CanAlsoBe定义显示类似的弱点,用户可能想要探索。
+简化映射的相关视图”缺点漏洞发布”(cwe - 1003)
自然 类型 ID 的名字
ParentOf 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。 312年 明文存储的敏感信息
ParentOf 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。 319年 明文传输的敏感信息
部分帮助此表显示了弱点和高水平类别相关的这一弱点。这些关系被定义为ChildOf、ParentOf MemberOf,并洞察类似项目可能存在的在较高和较低的抽象级别。此外,关系如PeerOf和CanAlsoBe定义显示类似的弱点,用户可能想要探索。
+相关视图”架构概念”(cwe - 1008)
自然 类型 ID 的名字
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 1013年 加密数据
+模式的介绍
部分帮助不同模式的引入提供了信息如何以及何时可以纳入这一弱点。生命周期的阶段识别点的介绍可能发生,而相关的报告提供了一个典型的场景介绍在给定的阶段。
阶段 请注意
架构和设计 遗漏:这个弱点是由于缺少一个安全策略在体系结构和设计阶段。
操作
+适用的平台
部分帮助该清单显示了给定的弱点可以可能的地区出现。这些可能是为特定命名的语言,操作系统,架构、模式、技术、或一个类这样的平台。列出的平台是随着频率的出现疲态实例。

语言

类:不是特定于语言的患病率(待定)

+常见的后果
部分帮助这个表指定不同的个人相关后果的弱点。标识应用程序范围的安全领域侵犯,而影响了负面的技术影响,如果敌人成功利用这个弱点。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能会有高可能性,缺点将被利用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
范围 影响 可能性
保密

技术的影响:读取应用程序数据

如果应用程序不使用安全通道,如SSL交换敏感信息,攻击者有可能访问的网络流量的嗅觉数据包从连接和发现数据。这种攻击在技术层面上是不困难的,但确实需要对网络的一部分的物理访问敏感数据传播。这种访问通常是附近的用户连接到网络(如同事在公司网络上),但可以在任何地方沿着小路从用户终端服务器。
保密
完整性

技术的影响:修改应用程序数据

省略的任何程序中使用加密传输数据在网络上应该考虑任何形式的与提供本地网络上的数据发送到每个用户的发送方和接收方。更糟糕的是,这种省略允许数据注入到两党之间的通信流,没有对受害者意味着独立有效的数据无效。在这一天的广泛的网络攻击和密码嗅探器集合,它是一个不必要的风险省略加密从任何系统的设计可能会从中受益。
+利用的可能性
+示范例子

示例1

这段代码将用户的登录信息写入cookie,这样用户不需要稍后再登录。

(坏的代码)
例如语言:PHP
函数persistLogin(用户名、密码美元){
$ data =数组(美元= >用户名“用户名”,“密码”= >美元密码);
setcookie(“用户数据”,元数据);
}

代码将用户的用户名和密码存储在cookie中明文用户的机器。这让用户的登录信息如果他们的电脑被攻击者。即使在不损害用户的机器,这个弱点结合跨站点脚本(cwe - 79)可能允许攻击者远程复制饼干。

也注意这个示例代码展示明文存储在一个Cookie (cwe - 315)。

示例2

下面的代码尝试建立连接、读取密码,然后将其存储到缓冲区。

(坏的代码)
例如语言:C
服务器。sin_family = AF_INET;惠普= gethostbyname (argv [1]);
如果(hp = = NULL)错误(“未知主机”);
memcpy ((char *)及服务器。惠普sin_addr (char *) - > h_addr,惠普- > h_length);
如果(命令行参数个数< 3)端口= 80;
其他端口=(无符号短)atoi (argv [3]);
服务器。sin_port = htons(港口);
如果(连接(袜子,(struct sockaddr *)及服务器,sizeof服务器)< 0)错误(“连接”);

在((n =读(袜子,缓冲区,BUFSIZE-1)) ! = 1) {

写(目前password_buffer n);

而成功,程序不加密数据写到缓冲区之前,可能暴露在未经授权的演员。

示例3

下面的代码试图建立一个连接一个网站敏感信息交流。

(坏的代码)
例如语言:Java
尝试{
URL u =新的URL (“http://www.secret.example.org/”);
HttpURLConnection胡= (HttpURLConnection) u.openConnection ();
hu.setRequestMethod (“”);
hu.connect ();
OutputStream os = hu.getOutputStream ();
hu.disconnect ();
}
抓住(IOException e) {

/ /……
}

虽然连接成功建立后,未加密的连接,可能是所有敏感数据发送或接收从服务器将读到意想不到的演员。

+观察到的例子
参考 描述
密码和用户名在明文存储在一个cookie
密码存储在明文文件的权限
聊天程序禁用SSL在某些情况下甚至当用户使用SSL说。
链:产品使用一个不正确的公共指数在生成一个RSA密钥,这有效地禁用加密
在数据库中存储加密的密码
在数据库中存储加密的密码
产品将明文的密码存储在内存中
存储的密钥明文在一个临时文件
SCADA产品使用HTTP基本身份验证,这是不加密的
登录凭证未加密存储在注册表键
密码以明文传输图像。
链:使用HTTPS饼干没有“安全”国旗导致它在未加密的HTTP传输。
产品在明文发送密码散列违反政策。
远程管理功能发送敏感信息包括在明文密码。
备份程序发送密码明文的电子邮件。
产品传送河豚在明文加密密钥。
打印机发送配置信息,包括管理密码明文。
链:明文传输的MD5哈希密码允许容易重放攻击的服务器(cwe - 294)。
产品会以明文发送密码到日志服务器。
产品使用明文密码发送文件在邮件中用于诊断目的。
+潜在的缓解措施

阶段:需求

足够清楚地指定数据或资源是有价值的,他们应该受到加密保护。要求任何传输或存储的数据/资源应该用严格的审查加密算法。

阶段:体系结构和设计

确保适当的加密集成到系统设计,包括但并不限于:

  • 加密需要存储或传输私有数据的用户系统
  • 加密保护系统本身需要从未经授权的披露或篡改

确定加密的独立需求和环境:

  • 单向(即。,只有用户或接收方需要的关键)。这可以通过使用公钥加密,或者其他技术的加密方(即。,产品)不需要访问私钥。
  • 双向(即。的加密可以自动执行代表一个用户,但关键必须可用,这样可以自动恢复明文用户)。这需要存储私钥的格式,用户只可恢复的(或者可能由操作系统),不能恢复。

使用威胁建模以及其他技术,假设数据可以通过一个单独的漏洞和弱点,妥协和确定加密将是最有效的。确保数据应该私人没有被无意中暴露使用不安全的权限(等缺点cwe - 732)。(REF-7]

阶段:体系结构和设计

策略:库或框架

当有需要存储或传送敏感数据,使用强,最新的加密算法加密数据。选择一个严格的审查算法,目前被认为是强大的由该领域的专家,并使用经过良好测试的实现。正如所有加密机制,应该用于分析源代码。

例如,美国政府系统需要FIPS 140 - 2认证。

不开发自定义或私人密码算法。他们可能会暴露于攻击易于理解的密码。逆向工程技术是成熟的。如果可以攻破的算法如果攻击者了解它是如何工作的,那么它尤其薄弱。

定期确保加密并没有过时。一些老算法,一度被认为需要十亿年的计算时间,现在可以打破在几天或几小时。这包括MD4 MD5、SHA1 DES和其他曾被认为是强大的算法。(ref - 267]

阶段:体系结构和设计

策略:分离的特权

划分系统“安全”领域信任边界可以明确。不允许走出信任边界和敏感数据时总是小心与舱外的安全区域。

确保适当的划分是建立到系统设计,划分允许和强化特权分离功能。建筑师和设计师应该依靠最小特权原则来决定适当的时间使用特权和特权。

阶段:实施;架构和设计

当使用有技术,正确地使用它们。不偷工减料,跳过资源密集型步骤(cwe - 325)。这些步骤通常是必不可少的预防常见的攻击。

实施阶段:

策略:减少攻击表面

使用命名约定和强劲的类型更容易发现敏感数据时使用。当创建结构,对象,或其他复杂的实体,独立的敏感和不敏感数据尽可能多。

有效性:深度防御

注意:这使得它更容易在代码点地方未加密的数据被使用。
+检测方法

手动分析

的characterizaton敏感数据通常需要特定领域的理解,所以手动方法是有用的。然而,手动努力可能不会在有限时间内达到所需的代码覆盖约束。黑盒方法可能产生的工件(例如,存储数据或未加密网络传输),需要手动评估。

有效性:高

自动化分析

自动测量的输入/输出熵源可能表明使用或缺乏加密,但是人类仍然需要区分intentionally-unencrypted数据分析从敏感数据(如元数据)。

人工静态分析——二进制或字节码

根据飙升,以下检测技术可能是有用的:

成本有效的部分报道:
  • 二进制/字节码反汇编程序,然后使用手动分析缺陷和异常

有效性:飙升部分

动态分析与自动化的结果解释

根据飙升,以下检测技术可能是有用的:

成本有效的部分报道:
  • Web应用程序扫描
  • Web服务的扫描仪
  • 数据库扫描仪

有效性:飙升部分

动态分析与人工解释结果

根据飙升,以下检测技术可能是有用的:

高成本效益:
  • 网络嗅探器
成本有效的部分报道:
  • 模糊测试
  • 基于框架Fuzzer
  • 自动化监控执行
  • 中间人攻击工具

有效性:高

人工静态分析源代码

根据飙升,以下检测技术可能是有用的:

高成本效益:
  • 关注人工抽查,手动分析来源
  • 手工源代码审查(不检查)

有效性:高

自动静态分析源代码

根据飙升,以下检测技术可能是有用的:

成本有效的部分报道:
  • Context-configured源代码分析器

有效性:飙升部分

体系结构或设计审查

根据飙升,以下检测技术可能是有用的:

高成本效益:
  • 检验(IEEE 1028标准)(适用于需求、设计、源代码,等等)。
  • 正式的方法/ Correct-By-Construction
成本有效的部分报道:
  • 攻击建模

有效性:高

+会员资格
部分帮助这MemberOf关系表显示额外CWE类别和视图引用这个弱点作为成员。这些信息通常是有用的在理解一个弱点符合外部信息源的上下文中。
自然 类型 ID 的名字
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 719年 OWASP 2007年十大类别A8——不安全的加密存储
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 720年 OWASP 2007年十大类别A9——不安全的通信
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 729年 OWASP 2004年十大类别A8——不安全存储
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 803年 2010年前25 -多孔防御
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 816年 OWASP十大2010类别A7 -不安全的加密存储
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 818年 OWASP 2010年十大类别A9,传输层保护不足
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 861年 CERT甲骨文安全Java编码标准(2011)第18章-杂项(MSC)
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 866年 2011年前25 -多孔防御
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 930年 OWASP十大2013类别A2 -破碎的认证和会话管理
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 934年 OWASP十大2013类别A6 -暴露敏感数据
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 963年 SFP二级集群:公开数据
MemberOf 视图视图——CWE条目的一个子集,它提供了一种检查CWE的内容。两个主要视图结构片(列表)和图(包含条目之间的关系)。 1003年 弱点简化映射的漏洞发布
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 1029年 OWASP十大2017类别A3 -暴露敏感数据
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 1152年 SEI CERT甲骨文Java安全编码标准,指南49。杂项(MSC)
MemberOf 视图视图——CWE条目的一个子集,它提供了一种检查CWE的内容。两个主要视图结构片(列表)和图(包含条目之间的关系)。 1340年 方案及数据保护措施
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 1348年 OWASP 2021年十大类别A04:2021——不安全设计
+笔记

的关系

有一个重叠的关系不安全存储的敏感信息(cwe - 922)和失踪加密敏感信息(cwe - 311)。加密通常用于防止攻击者读取敏感数据。然而,加密并不阻止攻击者删除或覆盖数据。
+分类法映射
映射分类名称 节点ID 适合 映射节点名
加密数据失败
OWASP十大2007 A8 CWE更具体 不安全的加密存储
OWASP十大2007 A9 CWE更具体 不安全的通信
OWASP十大2004 A8 CWE更具体 不安全的存储
WASC 4 传输层的保护不足
CERT甲骨文安全Java编码标准(2011) MSC00-J 使用SSLSocket而不是插座的安全数据交换
软件故障模式 SFP23 公开的数据
+引用
[REF-18]安全软件公司. .“扣应用程序安全性的过程”。2005年。<https://cwe.mitre.org/documents/sources/TheCLASPApplicationSecurityProcess.pdf>。
[REF-7]大卫迈克尔·霍华德和勒布朗。编写安全代码。第9章,299页“保护机密数据”。第二版。微软出版社。2002-12-04。<https://www.microsoftpressstore.com/store/writing -安全-代码- 9780735617223>。
迈克尔•霍华德(REF-44)大卫·勒布朗和Viega约翰。软件安全的“24宗罪”。“罪孽17:未能保护存储数据。”Page 253. McGraw-Hill. 2010.
(ref - 265)弗兰克·金。“前25系列-等级10加密敏感数据的缺失”。无软件安全研究所。2010-02-26。<http://blogs.sans.org/appsecstreetfighter/2010/02/26/top-25-series-rank-10-missing-encryption-of-sensitive-data/>。
(ref - 62)马克·多德约翰麦克唐纳和贾斯汀Schuh。“软件安全评估的艺术”。第二章,“常见的加密漏洞”,43页。1版。艾迪生卫斯理》2006。
[ref - 267]信息技术实验室,国家标准与技术研究院。加密模块“安全要求”。2001-05-25。<http://csrc.nist.gov/publications/fips/fips140-2/fips1402.pdf>。
+内容的历史
+提交
提交日期 提交者 组织
2006-07-19
+修改
修改日期 修饰符 组织
2008-07-01 Eric Dalci Cigital
更新Time_of_Introduction
2008-08-15 Veracode
建议OWASP 2004年排名前十的映射
2008-09-08 CWE内容团队 主教法冠
更新Common_Consequences、关系、Other_Notes Taxonomy_Mappings
2009-10-29 CWE内容团队 主教法冠
更新Common_Consequences Other_Notes
2010-02-16 CWE内容团队 主教法冠
更新Applicable_Platforms、Common_Consequences Demonstrative_Examples、描述Detection_Factors, Likelihood_of_Exploit,名字,Observed_Examples, Potential_Mitigations,引用,Related_Attack_Patterns,关系,Taxonomy_Mappings Time_of_Introduction
2010-04-05 CWE内容团队 主教法冠
更新Related_Attack_Patterns
2010-06-21 CWE内容团队 主教法冠
更新Common_Consequences Potential_Mitigations,引用
2010-09-27 CWE内容团队 主教法冠
更新Potential_Mitigations
2010-12-13 CWE内容团队 主教法冠
更新Demonstrative_Examples、Observed_Examples Related_Attack_Patterns
2011-03-29 CWE内容团队 主教法冠
更新Demonstrative_Examples
2011-06-01 CWE内容团队 主教法冠
更新的关系,Taxonomy_Mappings
2011-06-27 CWE内容团队 主教法冠
更新的关系
2011-09-13 CWE内容团队 主教法冠
更新Potential_Mitigations、人际关系
2012-05-11 CWE内容团队 主教法冠
更新Demonstrative_Examples、引用关系,Taxonomy_Mappings
2012-10-30 CWE内容团队 主教法冠
更新Potential_Mitigations,引用
2013-07-17 CWE内容团队 主教法冠
更新Relationship_Notes
2014-02-18 CWE内容团队 主教法冠
更新Related_Attack_Patterns
2014-06-23 CWE内容团队 主教法冠
更新的关系
2014-07-30 CWE内容团队 主教法冠
更新Detection_Factors、关系、Taxonomy_Mappings
2015-12-07 CWE内容团队 主教法冠
更新Related_Attack_Patterns
2017-01-19 CWE内容团队 主教法冠
更新Related_Attack_Patterns
2017-05-03 CWE内容团队 主教法冠
更新Related_Attack_Patterns
2017-11-08 CWE内容团队 主教法冠
更新Likelihood_of_Exploit、Modes_of_Introduction Potential_Mitigations、引用关系
2018-03-27 CWE内容团队 主教法冠
更新引用关系
2019-01-03 CWE内容团队 主教法冠
更新Related_Attack_Patterns、关系、Taxonomy_Mappings
2019-06-20 CWE内容团队 主教法冠
更新Related_Attack_Patterns、关系类型
2020-02-24 CWE内容团队 主教法冠
更新引用关系
2020-12-10 CWE内容团队 主教法冠
更新Potential_Mitigations、人际关系
2021-10-28 CWE内容团队 主教法冠
更新的关系
2022-06-28 CWE内容团队 主教法冠
更新的关系
2023-01-31 CWE内容团队 主教法冠
更新描述,Potential_Mitigations
+以前的条目名称
改变日期 以前的条目名称
2008-04-11 加密数据失败
2010-02-16 未能加密敏感数据
更多的信息是可用的,请选择一个不同的过滤器。
页面最后更新:2023年1月31日