CWE

普遍的弱点

社区开发的软件和硬件弱点类型清单

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

CWE-242:使用固有危险的功能

弱点ID:242
抽象:根据
结构:简单的
查看自定义信息:
+描述
该程序调用一个无法保证可以安全起作用的函数。
+扩展描述
某些功能以危险的方式行事,而不管它们如何使用。通常在不考虑安全问题的情况下实施此类别的功能。get()函数是不安全的,因为它不会执行对其输入大小的界限。攻击者可以轻松地将任意尺寸的输入发送到get()和溢出目标缓冲区。同样,>>运算符在阅读到静态分配的字符数组中时使用不安全,因为它不会执行对其输入大小的范围检查。攻击者可以轻松地将任意输入发送到>>操作员并溢出目标缓冲区。
+关系
部分帮助该表显示了与该弱点相关的弱点和高级类别。这些关系定义为childof,parentof,ementof,并深入了解可能存在于较高和较低抽象水平的类似项目。此外,定义了诸如Peerof和Canalsobe之类的关系,以显示用户可能想要探索的类似弱点。
+与观点“研究概念”相关(CWE-1000)
自然 类型 ID 名称
Childof 班级班级 - 以非常抽象的方式描述的弱点,通常与任何特定的语言或技术无关。比支柱弱点更具体,但比基本弱点更一般。班级弱点通常用以下维度的1或2来描述问题:行为,属性和资源。 1177 使用禁止代码
部分帮助该表显示了与该弱点相关的弱点和高级类别。这些关系定义为childof,parentof,ementof,并深入了解可能存在于较高和较低抽象水平的类似项目。此外,定义了诸如Peerof和Canalsobe之类的关系,以显示用户可能想要探索的类似弱点。
+与“软件开发”视图相关(CWE-699)
自然 类型 ID 名称
成员 类别类别 - 包含共享共同特征的其他条目的CWE条目。 1228 API /功能错误
+介绍模式
部分帮助引言的不同模式提供了有关如何以及何时引入这种弱点的信息。该阶段识别可能发生介绍的生命周期中的一个点,而音符提供了与给定阶段中引言有关的典型情况。
阶段 笔记
执行
+适用的平台
部分帮助该清单显示了可能出现的弱点的可能区域。这些可能适用于特定的命名语言,操作系统,体系结构,范式,技术或一类此类平台。该平台与给定弱点出现在该实例的频率一起列出。

语言

C(不确定的患病率)

C ++(不确定的患病率)

+常见后果
部分帮助该表指定与弱点相关的不同个人后果。该范围确定了违反的应用程序安全区域,而影响描述了如果对手成功利用这一弱点,就会产生负面的技术影响。其可能性提供了有关预期相对于列表中其他后果的特定后果的可能性的信息。例如,可能会利用弱点来实现一定的影响,但很可能会利用它来实现不同的影响。
范围 影响 可能性
其他

技术影响:随上下文而变化

+利用的可能性
高的
+示例的例子

示例1

下面的代码获取()将信息读取到缓冲区中。

(不良代码)
示例语言:C
char buf [bufsize];
获取(buf);

C中的get()函数本质上是不安全的。

示例2

下面的代码调用get()函数以从命令行中读取数据。

(不良代码)
示例语言:C
char buf [24];
printf(“请输入您的姓名,然后按 \ n”);
获取(buf);
...
}

但是,gets()本质上是不安全的,因为它在不检查大小的情况下将所有输入从stdin复制到缓冲区。这使用户可以提供大于缓冲区大小的字符串,从而导致溢出条件。

+潜在的缓解

阶段:实施;要求

禁止使用危险功能。使用他们的安全等效。

阶段:测试

使用GREP或静态分析工具发现危险功能的使用。
+弱点
条件 描述
基本的
(弱点独立于其他弱点的地方)
+会员资格
部分帮助此成员关系表显示了其他CWE类别和视图,将此弱点称为成员。该信息通常可用于理解弱点适合外部信息源的何处。
自然 类型 ID 名称
成员 类别类别 - 包含共享共同特征的其他条目的CWE条目。 227 7pk-滥用API
成员 类别类别 - 包含共享共同特征的其他条目的CWE条目。 748 CERT C安全编码标准(2008)附录-POSIX(POS)
成员 类别类别 - 包含共享共同特征的其他条目的CWE条目。 1001 SFP次级群集:使用不当API
成员 类别类别 - 包含共享共同特征的其他条目的CWE条目。 1171 SEI CERT C编码标准 - 指南50. POSIX(POS)
+分类映射
映射的分类名称 节点ID 合身 映射的节点名称
7个有害王国 危险功能
证书C安全编码 POS33-C CWE更抽象 请勿使用vfork()
软件故障模式 sfp3 使用不当API
+参考
[Ref-6] Katrina Tsipenyuk,Brian Chess和Gary McGraw。“七个有害王国:软件安全错误的分类法”。NIST关于软件安全保证工具技术和指标的研讨会。nist。2005-11-07。<https://samate.nist.gov/ssattm_content/papers/seven%20pernious%20kingdoms%20-%20-%20taxonomy%20OF%20SW%20SECURITY%20Security%20ERR%20-20-%20-%20-%20TSIPENYUK;>。
[Ref-194] Herbert Schildt。“ Herb Schildt的C ++编程食谱”。第5章与I/O合作。麦格劳 - 希尔·奥斯本媒体。2008-04-28。
[Ref-7] Michael Howard和David LeBlanc。“编写安全代码”。第5章“ Get and Fgets”第163页。第二版。Microsoft Press。2002-12-04。<https://www.microsoftpressstore.com/store/writing-secure-code-9780735617223>。
+内容历史记录
+提交
提交日期 提交者 组织
2006-07-19 7个有害王国
+修改
修改日期 修饰符 组织
2008-07-01 Sean Eidemiller 雪茄
添加/更新的示例
2008-07-01 埃里克·达奇(Eric Dalci) 雪茄
更新的势_MINEIGATIONS
2008-09-08 CWE内容团队 MITER
更新了适用的_platforms,关系,其他_notes,gualomy_mappings,type,nefness_ordinalities
2008-11-24 CWE内容团队 MITER
更新的关系,分类_mappings
2009-10-29 CWE内容团队 MITER
更新的描述,其他_notes,参考
2010-02-16 CWE内容团队 MITER
更新了示范示例,参考,关系
2010-04-05 CWE内容团队 MITER
更新的关系
2011-06-01 CWE内容团队 MITER
更新的common_cconsquences
2011-06-27 CWE内容团队 MITER
更新的common_cconsquences
2012-05-11 CWE内容团队 MITER
更新的关系
2012-10-30 CWE内容团队 MITER
更新的势_MINEIGATIONS
2014-07-30 CWE内容团队 MITER
更新的示范_examples,关系,分类_mappings
2017-11-08 CWE内容团队 MITER
更新的Causal_nature,参考,关系,分类_MAPPING
2018-03-27 CWE内容团队 MITER
更新的引用
2019-01-03 CWE内容团队 MITER
更新的关系
2020-02-24 CWE内容团队 MITER
更新的引用,关系
2020-12-10 CWE内容团队 MITER
更新了示范_examples
2021-03-15 CWE内容团队 MITER
更新了示范_examples
+先前的输入名称
改变日期 先前的输入名称
2008-01-30 危险功能
2008-04-11 使用固有危险的功能
提供更多信息 - 请选择其他过滤器。
页面最后更新:2022年10月13日