描述
敌人使用路径操作方法利用足够的输入验证目标获取访问数据,应该不会被普通格式良好的检索请求。这种攻击的典型品种涉及指定路径所需的文件一起dot-dot-slash字符,导致文件访问的API或函数遍历的目录结构和根文件系统。通过替换或修改预期路径信息的访问函数或攻击者所期望的API检索文件。这些攻击包括攻击者提供一个完整路径目标文件或使用控制字符(例如路径分隔符(/或\)和/或点(.))达到所需的目录或文件。
替代条款
攻击的可能性
典型的严重性
的关系
此表显示了其他的攻击模式和高水平类别相关的这种攻击模式。这些关系被定义为ChildOf ParentOf,给类似的项目可能存在的洞察力在较高和较低的抽象级别。此外,关系如光束,PeerOf, CanAlsoBe定义显示类似的攻击模式,用户可能想要探索。
自然 |
类型 |
ID |
的名字 |
ChildOf |
元在CAPEC攻击模式——元级别攻击模式的量化无疑是一个抽象的描述一个特定的方法或技术用于攻击。元攻击模式往往是空虚的一个特定的技术或实现,旨在提供一个高水平的理解方法。元级攻击模式是一个泛化的攻击模式相关的标准水平。元级攻击模式尤其适用于架构和设计水平的威胁建模练习。 |
153年 |
输入数据操作 |
ParentOf |
详细的攻击模式-一个详细级别攻击模式CAPEC提供了一个低水平的细节,通常利用一个特定的技术和针对特定的技术,并表达一个完整的执行流程。详细的攻击模式比元更具体的攻击模式和标准的攻击模式,通常需要一个特定的保护机制来减轻实际攻击。详细的级别攻击模式通常会利用许多不同的标准水平攻击模式链接在一起来完成一个目标。 |
76年 |
操纵网络文件系统调用的输入 |
ParentOf |
详细的攻击模式-一个详细级别攻击模式CAPEC提供了一个低水平的细节,通常利用一个特定的技术和针对特定的技术,并表达一个完整的执行流程。详细的攻击模式比元更具体的攻击模式和标准的攻击模式,通常需要一个特定的保护机制来减轻实际攻击。详细的级别攻击模式通常会利用许多不同的标准水平攻击模式链接在一起来完成一个目标。 |
139年 |
相对路径遍历 |
ParentOf |
详细的攻击模式-一个详细级别攻击模式CAPEC提供了一个低水平的细节,通常利用一个特定的技术和针对特定的技术,并表达一个完整的执行流程。详细的攻击模式比元更具体的攻击模式和标准的攻击模式,通常需要一个特定的保护机制来减轻实际攻击。详细的级别攻击模式通常会利用许多不同的标准水平攻击模式链接在一起来完成一个目标。 |
597年 |
绝对路径遍历 |
CanPrecede |
标准的攻击模式-一个标准的级别CAPEC中攻击模式是集中在一个特定的方法或技术用于攻击。它通常被视为一个单一的完全执行攻击。标准的攻击模式是为了提供足够的细节来理解特定的技术,以及它如何试图完成预期的目标。标准水平的攻击模式是一种特定类型的一个更抽象的元级别的攻击模式。 |
664年 |
服务器端请求伪造 |
此表显示了这种攻击模式的观点属于和顶级类别内的这一观点。
执行流程
探索
指纹识别的操作系统:为了执行一个有效的路径遍历,攻击者需要知道底层的操作系统是什么,这样适当的文件分离器使用。
技术 |
端口映射。识别系统监听端口,并试图确定输入这些端口和协议类型。 |
TCP / IP指纹。攻击者使用各种软件进行连接或部分连接,观察从操作系统的反应。使用这些反应,他们试图猜测实际的操作系统。 |
引发错误信息的错误消息 |
调查应用程序来识别用户可控输入:攻击者的调查目标应用程序来识别所有用户可控文件输入
实验
不同输入,寻找恶意的结果:取决于应用程序被剥削是一个远程或本地攻击者工艺品适当的恶意输入包含目标文件或其他文件系统的路径控制语法被传递给应用程序
利用
操作文件访问的应用程序:黑客可能窃取信息或直接操作文件(删除、复制、冲洗等)
先决条件
攻击者必须能够控制目标的路径请求。 |
目标必须未能充分传入的路径 |
技能要求
(等级:低) 简单的命令行攻击或注入恶意代码的网页。 |
(级别:中等) 定制攻击绕过非应用程序中微不足道的过滤器。 |
所需资源
能够手动操纵路径信息直接通过一个客户端应用程序相对于服务或应用程序或通过代理应用程序。 |
后果
这个表指定不同的个体与攻击模式相关的后果。范围确定违反了安全属性,而影响了负面的技术影响,如果敌人成功的攻击。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能有高可能性模式将被用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
范围 |
影响 |
可能性 |
完整性
保密
可用性 |
执行未经授权的命令 |
|
完整性 |
修改数据 |
|
保密 |
读取数据 |
|
可用性 |
不可靠的执行 |
|
缓解措施
设计:正确配置访问控制。 |
设计:实施最小特权原则。 |
设计:执行程序限制的特权,所以父进程不开放更多的漏洞。确保所有目录,临时目录和文件,内存有限的执行权限防止远程执行。 |
设计:输入验证。假设用户输入是有恶意的。利用严格的类型、字符和编码执行。 |
设计:代理通信主机,所以通信终止代理,消毒前请求转发到服务器主机。 |
设计:与非根用户帐户运行服务器接口和/或使用chroot监狱或其他配置技术限制特权,即使攻击者可以有限制地访问命令。 |
实现:主机完整性监测关键文件,目录,和过程。主机完整性监控的目标是要注意安全问题时发生这事件反应和其他司法活动可以开始了。 |
实现:对所有远程执行输入验证内容,包括远程和用户生成内容。 |
实现:执行测试,如pen-testing和漏洞扫描识别目录,程序,和接口,直接访问的可执行文件。 |
实现:使用间接引用,而不是实际的文件名。 |
实现:使用可能的文件访问权限在开发和部署web应用程序。 |
实现:验证用户输入只接受已知的好。确保所有内容交付给客户是消毒与一个可接受的内容规范——使用一个allowlist方法。 |
例子,实例
的一个例子使用路径遍历攻击一些资源在web服务器是使用一个标准的HTTP请求
http://example/../../../../../etc/passwd 从攻击者的角度来看,这可能是足以获得不好的密码文件保护系统。如果攻击者可以列出目录关键资源的只读访问保护系统是不够的。 |
分类法映射
引用
[REF-1] g·霍格伦德和g·麦格劳。“利用软件:如何打破代码”。addison - wesley。2004 - 02。 |
|
|
内容的历史
提交 |
提交日期 |
提交者 |
组织 |
2014-06-23
(版本2.6) |
CAPEC内容团队 |
manbetx客户端首页 |
|
修改 |
修改日期 |
修饰符 |
组织 |
2017-01-09
(版本2.9) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Activation_Zone、Alternate_Terms Architectural_Paradigms、Attack_Motivation-Consequences Attacker_Skills_or_Knowledge_Required, CIA_Impact, Examples-Instances,框架,Injection_Vector,语言,有效载荷,Payload_Activation_Impact,平台,目的,引用,Related_Attack_Patterns, Related_Vulnerabilities, Related_Weaknesses, Relevant_Security_Requirements, Solutions_and_Mitigations, Technical_Context, Typical_Likelihood_of_Exploit Typical_Severity |
2020-07-30
(版本3.3) |
CAPEC内容团队 |
manbetx客户端首页 |
更新的措施之一 |
2020-12-17
(版本3.4) |
CAPEC内容团队 |
manbetx客户端首页 |
更新引用,Taxonomy_Mappings |
2021-06-24
(版本3.5) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Related_Attack_Patterns |
2021-10-21
(版本3.6) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Execution_Flow |
2022-09-29
(版本3.8) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Example_Instances |
|