crlf注入漏洞 java解决办法_HTTP响应头拆分/CRLF注入详解

本文深入探讨了HTTP响应头拆分漏洞,这是一种允许攻击者篡改Web缓存、窃取敏感信息的新型攻击手段。攻击者通过操纵HTTP响应头,实现跨站脚本攻击、Web缓存中毒等多种恶意行为。文中详细阐述了攻击原理、实现方式,特别是Web缓存中毒的三种方法,并举例说明了攻击技术的应用。
摘要由CSDN通过智能技术生成

HTTP响应头拆分/CRLF注入详解

一:前言

HTTP响应头拆分漏洞 是一种新型的web攻击方案,它从新产生了很多保险漏洞包括:web缓存沾染、用户信息涂改、窃取敏感用户页面、跨站脚本漏洞。这项攻击计划,包括其衍生的一系列技术产生,是因为web利用程序没有对用户的提交进行严格过滤,导致非法用户可以提交一些歹意字符,更具体来说,是对用户输入的CR 和LF字符不进行严厉的过滤。

HTTP响应头拆分漏洞 及其相干的攻击手段可以在良多的web环境中实现,包含微软的asp、asp.net,IBM WebSphere,BEA WebLogic,Jakarta Tomcat,MacromediaoldFusion/MX,Sun MicrosystemsSunONE;风行的Squid和Apache服务器;流行的微软IE6.0阅读器。我不是在吹牛,许多大的站点都存在这样的破绽,这让我大吃一惊。

这篇文章将描写攻打的概念并且供给一些应用实例剖析。

二:先容

在HTTP响应头拆分攻击中详细关涉到三个对象:

漏洞服务器:即存在漏洞的服务器。

攻击工具:比如浏览器,相似IE6.0。

攻击者:动员攻击的人。

HTTP响应头拆分攻击实质是:攻击者可以发送一个或多少个HTTP指令迫使漏洞服务器发生一个攻击者构想好的输出。它可以让服务器误把几条HTTP请求看成一次实现的HTTP请求来说明。第一条请求也许攻击者局部把持着一部门,但这并不是危险的;危险的是,攻击者完整节制着第二条HTTP请求,即从HTTP状态行始终到HTTP请求的尾部。假如这样可行,攻击者就会发送多个请求指令到目标体系:第一条使得服务器完全接收两个HTTP响应,第二条响应通常是在服务器上请求一些非法资源,而服务器将会主动匹配到第二条响应,输出攻击者想要请求的资源,从而到达攻击者的目标。

通过这个思路,我们可以构造出不拘一格的攻击,具体来说:

1跨站脚本攻击XSS:这是一个无比一般和老式的漏洞,它可以让用户通过运行了一段javascript或者html代码后,可以截取该用户的cookie和session。但是到当初,通过一些重定向脚本发动一次XSS攻击是很难题的,尤其是当用户使用最新补丁的IE浏览器的时候,除非位置头是完全掌握的。但是当联合HTTP响应头攻击确是可以十分简略实现,即使只是部分控制地位头。

2web缓存中毒咱们称之为web损耗:这是一个新的攻击技巧,攻击者逼迫服务器高速缓存中记载了第二次HTTP要求,而服务器中的高速缓存记载的第二次恳求是经由攻击者精心结构的。这将胜利的对目标站点进行损耗,当其余人拜访目的站点时,他们仅仅读取了高速缓存里的数据,造成站点被 黑 的假象。当然,除了站点损耗之外,攻击者也能够偷取用户的session跟cookie。

3 通过对用户的攻击:这是第二种方式的一个特殊情形。它对单个用户的诱骗、对服务器单个页面的损耗,和临时的磨损,也可以偷取到特定用户的session和cookie。

4 劫持详细用户的页面敏感信息:攻击者诈骗服务器,并获得敏感用户的权限,并进入其用户的状况,访问到一些机密信息。

5 浏览器高速缓存中毒:这也是一项最新的攻击方式,它这和跨站脚本攻击方式有点类似,独一的差异就是攻击者强制浏览器高速缓存中记录一个长和连续的磨损的网页,直到浏览器的高速缓存已经干净。

对这些我将在后面逐一作介绍。

三:web高速缓存中毒的实现

由于这是一个新兴的技术,所以这个段落我将对web高速缓存中毒的实现做进一步的分析。

1 毒害反向|代|理|泛亚娱乐|http://yuan01.bc88.info/fei/高速缓存:即电子涂写。在这种方法中,袭击者将直接面向网站。当然最厉害的伎俩是磨损该网站的首页,这样所有客户端将都受到影响,这也是最美丽的手腕,然而这样很轻易被发明。

2毒害一台旁边高速缓存服务器:曲折。这种方式被发现是很艰苦的,中间缓存服务器是有很多的,而且漏洞服务器不可能占领所有的中间缓存服务器,这些服务器很有可能不是在统一个处所,好比我们攻击台湾的站点,我们很有可能会先攻击一台位于美国的中间缓存服务器,即便被考察到了也是要良久的,兴许我们早就有时光把所有的信息给肃清。

3毒害浏览器高速缓存:切中时弊。攻击者很有可能会瞄准到一个特别用户,例如从一个很富有的用户那里偷取到证书,这样的攻击将会变得很奇特而且很难实行。由于,它不同于跨站脚本攻击,而且被毒害的页面要始终坚持在高速缓存中以等候受害者即你所瞄准的用户来装载,有时候受害者素来都不会登陆到那个页面,或者是受害者浏览器制止了JAVA脚本的履行等等,都会造成无奈成功。

四:HTTP响应头漏洞攻击基础泛亚娱乐技术:yuan01.bc88.info/fei。

HTTP响应头攻击把代码嵌入到用户信息中并放在HTTP头部,也产生在把用户信息和代码嵌入到重定向到的URL中,或者把脚本嵌入到cookie值或者name里。在第一条响应中,重定向的URL是HTTP响应头的一部分,第二条响应是断定cookie,cookie中的name/value是响应头中setcookie的一部分。

因为攻击的特殊性,在实现攻击前,我们先来懂得一下这两个字符的编码:

CR 0d \r

LF 0a \n

比方,我们斟酌以下jsp页面(/isno.jsp),内容如下:

response.sendRedirect( /isno.jsplang +request.getParameter( lang ));

如果使得parmeter langivory,程序将会重定向到/isno.jsplangivory。通常一个尺度的HTTP请求会如下:

HTTP/1.1 302 Moved Temporarily\r\n

Date: Wed, 1 Mar 2005 12:53:28 GMT\r\n

Location: 192.168.0.1/isno.jsplangivory\r\n

Server: WebLogic XMLX Module 8.1 SP1 Fri Jun 20 23:06:40 PDT 2003 271009 with\r\n

ContentType: text/html\r\n

SetCookie: JSESSIONID1pMRZOiOQzZiE6Y6iivsREg82pq9Bo1ape7h4YoHZ62RXjApqwBE!

1251019693; path/\r\n

Connection: Close\r\n

html head title 302 Moved Temporarily /title /head \r\n

body bgcolor #FFFFFF \r\n

阅读(3756) | 评论(0) | 转发(0) |

0

上一篇:没有了

下一篇:没有了

CRLF注入漏洞是一种常见的网络安全漏洞,它在代码中未对输入进行正确的过滤和验证,导致攻击者可以利用换行符(CRLF:Carriage Return Line Feed)来执行恶意代码或实施其他攻击。 要复现CRLF注入漏洞,首先需要找到存在漏洞的应用程序。这些应用程序通常会接收用户的输入,并在服务器上生成响应,而在生成响应时未能很好地处理输入的换行符。 我们可以通过使用一个简单的示例来演示CRLF注入漏洞的复现。假设我们有一个简单的表单,允许用户提交评论,并在页面上显示评论内容,我们可以通过评论框中的输入来复现漏洞。 首先,我们在评论框中输入以下内容: ``` 本次评论测试漏洞%0D%0AContent-Length: 0%0D%0A%0D%0AHTTP/1.1 200 OK%0D%0AContent-Type: text/html%0D%0A%0D%0A<html><body>Hacked!</body></html> ``` 在上述输入中,`%0D%0A`表示换行符。我们在注入的内容中使用了换行符,然后添加了一些伪造的HTTP响应,包括`Content-Length: 0`和`HTTP/1.1 200 OK`。最后,我们添加了一个简单的HTML页面。 当我们提交评论后,应用程序未能正确处理换行符,导致我们的注入成功。服务器在生成响应时,将我们注入的内容也作为响应部分显示出来。 这样,我们就成功利用CRLF注入漏洞,并在生成的页面上显示了我们的内容。 为了防止CRLF注入漏洞,开发者应该对用户的输入进行正确的过滤和验证。在处理用户的输入时,应该移除或转义包含换行符的内容,以防止攻击者注入恶意内容并执行攻击。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值