CAPEC-3:使用领先的“鬼”字符序列旁路输入过滤器 |
描述
一些api将剥夺某些领导人物从一个字符串参数。敌人可以故意引入“鬼”的角色(额外字符,不影响请求在API层)的有效性,使输入通过过滤器,因此对手的输入过程。这发生在有针对性的API将接受输入数据在几个语法形式和等效语义的方式解释它,而过滤器没有考虑全面的语法形式接受有针对性的API。
攻击的可能性
典型的严重性
执行流程
探索
调查申请用户可控的输入:使用一个浏览器,一个自动化工具或通过检查应用程序,敌人记录所有应用程序的入口点。
技术 |
使用搜索工具跟踪和记录所有的链接和分析网页找到入口点。特别注意任何链接,包括参数的URL。 |
使用一个代理工具来记录所有用户输入入口点在手工遍历web应用程序的访问。 |
网站使用浏览器手动探索和分析它是如何构建的。许多浏览器的插件可以促进分析或自动发现。 |
手动检查应用程序找到入口点。 |
实验
探针的入口点来定位漏洞:对手使用入口点聚集在“探索”阶段作为目标列表和注入各种领先的“鬼”字符序列来决定如何应用过滤器。
技术 |
添加额外的字符等常见序列”. ./“应用程序将它们进行过滤。 |
尝试重复特殊字符(?,@ # *等)的用户输入的应用程序过滤出这些。 |
利用
旁路输入过滤:使用什么样的对手了解如何应用过滤器的输入数据,他们绕过过滤器工艺特定的输入数据。这可能导致目录遍历攻击,任意shell命令执行,腐败的文件等。
先决条件
针对API必须忽略主要鬼字符,用于通过过滤器的语义是相同的。 |
技能要求
(级别:中等) 做一个API请求的能力,和知识的“鬼”的角色将不会被过滤的输入验证。这些“鬼”的角色必须以不影响的方式请求将被解释。 |
后果
这个表指定不同的个体与攻击模式相关的后果。范围确定违反了安全属性,而影响了负面的技术影响,如果敌人成功的攻击。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能有高可能性模式将被用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
范围 |
影响 |
可能性 |
保密
访问控制
授权 |
获得特权 |
|
完整性 |
修改数据 |
|
缓解措施
使用一个allowlist而不是denylist输入验证。 |
规范化之前所有的数据验证。 |
采取迭代的方法输入验证(深度防御)。 |
例子,实例
交替与鬼字符编码FTP和Web服务器 一些web和FTP服务器无法检测禁止向上目录遍历如果用户提供的路径名包含额外的字符,如额外的主要点。例如,一个程序,将不允许访问路径名“. . /测试。txt”可能错误地允许访问这个文件如果路径名指定为“…/用法”。这种攻击成功,因为1)输入验证逻辑失败检测triple-dot作为一个目录遍历(因为它不是圆点),2)部分输入的处理决定去掉“额外”点,离开背后的圆点。 使用文件系统API作为目标,下面的字符串都相当于许多程序:
…/ . . / . . /用法 ............ / . . / . . /用法 . . / . . / . . /用法 . . ? ? ? ? ? ? ? ? / . . / . . /用法 . . /用法 正如您可以看到的,有很多方法可以使一个语义上等价的请求。所有这些字符串最终导致请求文件. . /用法。 |
分类法映射
CAPEC映射ATT&CK技术利用一个继承模型简化和减少直接CAPEC / ATT&CK映射。继承的映射表示文本说明父CAPEC有相关ATT&CK映射。注意,ATT&CK企业框架不使用一个继承模型的一部分映射到CAPEC。
引用
[REF-1] g·霍格伦德和g·麦格劳。“利用软件:如何打破代码”。addison - wesley。2004 - 02。 |
内容的历史
提交 |
提交日期 |
提交者 |
组织 |
2014-06-23
(版本2.6) |
CAPEC内容团队 |
manbetx客户端首页 |
|
修改 |
修改日期 |
修饰符 |
组织 |
2015-11-09
(版本2.7) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Attack_Phases |
2015-12-07
(版本2.8) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Attack_Phases |
2017-01-09
(版本2.9) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Attack_Phases |
2017-05-01
(版本2.10) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Attack_Phases |
2017-08-04
(版本2.11) |
CAPEC内容团队 |
manbetx客户端首页 |
Attack_Phases更新,描述总结,有效载荷 |
2018-07-31
(版本2.12) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Attack_Phases Attacker_Skills_or_Knowledge_Required |
2020-07-30
(版本3.3) |
CAPEC内容团队 |
manbetx客户端首页 |
更新的措施之一 |
2021-06-24
(版本3.5) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Related_Weaknesses |
2022-02-22
(版本3.7) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Execution_Flow |
2022-09-29
(版本3.8) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Example_Instances |
|