HTTPS协议是为了数据传输安全的需要,核心的东西是需要CA证书,在配置burp抓https包的时候需要安装证书,以Chrome浏览器为例:
(1)首先设置burp的代理为:

浏览器配置,Chrome浏览器用的插件为switchomega:

即通过该浏览器的数据都会先转发到127.0.0.1:8080上。
(2)配置好代理后,在浏览器上访问:http://burp

选择右上角的CA Certificate下载.der证书
(3)浏览器导入证书,在Chrome浏览器的设置-》高级设置-》https/ssl证书管理中选择受信任的根整本书颁发机构


然后选择导入,选择刚下载的der文件,直到提示导入成功。
疑问:导入的证书找不到????
(4)然后浏览器访问https://baidu.com的时候,仍然不能抓包,甚至于都无法访问,如下图所示:

感谢xx师兄的指导:
疑问:
cookie建立的过程大概是:
(1)服务器向客户端返回的消息中包含了Set-Cookie来表明客户端建立Cookie,HTTPS 连接的服务器会设置secure属性的值为true
(2)服务器端保存的Cookie就会在下次访问https服务器的时候发送到服务器验证
(3)既然客户端这边已经保存了这个Cookie,然后再抓包的时候,客户端的数据首先会转发到Burp代理,Burp代理在此转发到服务器,这个Cookie的值应该没有改变吧?
问题:为啥设置代理后要清理一次cookie我才能访问
一种猜测:
(1)windos下设置ie的代理,http和https是可以分开设置代理的,如果设置了cookie,可能访问的是http的代理
(2)Chrome在设置代理后提示HSTS说明至少浏览器和服务器之间不是一个SSL连接,如果浏览器到服务器端是一个SSL连接就不会提示HSTS错误
(3)清理Cookie后可能走的就是https连接了
(4)浏览器提示HSTS错误,说明此事浏览器到服务端在cookie的Secure属性不通过。
(5)Chrome浏览器的判断比较严格
验证:
IE:
(1)不设置代理访问百度,登录百度账号,关闭
(2)设置代理后,访问首先提示证书有问题,点继续浏览网站,能够继续浏览
Chrome:
(1)不设置代理访问百度,登录百度账号,关闭
(2)设置代理后,提示连接不是私密连接,没法点击继续浏览网站
(3)设置代理,清除Cookie,可以点击继续浏览网站
验证结论:Chrome的判定更为严格一些
(5)然后使用Chrome浏览器访问baidu的https的网站,可以看到能够访问