描述
敌人操纵和注入恶意内容形式的秘密未经授权的HTTP响应,从脆弱到一个单独的HTTP响应或妥协后端HTTP代理(例如,服务器)。
看到CanPrecede关系可能的后果。
扩展描述
恶意操纵HTTP响应,敌人可以添加重复的头字段HTTP代理解释属于单独的反应。
合并后的HTTP响应最终被解析或解释为两个或两个以上的目标客户的HTTP响应HTTP代理。这允许恶意HTTP响应绕过安全控制。这是滥用诠释和解析执行的差异在不同的中介HTTP代理(例如,负载均衡器,反向代理,网络缓存代理,应用防火墙,等等)或者客户端HTTP代理(例如web浏览器)的路径恶意的HTTP响应。
这种攻击通常涉及滥用的HTTP头信息:内容长度和传输编码。这些弊端在RFC 2616 # 4.4.3节讨论# 4.2和相关分类和优先级的头。(REF-38]
另外这种攻击可以通过修改和/或执行起毛的参数组合HTTP消息的请求行。
这种攻击通常是由于使用过时的或不相容的HTTP协议版本在HTTP代理。
这不同于CAPEC-33HTTP请求走私,这通常是一个试图妥协后端HTTP代理通过HTTP请求消息。HTTP响应走私是一个试图妥协客户端代理(例如web浏览器)。
HTTP分裂(capec - 105和CAPEC-34)不同于HTTP走私因为在实现异步请求,HTTP分裂需要嵌入/注射任意的HTML标题和内容通过用户输入浏览器cookie或Ajax web浏览器像XMLHttpRequest对象参数。
替代条款
术语:HTTP Desync 修改/操作的HTTP消息头,请求行和身体参数破坏和干涉的诠释和解析HTTP消息长度/边界连续HTTP消息通过在HTTP链或HTTP代理的网络路径。
攻击的可能性
典型的严重性
的关系
此表显示了其他的攻击模式和高水平类别相关的这种攻击模式。这些关系被定义为ChildOf ParentOf,给类似的项目可能存在的洞察力在较高和较低的抽象级别。此外,关系如光束,PeerOf, CanAlsoBe定义显示类似的攻击模式,用户可能想要探索。
自然 |
类型 |
ID |
的名字 |
ChildOf |
标准的攻击模式-一个标准的级别CAPEC中攻击模式是集中在一个特定的方法或技术用于攻击。它通常被视为一个单一的完全执行攻击。标准的攻击模式是为了提供足够的细节来理解特定的技术,以及它如何试图完成预期的目标。标准水平的攻击模式是一种特定类型的一个更抽象的元级别的攻击模式。 |
220年 |
客户端-服务器协议操作 |
PeerOf |
详细的攻击模式-一个详细级别攻击模式CAPEC提供了一个低水平的细节,通常利用一个特定的技术和针对特定的技术,并表达一个完整的执行流程。详细的攻击模式比元更具体的攻击模式和标准的攻击模式,通常需要一个特定的保护机制来减轻实际攻击。详细的级别攻击模式通常会利用许多不同的标准水平攻击模式链接在一起来完成一个目标。 |
33 |
HTTP请求走私 |
CanPrecede |
标准的攻击模式-一个标准的级别CAPEC中攻击模式是集中在一个特定的方法或技术用于攻击。它通常被视为一个单一的完全执行攻击。标准的攻击模式是为了提供足够的细节来理解特定的技术,以及它如何试图完成预期的目标。标准水平的攻击模式是一种特定类型的一个更抽象的元级别的攻击模式。 |
63年 |
跨站点脚本(XSS) |
CanPrecede |
元在CAPEC攻击模式——元级别攻击模式的量化无疑是一个抽象的描述一个特定的方法或技术用于攻击。元攻击模式往往是空虚的一个特定的技术或实现,旨在提供一个高水平的理解方法。元级攻击模式是一个泛化的攻击模式相关的标准水平。元级攻击模式尤其适用于架构和设计水平的威胁建模练习。 |
115年 |
认证绕过 |
CanPrecede |
标准的攻击模式-一个标准的级别CAPEC中攻击模式是集中在一个特定的方法或技术用于攻击。它通常被视为一个单一的完全执行攻击。标准的攻击模式是为了提供足够的细节来理解特定的技术,以及它如何试图完成预期的目标。标准水平的攻击模式是一种特定类型的一个更抽象的元级别的攻击模式。 |
141年 |
缓存中毒 |
CanPrecede |
元在CAPEC攻击模式——元级别攻击模式的量化无疑是一个抽象的描述一个特定的方法或技术用于攻击。元攻击模式往往是空虚的一个特定的技术或实现,旨在提供一个高水平的理解方法。元级攻击模式是一个泛化的攻击模式相关的标准水平。元级攻击模式尤其适用于架构和设计水平的威胁建模练习。 |
148年 |
内容欺骗 |
CanPrecede |
元在CAPEC攻击模式——元级别攻击模式的量化无疑是一个抽象的描述一个特定的方法或技术用于攻击。元攻击模式往往是空虚的一个特定的技术或实现,旨在提供一个高水平的理解方法。元级攻击模式是一个泛化的攻击模式相关的标准水平。元级攻击模式尤其适用于架构和设计水平的威胁建模练习。 |
154年 |
资源位置欺骗 |
CanPrecede |
标准的攻击模式-一个标准的级别CAPEC中攻击模式是集中在一个特定的方法或技术用于攻击。它通常被视为一个单一的完全执行攻击。标准的攻击模式是为了提供足够的细节来理解特定的技术,以及它如何试图完成预期的目标。标准水平的攻击模式是一种特定类型的一个更抽象的元级别的攻击模式。 |
593年 |
会话劫持 |
此表显示了这种攻击模式的观点属于和顶级类别内的这一观点。
执行流程
探索
调查网络来识别目标:对手执行网络侦察监视相关流量识别的网络路径和解析HTTP消息的目标识别潜在目标。
技术 |
扫描网络指纹HTTP基础设施和监控HTTP流量识别HTTP网络路径工具等网络协议分析仪。 |
实验
在目标识别漏洞HTTP基础设施和技术:对手发送各种良性/模棱两可的HTTP请求来观察响应HTTP基础设施目标以确定差异/差异解释的HTTP请求和解析通过检查支持HTTP协议版本,消息大小和HTTP头。
导致微分HTTP响应HTTP响应试验确定漏洞:敌人将恶意构造的HTTP请求发送给后端HTTP基础设施将对手数据注入HTTP响应(用于中介和/或前端客户机/受害者HTTP代理与后端HTTP通信基础设施)为目的的干扰HTTP响应的解析。恶意的HTTP请求的预期结果和随后的对手注入和操纵的HTTP响应将观察到确认的适用性识别漏洞在对手的进攻计划。
技术 |
继续监控HTTP流量。 |
注入额外的HTTP头利用HTTP头的各种组合在一个HTTP消息如:内容长度和传输编码(CL, TE),传输编码&内容长度(TE; CL)或双传输编码(TE; TE),因此,额外的嵌入式消息或数据在原始消息的主体是未加工的,作为后续消息的一部分目标HTTP代理。 从这些HTTP头组合敌人所观察到的任何时间延迟(通常在HTTP 404错误响应的形式)或任何其他意想不到的后果。
- CL, TE和TE; CL HTTP头的组合,第一个HTTP代理,在HTTP消息路径接收HTTP消息,优先或只处理一个头而不是其他,而第二个/最后一个HTTP代理进程相反的头允许嵌入式HTTP消息被忽略和走私到预定目标HTTP代理。
- TE, TE HTTP头组合,在HTTP消息路径过程中所有HTTP代理传输编码头,然而,对手困惑的传输编码的头,不坚持严格的协议规范,可能会导致它被指定的未加工/忽略HTTP代理,因此允许走私嵌入式HTTP消息。有关详细信息,请参阅措施之一。
|
构建一个非常大的HTTP消息通过各种数据的多个内容长度头长度,还有可能造成后续消息中介被忽略的HTTP代理(例如,防火墙)和/或最终解析分别由目标HTTP代理。 注意,大多数现代HTTP基础设施拒绝内容长度与多个HTTP消息头。 |
使用一个工具监控HTTP流量如网络协议分析仪。 |
利用
执行HTTP响应走私攻击:使用知识发现在上面的实验部分中,走私消息导致的一个后果。
先决条件
脆弱或破坏服务器或域/网站能够让对手插入/注入恶意的内容将出现在目标HTTP代理服务器的响应(例如,代理和用户的web浏览器)。 |
不同的方式两个HTTP代理解析和解释HTTP响应及其标题。 |
HTTP代理运行在HTTP / 1.1,允许维持模式,管线式查询,和分块查询和响应。 |
技能要求
(级别:中等) HTTP协议的详细知识:请求和响应消息的结构和使用特定的header。 |
(级别:中等) 具体的详细知识HTTP代理接收、发送、过程,解释,和解析各种HTTP消息和标题。 |
(级别:中等) 拥有知识的确切细节差异几个有针对性的HTTP代理在HTTP消息的路径解析消息结构和个人头。 |
所需资源
工具能够监控HTTP消息,制作恶意HTTP消息和/或注入恶意内容HTTP消息。 |
指标
不同的反应由两个代理处理。这需要仔细监测或能力的日志分析工具。 |
后果
这个表指定不同的个体与攻击模式相关的后果。范围确定违反了安全属性,而影响了负面的技术影响,如果敌人成功的攻击。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能有高可能性模式将被用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
范围 |
影响 |
可能性 |
保密
完整性
可用性 |
执行未经授权的命令 |
|
保密
访问控制
授权 |
获得特权 |
|
完整性 |
修改数据 |
|
缓解措施
设计:评估HTTP代理之前部署差异解析/解释。 |
配置:前端HTTP代理通知模棱两可的请求。 |
配置:后端HTTP代理拒绝模棱两可的请求并关闭网络连接。 |
配置:禁用后端连接的重用。 |
配置:使用HTTP / 2的后端连接。 |
配置:使用相同的web服务器软件的前端和后端服务器。 |
实现:使用一个Web应用程序防火墙(WAF),内置缓解检测异常请求/响应。 |
配置:优先传输编码标题/内容长度,只要包含HTTP消息。 |
配置:不允许HTTP消息传输编码和内容长度内容长度或双标题。 |
配置:禁止/无效的传输编码标头用于模糊畸形,如:
- 头没有空间之前“分块”的价值
- 头用额外的空间
- 头开始尾随字符
- 头文件提供一个值“块”而不是“分块”(服务器正常化分块编码)
- 头与多个空间之前“分块”的价值
- 头用引用值(无论是单引号或双报价)
- 头与CRLF字符之前“分块”的价值
- 值和无效字符
|
配置:安装最新的供应商安全补丁可用中介和后端HTTP基础设施(即代理和web服务器) |
配置:确保HTTP基础设施在链或网络路径利用严格统一的解析过程。 |
实现:利用中介HTTP基础设施能够过滤和/或清除用户输入。 |
例子,实例
当使用暗潮,基于java的web服务器在Red Hat的Jboss企业应用平台7.0版本,代码负责解析HTTP请求允许无效字符,可以允许数据注入到HTTP响应从暗潮在串联与代理客户使用时;允许网页缓存中毒、XSS和敏感信息的机密性侵犯其他HTTP请求发送到暗潮。参见:cve - 2017 - 2666 |
Mozilla Firefox和雷鸟1.5.04之前,不同的代理服务器,解释不同的HTTP响应如果HTTP响应头包括标题名称和结肠之间的空间或通过代理发送如果HTTP 1.1头配置HTTP 1.0,允许HTTP走私的脆弱性。参见:cve - 2006 - 2786 |
笔记
的关系
HTTP走私是一个进化之前的HTTP分裂技术矫正通常反对。
术语
HTTP分裂——“强迫行为(HTTP)消息的发送方发出的数据流组成的更多消息发送者的内涵。发送的消息是100%有效的,符合RFC的“ ref - 117]。
术语
HTTP走私——“强迫行为(HTTP)消息的发送方发出的数据流可以解析为一组不同的消息(即脱臼消息边界)比发送者的意图。这是通过迫使发送方发出的非标准消息,可以解释的方法不止一种,“( ref - 117]。
分类法映射
引用
内容的历史
提交 |
提交日期 |
提交者 |
组织 |
2014-06-23
(版本2.6) |
CAPEC内容团队 |
manbetx客户端首页 |
|
修改 |
修改日期 |
修饰符 |
组织 |
2017-08-04
(版本2.11) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Related_Attack_Patterns Resources_Required |
2018-07-31
(版本2.12) |
CAPEC内容团队 |
manbetx客户端首页 |
更新的引用 |
2020-12-17
(版本3.4) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Taxonomy_Mappings |
2021-10-21
(版本3.6) |
CAPEC内容团队 |
manbetx客户端首页 |
更新@Status Alternate_Terms,后果、描述Example_Instances, Execution_Flow, Extended_Description,指标,Likelihood_Of_Attack,缓解措施,指出,先决条件,引用,Related_Attack_Patterns, Resources_Required, Skills_Required Typical_Severity |
2022-09-29
(版本3.8) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Alternate_Terms、Extended_Description Related_Weaknesses |
|