Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

时间:2024-04-02 15:19:30

1.浏览器设置代理

以Google Chrome为例,进行设置。点击右上角如小箭头所示的图标:

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

设置--高级--打开代理设置

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

设置完成后,打开Burp Suite,点击Proxy--options,默认已存在如下图127.0.0.1:8080的监听

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

进入Proxy--Options--设置Intercept is on,即拦截器处于开启状态,如下图

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

此时,在浏览器中输入localhost:8080,如下图箭头所示该选项卡内容尚在加载过程中,一直处于转圈的状态

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

此时,查看Burp Suite

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

若此时点击如上图箭头指示的按钮“Forward”,则此次request被放行。

若此时点击“Drop”,则此次request被抛弃,浏览器将出现如下图页面

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

但是,此时查看百度页面,则出现如下图页面

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

此时在Burp Suite中的Intercept中并未拦截到任何信息

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

此时,可能是因为Burp Suite中的127.0.0.1:8080拦截的仅为http的请求,对于https的请求需要单独在浏览器中设置。

2.安装Burp的CA证书

官网链接:https://portswigger.net/support/installing-burp-suites-ca-certificate-in-your-browser

安装Burp的CA证书只有在您想使用Burp的外部浏览器时才是必需的。如果您只想使用Burp的嵌入式浏览器进行测试,则不需要安装该证书。

默认情况下,当你通过Burp去访问一个HTTPS的网站时,代理为每个主机生成一个TLS证书,由其自己的证书颁发机构(CA)进行证书签名。此CA证书是第一次运行Burp时生成的,并存储在本地。要在访问HTTPS网站上最有效地使用Burp代理,您需要在浏览器中安装Burp的CA证书作为可信根证书。否则,就会出现类似如下图的情况:

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

如果在浏览器中安装了受信任的根证书,则拥有该证书私钥的攻击者可能能够在没有明显检测到的情况下,在您的TLS连接中间进行人为攻击,即使您没有使用拦截代理。为了防止这种情况的发生,Burp为每个安装生成一个唯一的CA证书,并且该证书的私钥存储在您的计算机上特定于用户的位置。如果不受信任的人可以读取您计算机上的本地数据,您可能不希望安装Burp的CA证书。

文档中给出了在不同浏览器和手机移动设备中安装Burp CA证书的手册,本文中关注的是在Chrome中安装Burp CA,选择下图中的Chrome

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

选择Google Chrome浏览器中的如下图按钮

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

设置--管理证书

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

进入如下图页面,点击“导入”按钮

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

进入如下图页面,点击下一步按钮

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

进入如下图页面,选择需要导入的证书文件

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

下面在Burp Suit中查找Burp的CA证书的相关内容,如下图所示:

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

每个安装的Burp都会生成它自己的CA证书,当建立SSL连接时需要使用到。可以将该CA证书导入或者导出,以供其它工具或另一个Burp来使用。点击上图中的“Import / export CA certificate”按钮,进入如下图页面:

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

选择“Certificate in DER format”,然后点击“Next”,进入如下图页面,点击“Select file”按钮选择存储的位置和证书名称

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

此时,证书已成功导出,如下图所示:

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

导出的CA证书文件,如下图所示:

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

下面,我们接着在Google Chrome中将该证书导入

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

点击“下一步”进入如下图页面

 

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

点击“下一步”按钮进入如下图页面

 

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

点击“完成”,弹出如下弹出框,点击“是”

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

提示导入成功

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

重新启动Google Chrome,清空缓存,此时应该可以通过Burp访问任何HTTPS URL,而没有任何安全警告。使用访问百度来做个测试,https://www.baidu.com/

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

此时Burp Suite已经将该https请求拦截到,如下图所示

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

点击“Forward”直接放行

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

此时,在浏览器中,百度页面已成功显示,如下图:

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

若设置为“Intercept is off”再次访问百度

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

此时浏览器中直接显示了百度的页面,且Burp Suite不再对其https请求进行拦截处理如下图所示:

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)

因拦截器被关闭,Burp Suite不会拦截任何信息,感觉上和没有设置代理是一样的,访问其他的https请求,也是直接显示不再拦截,如访问CSDN首页:

Burp Suite的使用(浏览器设置代理+浏览器安装Burp的CA证书)