cwe - 113:不当中和CRLF序列在HTTP头(HTTP请求/响应分裂)
视图定制的信息:
HTTP代理或组件可能包括web服务器、负载平衡器、反向代理,网络缓存代理,应用防火墙,网络浏览器,等等。不管这个角色,他们预计将保持连贯,一致的所有组件的HTTP通信状态。然而,包括意想不到的数据在一个HTTP头允许攻击者指定HTTP消息的整体所呈现的HTTP代理客户端(如web浏览器)或后端HTTP代理(例如,web服务器),是否请求或响应消息的一部分。 当HTTP请求包含意外的CR和低频字,服务器可能响应的输出流被解释为“分裂”流到两个不同的HTTP消息而不是一个。CR回车,也由% 0 d或\ r,低频换行,也由% 0 a或\ n。 除了CR和低频字,其他有效/ RFC兼容的特殊字符和独特的字符编码可以利用,如HT(水平选项卡,也由% 09或\ t)和SP(空间,也给+签名或者% 20)。 这些类型的用户和意想不到的数据在HTTP消息头允许攻击者控制第二个“分裂”消息发起攻击,如服务器端请求伪造,跨站点脚本,缓存中毒攻击。 HTTP响应分裂时可能存在的弱点:
此表显示了弱点和高水平类别相关的这一弱点。这些关系被定义为ChildOf、ParentOf MemberOf,并洞察类似项目可能存在的在较高和较低的抽象级别。此外,关系如PeerOf和CanAlsoBe定义显示类似的弱点,用户可能想要探索。
相关的视图”研究概念”(cwe - 1000)
相关观点“七有害的王国”(cwe - 700)
该清单显示了给定的弱点可以可能的地区出现。这些可能是为特定命名的语言,操作系统,架构、模式、技术、或一个类这样的平台。列出的平台是随着频率的出现疲态实例。
语言 类:不是特定于语言的患病率(待定) 技术 类:基于Web的患病率(待定)
这个表指定不同的个人相关后果的弱点。标识应用程序范围的安全领域侵犯,而影响了负面的技术影响,如果敌人成功利用这个弱点。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能会有高可能性,缺点将被利用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
示例1 下面的代码段读取一个weblog条目的作者的名字,作者,从一个HTTP请求,并设置它的饼干头一个HTTP响应。
(坏的代码)
例如语言:Java
字符串作者= request.getParameter (AUTHOR_PARAM);
… 曲奇饼干= new饼干(“作者”,作者); cookie.setMaxAge (cookieExpiration); response.addCookie(饼干); 假设一个字符串组成的标准字母数字字符,如“简·史密斯”,提交请求的HTTP响应中包括这个饼干可能采取以下形式:
(结果)
HTTP / 1.1 200 OK
… set - cookie:作者=简·史密斯 … 然而,由于cookie的值是由多组用户输入,反应只会维持这种形式提交的值如果AUTHOR_PARAM不包含任何CR和低频字符。如果攻击者提交一个恶意的字符串,如
(攻击代码)
威利黑客\ r \ nHTTP / 1.1 200 OK \ r \ n
HTTP响应将分裂成两个反应下列形式:
(结果)
HTTP / 1.1 200 OK
… set - cookie:作者=威利黑客 HTTP / 1.1 200 OK … 第二个反应是完全由攻击者控制的,可以由任何标题和正文内容。构造任意HTTP响应的能力允许产生各种各样的攻击,包括:
示例2 攻击者可以使单个请求一个脆弱的服务器,将导致服务器创建两个反应,第二个可能被误解为响应不同的请求,可能是一个由另一个用户与服务器共享相同的TCP连接。 Cross-User乱涂可以实现通过说服用户提交恶意请求本身,或远程攻击者的情况下,用户共享一个共同的TCP连接到服务器,如一个共享的代理服务器。
示例3 恶意构造响应可以放大的影响如果缓存,通过一个web缓存使用的多个用户,甚至单个用户的浏览器缓存。 缓存中毒:如果一个共享web缓存响应缓存,如常见的代理服务器,那么所有用户的缓存将继续接收恶意内容,直到清除缓存条目。同样,如果响应是单个用户的浏览器缓存,那么用户将继续收到恶意内容,直到缓存条目净化,尽管本地浏览器实例的用户将受到影响。 示例4 一旦攻击者控制应用程序发送的响应,他们有选择的各种恶意用户提供内容。 跨站点脚本:跨站点脚本是常见的攻击,恶意JavaScript或其他代码包含在响应是在用户的浏览器中执行。 各种基于XSS攻击几乎是无限的,但他们通常包括传输私有数据,如饼干或其他会话信息攻击者,将受害者web内容由攻击者控制,或进行其他恶意用户的机器上的操作的幌子下脆弱的网站。 最常见的和危险的攻击向量对脆弱的应用程序使用JavaScript的用户传输会话和身份验证信息回的攻击者可以完全控制受害者的考虑。 示例5 除了使用脆弱的应用程序向用户发送恶意内容,相同的弱点也可以利用重定向敏感内容由服务器生成的攻击者,而不是预期的用户。 页面劫持:通过提交一个请求,结果在两个反应,预期的响应从服务器和反应生成的攻击,攻击者可以造成一个中间节点,如一个共享的代理服务器,误导反应生成的服务器攻击者而不是用户。 因为请求由攻击者产生两种反应,第一个是解读为对攻击者的请求,而第二个悬而未决。当用户是一个合法的请求通过相同的TCP连接,攻击者的请求已经等待和解读为应对受害人的请求。攻击者发送一个请求到服务器,生成的代理服务器与服务器响应请求用于受害者,从而危及任何敏感信息的头部或身体反应用于受害者。
这MemberOf关系表显示额外CWE类别和视图引用这个弱点作为成员。这些信息通常是有用的在理解一个弱点符合外部信息源的上下文中。
更多的信息是可用的,请选择一个不同的过滤器。
|
使用常见的弱点枚举(CWE)和相关的引用从这个网站的使用条款。CWE赞助的美国国土安全部(DHS)网络和基础设施安全机构(CISA)和管理的国土安全系统工程和发展研究所这是由(HSSEDI)manbetx客户端首页(斜方)。版权©2006 - 2023,斜方公司。manbetx客户端首页CWE、水煤浆、CWRAF, CWE标志是斜方公司的商标。manbetx客户端首页 |