描述
这种攻击的目标削减的编码字符。敌人会设法利用常见的滤波问题相关的使用斜杠字符来获得目标主机上的资源。Directory-driven系统,如文件系统和数据库,通常使用斜杠字符表示遍历目录或其他容器组件之间。黑暗的历史原因,电脑(,因此,微软OSs)选择使用一个反斜杠,而UNIX世界通常使用正斜杠。精神分裂症的结果是许多MS-based系统需要了解这两种形式的削减。这就给了对手很多机会发现和滥用一些常见的滤波问题。这种模式的目标是发现服务器软件,只有过滤器适用于一个版本,而不是其他。
攻击的可能性
典型的严重性
执行流程
探索
调查申请用户可控的输入:使用一个浏览器,一个自动化工具或通过检查应用程序,敌人记录所有应用程序的入口点。
技术 |
使用搜索工具跟踪和记录所有的链接和分析网页找到入口点。特别注意任何链接,包括参数的URL。 |
使用一个代理工具来记录所有用户输入入口点在手工遍历web应用程序的访问。 |
网站使用浏览器手动探索和分析它是如何构建的。许多浏览器的插件可以促进分析或自动发现。 |
手动检查应用程序找到入口点。 |
实验
探针的入口点来定位漏洞:对手使用入口点聚集在“探索”阶段的目标列表,查找用户输入的领域是用于访问目标主机上的资源。削减的对手尝试不同编码字符旁路输入过滤器。
技术 |
尝试反斜杠和斜杠字符 |
尝试不同的编码等斜杠字符% 5度 |
利用
遍历应用目录:一旦对手决定绕过过滤器过滤掉斜杠字符,他们将操纵用户输入包括斜杠来遍历目录和不打算供用户访问资源。
先决条件
应用程序服务器接受路径来定位资源。 |
应用服务器做足够的输入数据验证用户所请求的资源路径。 |
对资源的访问没有设置正确。 |
技能要求
(等级:低) 敌人可以变化的斜杠字符。 |
(级别:中等) 敌人可以使用更复杂的工具或脚本扫描过滤问题的网站,找到一个路径。 |
指标
如果第一个路径解码过程留下了一些无效或denylisted字符,这可能是一个信号,表明该请求是恶意的。 |
流量过滤与id(或代理)可以检测请求可疑的url。id可能使用基于签名的识别揭示这种基于URL的攻击。 |
敌人可以使用fuzzer为了调查一个utf - 8编码漏洞。fuzzer应该生成可疑的网络活动。 |
后果
这个表指定不同的个体与攻击模式相关的后果。范围确定违反了安全属性,而影响了负面的技术影响,如果敌人成功的攻击。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能有高可能性模式将被用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
范围 |
影响 |
可能性 |
保密 |
读取数据 |
|
保密
完整性
可用性 |
执行未经授权的命令 |
|
保密
访问控制
授权 |
获得特权 |
|
缓解措施
任何应该进行安全检查后,数据被解码和验证为正确的数据格式。不重复解码过程,如果坏字符解码过程后,把数据当作可疑,验证过程失败。参考rfc安全地解码URL。 |
当客户端输入需要从网络形式,避免使用“GET”方法来提交数据,方法使表单数据附加到URL和很容易操纵。相反,尽量使用“POST方法。 |
有工具扫描等有效的URL的HTTP请求到服务器URLScan禁止从微软(http://www.microsoft.com/technet/security/tools/urlscan.mspx) |
意识到威胁的替代方法的数据编码和模糊技术,如IP地址编码。(见相关指南部分) |
测试你的路径对恶意输入解码过程。 |
在遍历路径的情况下,使用最小特权原则在确定文件系统访问权限。不允许用户访问目录/文件,他们不应该访问。 |
假设所有的输入是恶意的。创建一个定义所有有效allowlist输入到应用程序基于需求规格说明书。输入不匹配allowlist不应被允许进入系统。 |
例子,实例
攻击的例子:斜杠在替代编码 这两个请求在大多数Web服务器上是等价的:
http://target服务器/ some_directory \ \ . . \…\ winnt 相当于
http://target服务器/ some_directory / . . / . . / . . / winnt 多个编码转换问题也可以利用各种斜杠在url编码实例化,utf - 8,或者Unicode。考虑到字符串
http://target服务器/ some_directory \…% 5 c…% 5 c . . \ winnt 在% 5 c等于\字符。 |
分类法映射
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客户端首页 |
|
修改 |
修改日期 |
修饰符 |
组织 |
2017-01-09
(版本2.9) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Related_Attack_Patterns |
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 Skills_Required指标 |
2022-09-29
(版本3.8) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Example_Instances |
|