[WEB安全]给BurpSuite设置非本地的网络代理

[TOC] 在Web渗透测试过程当中,BurpSuite是不可或缺的神器之一。html

BurpSuite的核心是代理Proxy,一般状况下使用BurpSuite的套路是:浏览器设置BurpSuite代理——>访问Web应用程序——>BurpSuite抓包分析。 今天就写一些不同的,给BurpSuit设置非本地的网络代理linux

0x01 通常状况

最通常的情形是针对采用HTTP协议的Web应用程序的渗透测试。这种状况下,直接设置浏览器的代理服务器为BurpSuite便可,默认为127.0.0.1:8080。 浏览器

固然,直接更改浏览器的代理服务器设置比较繁琐,更好的办法是使用浏览器插件,预先设置好代理方案,而后根据实际状况一键切换。Chrome推荐使用Proxy SwitchyOmega插件: 服务器

0x02 移动端流量抓取

有时候,咱们还须要对移动APP进行抓包分析,这时候该怎么办?网络

其实很简单,两步便可解决。post

第一步,在BurpSuite的Proxy Listeners中,选中当前在用的代理,点击左侧的Edit按钮,在弹出的对话框中,将Bind to address选项设置为All interfaces。测试

第二步,手机和PC链接同一Wifi,打开手机Wifi设置,设置HTTP代理服务器为BurpSuite所在的PC的IP地址,端口为BurpSuite的代理端口。 以iPhone为例,其设置以下图所示:网站

固然,若是APP走的是HTTPS通道,仍然须要安装证书才能正常访问,这里安装证书的过程,我没有写上来,网上有不少写得比较好的。ui

0x03 多重代理的情形

在某些网络环境中,访问目标网站须要走代理。好比说,为了访问google.com,google

我已经提早搭配好了一台M国的代理服务器

(若是不清楚怎么搭建代理服务器的话,推荐看一下个人另外一篇博文:linux搭建代理服务器 https://www.cnblogs.com/-mo-/p/11251369.html)

如今我想对google.com进行渗透测试,那么该怎么设置浏览器代理?

这时候不能简单的把浏览器代理设置为BurpSuite,这样虽然能够进行抓包,可是没有了M国代理服务器的帮助,咱们是没法访问google.com的,抓包也就没有意义了。这时候该怎么办?

在这种状况下,咱们必须借助代理链了。

顾名思义,代理链就一系列的代理造成的链条。像刚才那种情形,咱们首先设置浏览器的代理为BurpSuite以便可以抓包;而后为BurpSuite再设置一个上游代理即M国的代理服务器。

这样访问google.com时,请求数据先通过BurpSuite,因而能够进行抓包了;而后再流向M国的代理服务器,最后通过本地服务器到达google.com。

服务器端返回的响应则恰好相反。经过这个BurpSuite ==> M国代理服务器的代理链,咱们就解决了本节开头所描述的问题。

做为一个神器,BurpSuite是具有这个功能的。

在BurpSuite的User options下的Connections页面中,有『Upstream Proxy Servers』和『SOCKS Proxy』这两个配置项,都是跟代理链相关的。接下来逐一进行说明。

3.1 Upstream Proxy Servers

在该设置项中,能够设置多个上游代理服务器规则,知足规则的请求将被发送至相应的代理服务器。只说概念过于无聊,这里就以chaipip.com(一个查询IP地址的网址)为例,进行说明。

为了对chaipip.com进行抓包分析,咱们首先要设置浏览器的代理为BurpSuite,这一点是毫无疑问的。

为了可以经过代理访问chaipip.com,还须要设置BurpSuite的上流代理为(113.121.20.183:9999)(这个上流代理也就是上文所说的那台代理服务器的IP及端口)

点击Upstream Proxy Servers列表框左侧的Add按钮,打开『Edit upstream proxy rule』对话框。

这里一共有8个设置项,通常状况下只需关注前4个:

  • Destination host:这里填入目标网站域名或者IP,支持通配符(*表示0个或者任意个字符,?表示除点号以外的任意一个字符)。在本例中,咱们能够填入*.chaipip.com。

  • Proxy host:填入代理服务器的IP地址,即113.121.20.183。若是为空表示直接链接。

  • Proxy port:填入的代理地址,即9999。

  • Authentication type:这里选择认证类型,因为这是无偿使用的一个代理,无需认证,这是选择None。若是Authentication type为None,则接下来的4项内容无需理会,不然须要根据实际状况设置如下4项内容。

  • Username:用户名。

  • Password:密码。

  • Domain:域。仅用于NTLM认证类型。

  • Domain hostname:域主机名。仅用于NTLM认证类型。

设置内容以下图所示,最后点击OK便可。

这时候,你经过浏览器使用的本地代理选项,会发现chaipip.com所显示你的IP为刚刚设置的代理服务器的IP,而且BurpSuite中也成功地抓取到了相应的请求报文。

你能够同时设置多个Upstream Proxy Servers,在使用过程当中,BurpSuite会按顺序将请求的主机与Destination host中设置的内容进行比较,并将请求内容发送至第一个相匹配的Proxy server。

所以,Proxy Server的顺序很重要,讲究个先来后到!

3.2 SOCKS Proxy

与Upstream Proxy Servers的做用相似,SOCKS Proxy的功能也是将请求内容发送至相应的代理服务器。不一样之处在于,SOCKS Proxy做用于TCP协议层,所以若是设置了该项,那么全部的请求数据都会被发送至SOCKS代理服务器。因此,SOCKS Proxy的设置更简单。一样以避免费的代理服务器为例,先在下方的输入框中依次填入SOCKS代理服务器的IP、端口(若是SOCKS代理服务器须要认证,还须要填写用户名和密码),而后勾选Use SOCKS proxy便可。

须要注意的一点是,若是同时设置了Upstream Proxy Servers和SOCKS Proxy,则根据规则应该发送至上游代理的请求将会经过SOCKS Proxy发送。

0x04 参考连接

https://www.anquanke.com/post/id/85925

相关文章
相关标签/搜索