CWE

常见的弱点枚举

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

新CWE吗?点击这里!
CWE最重要的硬件的弱点
CWE最危险的弱点
>CWE列表> CWE -个人字典定义(4.12)
ID

cwe - 760:使用单向散列,并可预测的盐

弱点ID: 760
抽象:变体
结构:简单的
视图定制的信息:
的用户感兴趣的更多的概念方面的一个弱点。例如:教育者,技术作家和项目/项目经理。 用户关心的实际应用和细节的本质弱点以及如何预防它的发生。例子:工具开发人员、安全人员、pen-testers事件反应分析师。 对于用户映射一个问题CWE / CAPEC id,即。,找到最合适的CWE为一个特定的问题(例如,CVE记录)。例如:工具开发人员、安全人员。 用户希望看到所有可用的信息CWE / CAPEC条目。 为用户谁想要定制显示细节。
×

编辑自定义过滤器


+描述
产品采用单向加密散列在一个输入,不应是可逆的,如一个密码,但产品使用一个可预测的盐,作为输入的一部分。
+扩展描述

这使得攻击者更容易pre-compute散列值使用字典攻击技术,如彩虹表,有效地禁用不可预知的盐将提供的保护。

值得注意的是,尽管共同的看法,好盐的使用一个散列不充分增加攻击者是谁的努力针对个人密码,或者有大量的计算资源可用,如与云服务或专业,廉价的硬件。脱机密码破解仍然可以有效如果哈希函数不是昂贵的计算;很多加密功能设计高效、可以使用大量的计算资源,容易受到攻击,即使哈希密码地强烈。使用盐仅略有增加的计算要求攻击者与其他策略相比,如自适应哈希函数。看到cwe - 916为更多的细节。

+的关系
部分帮助此表显示了弱点和高水平类别相关的这一弱点。这些关系被定义为ChildOf、ParentOf MemberOf,并洞察类似项目可能存在的在较高和较低的抽象级别。此外,关系如PeerOf和CanAlsoBe定义显示类似的弱点,用户可能想要探索。
+相关的视图”研究概念”(cwe - 1000)
自然 类型 ID 的名字
ChildOf 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。 916年 使用的密码哈希计算努力不足
部分帮助此表显示了弱点和高水平类别相关的这一弱点。这些关系被定义为ChildOf、ParentOf MemberOf,并洞察类似项目可能存在的在较高和较低的抽象级别。此外,关系如PeerOf和CanAlsoBe定义显示类似的弱点,用户可能想要探索。
+相关视图”架构概念”(cwe - 1008)
自然 类型 ID 的名字
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 1013年 加密数据
+背景细节
在密码学中,盐是指一些随机的数据散列前一个输入词典攻击更困难。
+模式的介绍
部分帮助不同模式的引入提供了信息如何以及何时可以纳入这一弱点。生命周期的阶段识别点的介绍可能发生,而相关的报告提供了一个典型的场景介绍在给定的阶段。
阶段 请注意
实现 实现:造成这一弱点在建筑安全策略的实施。
+常见的后果
部分帮助这个表指定不同的个人相关后果的弱点。标识应用程序范围的安全领域侵犯,而影响了负面的技术影响,如果敌人成功利用这个弱点。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能会有高可能性,缺点将被利用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
范围 影响 可能性
访问控制

技术的影响:旁路保护机制

+观察到的例子
参考 描述
博客软件使用硬编码的盐在计算密码散列。
数据库服务器使用盐当加密的用户名密码,简化蛮力攻击。
服务器使用一个常数盐当加密密码,简化蛮力攻击。
链:产品产生可预见的MD5散列使用恒定值加上用户名,允许绕过身份验证。
+潜在的缓解措施

阶段:体系结构和设计

使用一个自适应哈希函数,可以配置为改变计算的工作量需要计算散列,如迭代的数量(“拉伸”)或所需的内存。哈希函数自动执行盐。这些函数可以显著增加蛮力攻击的开销相比intentionally-fast MD5等功能。例如,彩虹表攻击会变得不可行,由于高计算开销。最后,由于计算能力变得更快和更便宜的随着时间的推移,这项技术可以改造增加工作量没有迫使整个更换使用的算法。

一些哈希函数的一个或多个这些所需的属性包括bcrypt [ref - 291],scrypt [ref - 292],PBKDF2 [ref - 293]。虽然有积极讨论哪些是最有效的,他们都是比使用盐很少用哈希函数计算开销。

注意,使用这些函数可以对性能有影响,所以他们需要特殊考虑避免拒绝服务攻击。然而,他们的可配置性提供了更好的控制有多少CPU和内存使用,所以它可以调节以适应环境的需要。

有效性:高

实施阶段:

如果技术需要额外的计算工作不能实现,然后为每个密码处理,生成一个新的随机盐使用强大的随机数发生器和不可预知的种子。加入盐的明文密码散列前。当散列存储,存储盐。不要使用相同的盐为每一个密码。

有效性:有限

注意:请注意盐的工作量不会减少目标攻击一个人散列(比如一个关键人的密码),一般来说他们更有效比其他哈希技术,如增加计算时间和内存开销。没有内置工作负载,现代攻击可以计算大量的散列,甚至耗尽整个空间的所有可能的密码,在很短的时间内,使用大规模并行计算和GPU, ASIC或FPGA硬件。
+检测方法

自动静态分析

自动静态分析,通常被称为静态应用程序安全性测试(科协),可以找到一些实例的这个弱点分析源代码或二进制/编译后的代码,而不必执行它。通常情况下,这是通过建立一个模型的数据流和控制流,然后寻找潜在攻击模式,连接“源”与“下沉”(输入)的起源(目的地数据与外部组件交互,较低的层,如操作系统,等等)。

有效性:高

+会员资格
部分帮助这MemberOf关系表显示额外CWE类别和视图引用这个弱点作为成员。这些信息通常是有用的在理解一个弱点符合外部信息源的上下文中。
自然 类型 ID 的名字
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 958年 SFP二级集群:破碎的加密
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 1346年 OWASP十大2021类别A02:2021 -密码失败
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 1402年 综合分类:加密
+脆弱性映射笔记

用法:允许

(CWE ID可以用来映射到现实世界的漏洞)

原因:可接受的使用

理由是:

这个CWE条目是变体的抽象级别,这是一个首选的抽象级别映射到漏洞的根本原因。

评论:

仔细阅读这两个名称和描述,以确保此映射是一个适当的配合。不要试图“力”映射到底层基础/变体只是遵守这首选的抽象级别。
+笔记

维护

CWE 4.5,相关术语随机性,熵,和可预测性可以相差很大。在开发人员和其他社区,使用“随机性”。然而,在密码学,“熵”是不同的,通常隐含的测量。没有常用的定义,甚至在标准文件和加密文件。CWE的未来版本将试图定义这些术语,如果有必要,区分他们的方式适合不同的社区,但不会减少可用性CWE的映射,理解,或者其他场景。
+引用
(ref - 291)约翰尼·雪莱。“bcrypt”。<http://bcrypt.sourceforge.net/>。
科林·珀西瓦尔(ref - 292)。“Tarsnap——scrypt密钥推导函数和加密效用”。<http://www.tarsnap.com/scrypt.html>。
ref - 293 b . Kaliski。“RFC2898——PKCS # 5:密码的加密规范2.0版本”。5.2 PBKDF2。2000年。<https://www.rfc-editor.org/rfc/rfc2898>。URL验证:2023-04-07
黑尔(ref - 294)结尾。“如何安全地存储密码”。2010-01-31。<https://codahale.com/how-to-safely-store-a-password/>。URL验证:2023-04-07
布莱恩·克雷布斯(ref - 295)。“企业如何加强密码安全”(托马斯·h·“)采访时。2012-06-11。<https://krebsonsecurity.com/2012/06/how-companies-can-beef-up-password-security/>。URL验证:2023-04-07
(ref - 296)太阳能设计师。“密码安全:过去、现在、未来”。2012年。<https://www.openwall.com/presentations/PHDays2012-Password-Security/>。URL验证:2023-04-07
(ref - 297)特洛伊打猎。“我们的密码哈希没穿衣服”。2012-06-26。<https://www.troyhunt.com/our-password-hashing-has-no-clothes/>。URL验证:2023-04-07
(ref - 298) Joshbw。“我们真的应该使用bcrypt / scrypt ?”。2012-06-08。<https://web.archive.org/web/20120629144851/http: / /www.analyticalengine.net/2012/06/should-we-really-use-bcryptscrypt/>。URL验证:2023-04-07
OWASP (ref - 631)。“密码存储备忘单”。<https://cheatsheetseries.owasp.org/cheatsheets/Password_Storage_Cheat_Sheet.html>。URL验证:2023-04-07
[ref - 632]托马斯“。“足够的彩虹表:你需要知道的关于安全的密码方案”。2007-09-10。<http://hashphp.org/hashing.html>。URL验证:2023-04-07
(ref - 633)罗伯特·格雷厄姆。“规范”的重要性。2009-02-02。<https://blog.erratasec.com/2009/02/importance-of-being-canonical.html .ZCbyY7LMJPY>。URL验证:2023-04-07
詹姆斯McGlinn [ref - 634]。“密码散列”。<https://privacyaustralia.net/phpsec/articles/password-hashing/>。URL验证:2023-04-07
杰夫·阿特伍德(ref - 635)。“彩虹散列开裂”。2007-09-08。<https://blog.codinghorror.com/rainbow-hash-cracking/>。URL验证:2023-04-07
杰夫·阿特伍德(ref - 636)。“速度哈希”。2012-04-06。<https://blog.codinghorror.com/speed-hashing/>。URL验证:2023-04-07
(ref - 637)“彩虹表”。维基百科。2009-03-03。<https://en.wikipedia.org/wiki/Rainbow_table>。URL验证:2023-04-07
[REF-7]大卫迈克尔·霍华德和勒布朗。编写安全代码。第9章,302页“创建一个咸哈希”。第二版。微软出版社。2002-12-04。<https://www.microsoftpressstore.com/store/writing -安全-代码- 9780735617223>。
(ref - 62)马克·多德约翰麦克唐纳和贾斯汀Schuh。“软件安全评估的艺术”。第二章,“盐价值观”,页46。1版。艾迪生卫斯理》2006。
+内容的历史
+提交
提交日期 提交者 组织
2009-03-03
(CWE 1.3, 2009-03-10)
CWE内容团队 主教法冠
+修改
修改日期 修饰符 组织
2009-10-29 CWE内容团队 主教法冠
更新Observed_Examples、人际关系
2010-02-16 CWE内容团队 主教法冠
更新的引用
2011-03-29 CWE内容团队 主教法冠
更新Observed_Examples
2011-06-01 CWE内容团队 主教法冠
更新Common_Consequences
2012-05-11 CWE内容团队 主教法冠
更新引用关系
2012-10-30 CWE内容团队 主教法冠
更新Potential_Mitigations,引用
2013-02-21 CWE内容团队 主教法冠
更新描述,Potential_Mitigations、引用关系类型
2014-02-18 CWE内容团队 主教法冠
更新Potential_Mitigations,引用
2014-07-30 CWE内容团队 主教法冠
更新的关系
2017-01-19 CWE内容团队 主教法冠
更新的关系
2017-11-08 CWE内容团队 主教法冠
更新Modes_of_Introduction、引用关系
2018-03-27 CWE内容团队 主教法冠
更新的引用
2019-06-20 CWE内容团队 主教法冠
更新的类型
2020-02-24 CWE内容团队 主教法冠
更新的关系
2021-07-20 CWE内容团队 主教法冠
更新Maintenance_Notes
2021-10-28 CWE内容团队 主教法冠
更新的关系
2023-01-31 CWE内容团队 主教法冠
更新描述
2023-04-27 CWE内容团队 主教法冠
更新Detection_Factors、引用关系
2023-06-29 CWE内容团队 主教法冠
更新Mapping_Notes
页面最后更新:2023年6月29日