CWE

常见的弱点枚举

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

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

CWE-41:不当的解决路径等效

弱点ID: 41
抽象:基地
结构:简单的
视图定制的信息:
+描述
该产品是容易通过路径等效文件系统内容披露。路径等效包括使用特殊字符的文件和目录的名称。相关操作的目的是生成多个名称相同的对象。
+扩展描述
路径等效通常是采用以绕过访问控制表示使用一组完整的文件名或文件路径表示。这不同于路径遍历,在执行操作来生成不同的对象的名称。
+的关系
部分帮助此表显示了弱点和高水平类别相关的这一弱点。这些关系被定义为ChildOf、ParentOf MemberOf,并洞察类似项目可能存在的在较高和较低的抽象级别。此外,关系如PeerOf和CanAlsoBe定义显示类似的弱点,用户可能想要探索。
+相关的视图”研究概念”(cwe - 1000)
自然 类型 ID 的名字
ChildOf 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。 706年 使用Incorrectly-Resolved名称或引用
ParentOf 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。 42 路径等效:“文件名。”(拖点)
ParentOf 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。 44 路径等效:“file.name”(内部点)
ParentOf 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。 46 路径等效:“文件名”(落后于空间)
ParentOf 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。 47 路径等效:“文件名”(主要空间)
ParentOf 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。 48 路径等效:“文件名称”(内部空格)
ParentOf 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。 49 路径等效:“文件名/”(末尾斜杠)
ParentOf 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。 50 等效路径:/ /多/领导/削减的
ParentOf 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。 51 等效路径:/多/ /内部削减的
ParentOf 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。 52 路径等效:“/多/ / / / /’结尾
ParentOf 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。 53 路径等效:\内部多个\ \ \反斜杠的
ParentOf 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。 54 路径等效:“filedir \”(尾部)
ParentOf 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。 55 路径等效:/。/ '(单点目录)
ParentOf 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。 56 路径等效:“filedir *’(通配符)
ParentOf 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。 57 路径等效:“fakedir / . . / realdir /文件名”
ParentOf 变体变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。 58 路径等效:Windows 8.3文件名
PeerOf 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。 1289年 不当的不安全的等价验证输入
光束 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。 20. 不正确的输入验证
光束 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。 73年 外部控制文件名或路径
光束 类类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。 172年 编码错误
部分帮助此表显示了弱点和高水平类别相关的这一弱点。这些关系被定义为ChildOf、ParentOf MemberOf,并洞察类似项目可能存在的在较高和较低的抽象级别。此外,关系如PeerOf和CanAlsoBe定义显示类似的弱点,用户可能想要探索。
+相关观点“软件开发”(cwe - 699)
自然 类型 ID 的名字
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 1219年 文件处理问题
+模式的介绍
部分帮助不同模式的引入提供了信息如何以及何时可以纳入这一弱点。生命周期的阶段识别点的介绍可能发生,而相关的报告提供了一个典型的场景介绍在给定的阶段。
阶段 请注意
实现
+适用的平台
部分帮助该清单显示了给定的弱点可以可能的地区出现。这些可能是为特定命名的语言,操作系统,架构、模式、技术、或一个类这样的平台。列出的平台是随着频率的出现疲态实例。

语言

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

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

技术的影响:阅读文件或目录;修改文件或目录;旁路保护机制

攻击者可以遍历文件系统,以意想不到的地点和读或覆盖意想不到的文件的内容。如果文件是用于安全机制比攻击者可以绕过机制。
+观察到的例子
参考 描述
源代码公开使用拖曳点
源代码公开使用拖曳点
源代码公开使用拖曳点或落后于编码空间“% 20”
源代码公开使用拖曳点
绕过目录访问限制在URL中使用拖曳点
绕过目录访问限制在URL中使用拖曳点
绕过检查”。lnk .lnk扩展使用。”
来源披露通过拖曳编码空间“% 20”
来源披露通过拖曳编码空间“% 20”
来源披露通过拖曳编码空间“% 20”
来源披露通过拖曳编码空间“% 20”
来源披露通过拖曳编码空间“% 20”
来源披露通过拖曳编码空间“% 20”
来源披露通过拖曳编码空间“% 20”
多因素的脆弱性(MVF)。目录遍历使用Web编码在FTP服务器和其他问题如“% 20”;某些操作不寻常的副作用。
查询字符串的尾随空格(“+”)披露导致源代码。
文件名与空间允许任意文件删除当产品不正确的引用;一些重叠路径遍历。
“+”字在查询字符串转换为空间敏感文件/扩展(内部空间),导致绕过访问限制的文件。
重叠infoleak
应用程序服务器允许远程攻击者读取源代码. jsp文件通过附加/请求的URL。
绕过基本身份验证使用拖曳文件“/”
读取敏感文件与落后的“/”
Web服务器,远程攻击者可以查看文档根目录下的敏感文件通过GET请求(比如.htpasswd) /。
目录遍历脆弱性服务器允许远程攻击者读取保护文件通过. .(点点)序列在一个HTTP请求。
源代码公开
读文件完整路径名使用多个内部削减。
服务器允许远程攻击者通过GET请求读取任意文件与多个领先/(削减)字符的文件名。
服务器允许远程攻击者读取任意文件通过领先的斜杠(/ /)字符的URL请求。
服务器允许远程攻击者绕过身份验证和读取限制文件通过一个额外的/(削减)请求的URL。
产品允许本地用户删除任意文件或创建任意空文件通过一个目标文件名与大量的领先斜杠(/)字符。
服务器允许远程攻击者绕过访问限制的文件通过一个HTTP请求的多个序列/(削减)字符,如http://www.example.com///file/。
产品允许远程攻击者绕过身份验证,获取敏感信息,或通过直接访问请求管理员/用户。之前pl / /(双领先的削减)。
服务器允许远程攻击者通过一个URL执行任意命令有多个领先的“/”(削减)人物和“. .”序列。
访问目录使用多个领先的削减。
绕过访问限制通过多种领先的削减,导致一个正则表达式失败。
档案提取任意文件使用多个主要削减在存档文件名。
在web服务器使用多个目录列表末尾斜杠
ASP。净允许远程攻击者绕过身份验证。aspx文件限制通过请求包含一个目录(1)(反斜杠“\”)或(2)“% 5 c”(编码反斜杠),又名“路径验证漏洞。”
服务器允许远程攻击者读取源代码供插入一个可执行文件。(点)的URL。
服务器允许远程攻击者通过/读取密码保护的文件。/ HTTP请求。
输入验证错误
可能(可能是清洗错误)
”/。/ / / / /等“清洗”。/ / / etc /等“然后
服务器允许远程攻击者通过/查看密码保护的文件。/在URL中。
列表目录使用所需的路径和“*”
列表文件在web服务器使用“*开头”
代理允许远程攻击者绕过denylist限制和连接到未经授权的web服务器通过修改请求的URL,包括(1)/ /(双斜杠),(2)/子目录/ . .parentdir所需的文件在哪里,(3)/。/,或(4)url编码的字符。
应用程序之前检查访问受限制的URL规范化
CGI来源披露使用“目录名/ . . /目录”
多个web服务器允许限制绕过使用长8.3名称而不是名字
源代码公开使用8.3文件名称。
多因素的脆弱性。产品生成临时文件名使用长文件名,这成为8.3格式可预测的。
+潜在的缓解措施

实施阶段:

策略:输入验证

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

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

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

实施阶段:

策略:输出编码

使用和指定输出编码可以由下游组件读取输出。常见的编码包括iso - 8859 - 1、utf - 7, utf - 8。如果不指定一个编码,下游组件可能会选择不同的编码,通过假设一个默认的编码或使用自动推断哪些编码,这可能是错误的。编码不一致时,下游组件可能治疗一些特殊字符或字节序列,即使他们没有特别在原始的编码。攻击者就能够利用这种差异,开展注入攻击;他们甚至可以绕过保护机制,假设原编码也被下游组件。

实施阶段:

策略:输入验证

输入应该解码和规范化应用程序当前的内部表示之前验证(cwe - 180)。确保应用程序不会解码输入两次相同(cwe - 174)。这些错误可以用来绕过allowlist验证方案通过引入危险的输入后检查。
+检测方法

自动静态分析——二进制或字节码

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

成本有效的部分报道:
  • 字节码的弱点分析,包括反汇编程序+源代码弱点分析

有效性:飙升部分

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

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

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

有效性:飙升部分

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

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

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

有效性:飙升部分

动态分析与人工解释结果

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

成本有效的部分报道:
  • 模糊测试
  • 基于框架Fuzzer

有效性:飙升部分

人工静态分析源代码

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

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

有效性:高

自动静态分析源代码

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

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

有效性:飙升部分

体系结构或设计审查

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

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

有效性:高

+影响资源
  • 文件或目录
+会员资格
部分帮助这MemberOf关系表显示额外CWE类别和视图引用这个弱点作为成员。这些信息通常是有用的在理解一个弱点符合外部信息源的上下文中。
自然 类型 ID 的名字
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 723年 OWASP十大2004类别A2 -破碎的访问控制
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 743年 CERT C安全编码标准(2008)第十章-输入输出(FIO)
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 877年 CERT c++安全编码部分09 -输入输出(FIO)
MemberOf 视图视图——CWE条目的一个子集,它提供了一种检查CWE的内容。两个主要视图结构片(列表)和图(包含条目之间的关系)。 884年 CWE横截面
MemberOf 类别类别——CWE条目包含一组其他条目,共享一个共同的特点。 981年 SFP二级集群:路径遍历
+笔记

的关系

这些操作可以有效的路径遍历问题,。
+分类法映射
映射分类名称 节点ID 适合 映射节点名
千鸟 路径等效
CERT C安全编码 FIO02-C 规范化路径名来自不受信任的来源
+内容的历史
+提交
提交日期 提交者 组织
2006-07-19 千鸟
+修改
修改日期 修饰符 组织
2008-07-01 Eric Dalci Cigital
更新Potential_Mitigations Time_of_Introduction
2008-09-08 CWE内容团队 主教法冠
更新的关系,Other_Notes Taxonomy_Mappings,类型
2008-10-14 CWE内容团队 主教法冠
更新描述
2008-11-24 CWE内容团队 主教法冠
更新的关系,Taxonomy_Mappings
2009-03-10 CWE内容团队 主教法冠
更新的关系
2009-05-27 CWE内容团队 主教法冠
更新后的名字
2009-07-27 CWE内容团队 主教法冠
更新Potential_Mitigations
2011-03-29 CWE内容团队 主教法冠
更新Other_Notes、Potential_Mitigations Relationship_Notes
2011-06-01 CWE内容团队 主教法冠
更新Common_Consequences
2011-09-13 CWE内容团队 主教法冠
更新的关系,Taxonomy_Mappings
2012-05-11 CWE内容团队 主教法冠
更新Common_Consequences Observed_Examples,关系
2012-10-30 CWE内容团队 主教法冠
更新Potential_Mitigations
2014-07-30 CWE内容团队 主教法冠
更新Detection_Factors、人际关系
2017-11-08 CWE内容团队 主教法冠
更新Affected_Resources Applicable_Platforms,关系,Taxonomy_Mappings
2019-06-20 CWE内容团队 主教法冠
更新Related_Attack_Patterns
2020-02-24 CWE内容团队 主教法冠
更新Potential_Mitigations、人际关系
2020-06-25 CWE内容团队 主教法冠
更新Observed_Examples Potential_Mitigations,关系
2023-01-31 CWE内容团队 主教法冠
更新描述
+以前的条目名称
改变日期 以前的条目名称
2008-04-11 路径等效
2009-05-27 未能解决路径等效
更多的信息是可用的,请选择一个不同的过滤器。
页面最后更新:2023年1月31日