【第7周】排查引起Burp抓包出错的一个小问题

admin 2021年8月2日19:58:44评论1,236 views字数 1219阅读4分3秒阅读模式

在渗透过程中,Burp抓包出现问题是一件特别头疼的事。可能是证书的原因,可能是端口被占用的问题,甚至还有一些无法解释的玄学问题。很影响我们渗透的心情。 本周给大家分享一个会引起Burp抓包出错的情况,以及如何排查解决它!



 0x01 

实际场景



本周接到了一个渗透测试公司官网的任务。我如常打开Burp,挂上浏览器代理,开撸。然而发现无法访问,显示了Burp的一个错误Software caused connection abort: recv failed,但是其他网站是可以正常访问的。

【第7周】排查引起Burp抓包出错的一个小问题




 0x02 

排查原因



1. 代理功能无法正常工作?


设置代理的情况下,其他网站都是可以访问,说明Burp的代理功能是正常工作的。


2. 公司网络限制?


刚开始连接的是公司内网,我在想难道网络管理员检查出我的代理到burp的流量?(虽然知道可能性不大)于是换成手机热点也不行,挂代理也不行。看来不是网络限制问题。


3. Burp发送的不是浏览器原始数据包?


不设置代理,访问公司官网首页,然后使用Wireshark抓住浏览器的原始数据包。


然后再设置代理,刷新首页,Burp抓包。最后将这两个包的内容进行对比,发有以下不同。

【第7周】排查引起Burp抓包出错的一个小问题

说明Burp偷偷把HTTP头Connection的值由keep-alive,改为了close


于是我在Burp的代理功能(Proxy)的设置(Options)中发现了如下选项。果断去掉选中状态。

【第7周】排查引起Burp抓包出错的一个小问题

然后官网就可以在代理模式下打开了。


后来思考了下,网站Web服务器应该是配置了Keep-Alive开启,而Burp在获取到浏览器的请求包后擅自修改掉了Connection头的值close,导致服务器没有发送返回包到客户端,最终引起Burp抓包报错。



 0x03 

思考原因



虽然问题解决了,不过还是有点好奇,Burp为何偷偷将原始数据包HTTP头Connection的值由keep-alive,改为了close


去Burp官网翻了下文档,对这个选项描述得很简单,还是一头雾水。

【第7周】排查引起Burp抓包出错的一个小问题

不过Burp Intruder模块中也有这个选项,官方文档解释得相对详细点。

【第7周】排查引起Burp抓包出错的一个小问题

意思如下:

Set Connection:close(设置连接:关闭) - 此选项使Intruder(入侵者)添加或更新连接头的值为“close(关闭)” 。在某些情况下(当服务器本身并不返回一个有效的Content-LengthTransfer-Encoding头),这个选项可以让攻击更快速地执行。



 0x04 

参考文章



  • https://portswigger.net/burp/documentation/desktop/tools/proxy/options

  • https://portswigger.net/burp/documentation/desktop/tools/intruder/options#attack-request-headers





本文始发于微信公众号(回忆飘如雪):【第7周】排查引起Burp抓包出错的一个小问题

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年8月2日19:58:44
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   【第7周】排查引起Burp抓包出错的一个小问题http://cn-sec.com/archives/346011.html

发表评论

匿名网友 填写信息