BurpSuite抓取HTTPS

作者:JC2021.07.29 16:15浏览量:326

简介:BurpSuite抓取HTTPS

好久之前写的文章,现在来投搞参加“了不起的开发者”征文活动也不算晚吧

MITM - 中间人攻击(Man-in-the-MiddleAttack,简称“MITM攻击”)


http://oncenote.com/2015/09/16/Security-2-HTTPS2/

我们知道,使用Burp + 浏览器代理,抓取、测试http请求是非常方便的。

而对于https,我们也知道burp默认会自动帮我们做https的中间人劫持,我们只需要在浏览器提示证书错误时,添加例外即可像抓取http一样继续测试。


然而细心的你有没有遇到过这样的https站:不用burp抓的时候页面正常


使用burp抓取后虽然请求过去了,但是页面显示不正常,妨碍我们测试。

倔强的我决定找出其中原因。
我对比了两次不同显示效果的源代码,发现完全相同。


这就奇怪了,同样的页面源代码怎么会显示出不同效果呢。

后来我在firebug中找到了端倪。

我发现在挂了burp代理之后,页面的一些js请求失败,造成了页面显示效果的差异。

造成这种情况的原因是因为,我们在访问当前https页面时浏览器提示我们证书错误,我们直接添加了该域名证书的例外。而当前页面正常返回后,里面又调用了一些其他https域名下的js资源,由于挂着burp代理,浏览器在访问那些js资源时同样会遇到证书错误,但由于是浏览器后台调用,不会再出现添加例外的页面。所以就导致了js资源无法加载。


那么对于以上情况,我们就没有办法了吗?

答案是:有的!

我们可以将burp做https中间人劫持的证书添加到我们浏览器的信任列表里,这样浏览器遇到burp的证书就直接信任了,不需要我们再添加例外了。

火狐浏览器的操作过程如下:

首先在开代理的情况下访问http://burp 下载burp的CA证书

然后在浏览器选项里导入并信任cacert.der证书


最后,我们再挂burp代理访问该https页面就不会有任何问题了。