描述
产品不正确的大小写敏感性的差异占当访问或确定资源的属性,导致不一致的结果。
扩展描述
案件处理不当可能导致敏感数据几个可能的后果,包括:
不区分大小写密码减少密钥空间的大小,使蛮力攻击更容易
绕过过滤器或使用备用名称访问控制
多个解释错误使用替代名称。
的关系
此表显示了弱点和高水平类别相关的这一弱点。这些关系被定义为ChildOf、ParentOf MemberOf,并洞察类似项目可能存在的在较高和较低的抽象级别。此外,关系如PeerOf和CanAlsoBe定义显示类似的弱点,用户可能想要探索。
相关的视图”研究概念”(cwe - 1000)
自然
类型
ID
的名字
ChildOf
类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。
706年
使用Incorrectly-Resolved名称或引用
PeerOf
Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。
1289年
不当的不安全的等价验证输入
CanPrecede
Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。
289年
认证绕过通过替代名称
CanPrecede
变体——一个弱点与某种类型的产品,通常涉及到一个特定的语言或技术。更具体的比基本的弱点。变异水平弱点通常描述问题的3到5以下维度:行为、财产、技术、语言,和资源。
433年
未解析的原始Web内容交付
此表显示了弱点和高水平类别相关的这一弱点。这些关系被定义为ChildOf、ParentOf MemberOf,并洞察类似项目可能存在的在较高和较低的抽象级别。此外,关系如PeerOf和CanAlsoBe定义显示类似的弱点,用户可能想要探索。
相关观点“软件开发”(cwe - 699)
自然
类型
ID
的名字
MemberOf
类别——CWE条目包含一组其他条目,共享一个共同的特点。
19
数据处理错误
此表显示了弱点和高水平类别相关的这一弱点。这些关系被定义为ChildOf、ParentOf MemberOf,并洞察类似项目可能存在的在较高和较低的抽象级别。此外,关系如PeerOf和CanAlsoBe定义显示类似的弱点,用户可能想要探索。
简化映射的相关视图”缺点漏洞发布”(cwe - 1003)
自然
类型
ID
的名字
ChildOf
类——一个弱点,描述的是一个非常抽象的时尚,通常独立于任何特定的语言或技术。更具体的比一个支柱的弱点,但更普遍的基本的弱点。类级别的弱点通常描述问题的1或2以下维度:行为、财产和资源。
706年
使用Incorrectly-Resolved名称或引用
模式的介绍
不同模式的引入提供了信息如何以及何时可以纳入这一弱点。生命周期的阶段识别点的介绍可能发生,而相关的报告提供了一个典型的场景介绍在给定的阶段。
常见的后果
这个表指定不同的个人相关后果的弱点。标识应用程序范围的安全领域侵犯,而影响了负面的技术影响,如果敌人成功利用这个弱点。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能会有高可能性,缺点将被利用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
示范例子
示例1
在下面的例子中,XSS中和方法打算替换脚本标签在一个安全的对等词的用户提供的输入:
公共preventXSS字符串(字符串输入字符串面具){
返回输入。replaceAll(“脚本”,面具);
}
代码只能当“脚本”标签在所有小写,形成一个不完整的denylist (cwe - 184 )。相当于标签如“脚本”或“脚本”不会被这种方法,中和允许XSS攻击。
观察到的例子
参考
描述
应用服务器允许攻击者绕过执行jsp页面,阅读源代码使用的大写jsp扩展的要求。
服务器是区分大小写的,所以治疗. jsp和jsp文件类型处理程序,不同的扩展。JSP源代码可能是阅读,因为JSP文件类型默认为“文本”。
服务器是区分大小写的,所以治疗. jsp和jsp文件类型处理程序,不同的扩展。JSP源代码可能是阅读,因为JSP文件类型默认为“文本”。
URL包含一些字符不匹配的情况下服务器的过滤器可能绕过访问限制,因为不区分大小写的文件系统将处理请求后,绕过了大小写敏感的过滤器。
服务器允许远程攻击者获得源代码的CGI脚本通过url包含ms - dos的约定,如(1)大写字母或(2)8.3文件名。
任务管理器不允许本地用户结束进程和大写字母命名为(1)进程。exe, (2) csr。exe,(3)短信。exe和(4)服务。exe通过进程选项卡允许本地用户安装木马,不能停止。
链:代码从一个区分大小写的Unix平台移植到一个不区分大小写的Windows平台,文件类型处理程序治疗. jsp和. jsp作为不同的扩展。JSP源代码可能是阅读,因为JSP文件类型默认为“文本”。
导致解释错误
目录可能上市因为小写不妥善处理web请求服务器。
文件扩展名检查仅在论坛软件验证扩展,包含所有的小写字母,它允许远程攻击者上传任意文件通过文件扩展名,包括大写字母。
Web服务器以区分大小写的方式限制访问文件,但文件系统以区分大小写的方式访问文件,它允许远程攻击者读取特权文件使用替代资本化。
不分大小写密码导致减少搜索空间。
HTTP服务器允许绕过使用uri访问限制的混合情况。
混合上/小写允许绕过acl。
绕过恶意脚本检测通过使用令牌不区分大小写的。
大小写混合问题允许“admin”“admin”的权利(备用名称属性)。
链:大写文件扩展名导致web服务器返回脚本源代码,而不是执行脚本。
潜在的缓解措施
阶段:体系结构和设计
避免做决定基于名称的资源(例如文件)如果这些资源能替代名称。
实施阶段:
假设所有的输入是恶意的。使用一个“接受良好的“输入验证策略,即。,use a list of acceptable inputs that strictly conform to specifications. Reject any input that does not strictly conform to specifications, or transform it into something that does.
当执行输入验证,考虑所有可能相关的属性,包括长度,类型的输入,可接受的值的全系列,缺失或额外的输入,语法,一致性相关领域,符合业务规则。作为业务规则逻辑的一个例子,在语法上“船”可能是有效的,因为它只包含字母数字字符,但它不是有效的如果输入预计仅包含颜色,如“红”或“蓝色”。
不完全依赖寻找恶意或畸形的输入。这很可能错过至少有一个不受欢迎的输入,特别是如果代码的环境变化。这可以让攻击者有足够的空间绕过验证。然而,denylists可以用于检测潜在攻击或确定哪些输入是畸形的,应该直接驳回。
实施阶段:
输入应该解码和规范化应用程序当前的内部表示之前验证(
cwe - 180 )。确保应用程序不会解码输入两次相同(
cwe - 174 )。这些错误可以用来绕过allowlist验证方案通过引入危险的输入后检查。
功能区域
影响资源
会员资格
这MemberOf关系表显示额外CWE类别和视图引用这个弱点作为成员。这些信息通常是有用的在理解一个弱点符合外部信息源的上下文中。
笔记
研究的差距
这些超在Windows和Mac环境中,可能是在文件名是不区分大小写的,因此受到等价操作涉及的情况。
分类法映射
映射分类名称
节点ID
适合
映射节点名
千鸟
区分大小写(小写字母,大写字母,大小写混合)