CWE

常见的弱点枚举

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

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

CWE-39:路径遍历:“C:目录名”

弱点ID: 39
抽象:变体
结构:简单的
视图定制的信息:
+描述
产品接受输入包含一个驱动器或Windows卷信(C:目录名),可能将访问重定向到一个意想不到的位置或任意文件。
+的关系
部分帮助此表显示了弱点和高水平类别相关的这一弱点。这些关系被定义为ChildOf、ParentOf MemberOf,并洞察类似项目可能存在的在较高和较低的抽象级别。此外,关系如PeerOf和CanAlsoBe定义显示类似的弱点,用户可能想要探索。
+相关的视图”研究概念”(cwe - 1000)
自然 类型 ID 的名字
ChildOf 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。 36 绝对路径遍历
+模式的介绍
部分帮助不同模式的引入提供了信息如何以及何时可以纳入这一弱点。生命周期的阶段识别点的介绍可能发生,而相关的报告提供了一个典型的场景介绍在给定的阶段。
阶段 请注意
实现
+适用的平台
部分帮助该清单显示了给定的弱点可以可能的地区出现。这些可能是为特定命名的语言,操作系统,架构、模式、技术、或一个类这样的平台。列出的平台是随着频率的出现疲态实例。

语言

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

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

技术的影响:执行未经授权的代码或命令

攻击者可以创建或覆盖关键文件用于执行代码,如项目或库。
完整性

技术的影响:修改文件或目录

攻击者可以覆盖或创建重要文件,如项目、图书馆、或重要数据。如果目标文件是用于安全机制,那么攻击者可能能够绕过机制。例如,添加一个新帐户的密码文件可能允许攻击者绕过身份验证。
保密

技术的影响:读文件或目录

攻击者可以读意想不到的内容文件和暴露敏感数据。如果目标文件是用于安全机制,那么攻击者可能能够绕过机制。例如,通过阅读密码文件,攻击者可以进行暴力破解密码猜测攻击为了打入系统上的一个帐户。
可用性

技术的影响:DoS:崩溃,退出或重新启动

攻击者可以覆盖、删除或腐败的意想不到的重要文件等项目,图书馆,或重要的数据。这可能防止软件工作,保护机制,如身份验证的情况下,它有可能锁定每个用户的软件。
+观察到的例子
参考 描述
远程攻击者可以读取任意文件的驱动器通过指定请求的URL。
FTP服务器允许远程攻击者通过使用“ls”命令任意目录列表,包括驱动器名(例如C:)请求的路径名。
FTP服务器允许远程攻击者获取特权系统信息通过指定任意的路径。
FTP服务器允许远程攻击者通过ls命令列表任意驱动器的内容包括驱动器作为参数。
服务器允许远程攻击者通过浏览任意目录的完整路径名的参数一定的动态页面。
远程攻击者可以读取任意文件通过一个HTTP请求的参数是一个文件名的形式“C:”(驱动器),“/ /绝对路径”,或“. .”。
FTP服务器读/使用“C: \”访问任意文件的文件名
+潜在的缓解措施

实施阶段:

策略:输入验证

假设所有的输入是恶意的。使用一个“接受良好的“输入验证策略,即。,使用一个可接受的输入列表,严格遵守规范。拒绝任何不严格符合规范的输入,或将其转换为一些。

当执行输入验证,考虑所有可能相关的属性,包括长度,类型的输入,可接受的值的全系列,缺失或额外的输入,语法,一致性相关领域,符合业务规则。作为业务规则逻辑的一个例子,在语法上“船”可能是有效的,因为它只包含字母数字字符,但它不是有效的如果输入预计仅包含颜色,如“红”或“蓝色”。

不完全依赖寻找恶意或畸形的输入。这很可能错过至少有一个不受欢迎的输入,特别是如果代码的环境变化。这可以让攻击者有足够的空间绕过验证。然而,denylists可以用于检测潜在攻击或确定哪些输入是畸形的,应该直接驳回。

验证文件名时,用严格的allowlists限制使用的字符集。如果可行,只允许一个“。”字符的文件名,以避免弱点等CWE-23,排除目录分隔符“/”等,以避免CWE-36。使用许可文件扩展名的列表,这将有助于避免cwe - 434

不完全依赖一个过滤机制,消除潜在的危险人物。这相当于一个denylist,这可能是不完整的(cwe - 184)。例如,过滤保护“/”是不够的,如果文件系统还支持使用作为目录分隔符“\”。另一个可能的错误可能发生过滤时,仍然会产生危险的数据(cwe - 182)。例如,如果“. ./“序列是远离“……/ /字符串以顺序的方式,两个实例“. ./”将从原始字符串中删除,但其余字符仍将形成“. ./”字符串。

有效性:高

实施阶段:

策略:输入验证

输入应该解码和规范化应用程序当前的内部表示之前验证(cwe - 180)。确保应用程序不会解码输入两次相同(cwe - 174)。这些错误可以用来绕过allowlist验证方案通过引入危险的输入后检查。
+会员资格
部分帮助这MemberOf关系表显示额外CWE类别和视图引用这个弱点作为成员。这些信息通常是有用的在理解一个弱点符合外部信息源的上下文中。
自然 类型 ID 的名字
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 743年 CERT C安全编码标准(2008)第十章-输入输出(FIO)
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 877年 CERT c++安全编码部分09 -输入输出(FIO)
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 981年 SFP二级集群:路径遍历
+分类法映射
映射分类名称 节点ID 适合 映射节点名
千鸟 C:目录名或C: (Windows体积或“驱动器”)
CERT C安全编码 FIO05-C 使用多个文件属性识别文件
软件故障模式 SFP16 路径遍历
+内容的历史
+提交
提交日期 提交者 组织
2006-07-19 千鸟
+修改
修改日期 修饰符 组织
2008-07-01 Eric Dalci Cigital
更新Potential_Mitigations Time_of_Introduction
2008-09-08 CWE内容团队 主教法冠
更新的关系,Taxonomy_Mappings
2008-11-24 CWE内容团队 主教法冠
更新的关系,Taxonomy_Mappings
2009-07-27 CWE内容团队 主教法冠
更新Potential_Mitigations
2010-06-21 CWE内容团队 主教法冠
更新Potential_Mitigations
2011-03-29 CWE内容团队 主教法冠
更新Potential_Mitigations
2011-06-01 CWE内容团队 主教法冠
更新Common_Consequences
2011-09-13 CWE内容团队 主教法冠
更新的关系,Taxonomy_Mappings
2012-05-11 CWE内容团队 主教法冠
更新Common_Consequences Observed_Examples,关系
2014-07-30 CWE内容团队 主教法冠
更新的关系,Taxonomy_Mappings
2017-11-08 CWE内容团队 主教法冠
更新Applicable_Platforms Taxonomy_Mappings
2020-02-24 CWE内容团队 主教法冠
更新Potential_Mitigations、人际关系
2020-06-25 CWE内容团队 主教法冠
更新Potential_Mitigations
2021-03-15 CWE内容团队 主教法冠
更新Potential_Mitigations
2023-01-31 CWE内容团队 主教法冠
更新描述
+以前的条目名称
改变日期 以前的条目名称
2008-04-11 路径问题-驱动器或Windows卷“C:目录名”
更多的信息是可用的,请选择一个不同的过滤器。
页面最后更新:2023年1月31日