Burpsuite简单代理配置

本文介绍了如何使用Burpsuite作为代理工具来拦截和分析浏览器(以火狐为例)与服务器之间的通信。首先,设置Burpsuite的默认代理端口为8080,然后在火狐浏览器中配置代理设置,指向该端口。接着,下载并安装Burpsuite的CA证书到本地计算机,并在火狐中导入证书以信任代理。最后,为了方便管理,推荐使用FoxyProxy Standard插件,它可以轻松切换代理设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前情提要:通常情况下,用户通过浏览器浏览网页,是浏览器(客户端)和服务器的一个交互,就是互相发消息的意思吧(姑且这么理解)。那么我们要想分析它们交流了个什么,就需要一个人当个中介(中间人),可以拦截两个人的信息,也可以相互转发。就是我们所说的设置代理,而Burpsuite在这里就充当一个中间人的身份。

1.在Burpsuite上设置代理端口

在这里插入图片描述
在这里插入图片描述

默认代理是本机的8080端口,无特殊需求就不用更改

2.在浏览器上设置代理,这里以火狐浏览器为例在这里插入图片描述

找到火狐浏览器的设置(settings)

在这里插入图片描述

找到类似于这个界面的(翻译过来就是网络设置)然后点击settings

配置代理类型以及IP,端口号(默认配置http就好了)。

3.下载CA证书:访问127.0.0.1:8080

在这里插入图片描述

点击右上角下载证书,下载完成后打开

在这里插入图片描述
在这里插入图片描述

本地用户和本地计算机都可,我选了本地计算机在这里插入图片描述

浏览后选择受信任的根证书颁发机构即可

在这里插入图片描述

无脑下一步完成

4.在火狐浏览器导入证书

在这里插入图片描述

还是在设置里面,可以搜索找到证书机构(certificates),点击view certificates,然后选择导入(import),选择下载的证书,然后都信任,点击确定即可完成

在这里插入图片描述

5.最后的最后,理论来讲这样就行了,可以打开burp开心的使用了,但是有个问题,比如我用得到主要就是火狐浏览器,所以设置代理的话切换多少有点不方便,所以这边推荐个火狐的插件

FoxyProxy Standard–火狐浏览器插件

下载后就和刚才一样添加对应的ip以及端口,然后类型的话http就行了,好处就是可以随意切换

在这里插入图片描述
在这里插入图片描述

### 配置和使用Burp Suite中的代理池 #### 一、配置系统级别的代理设置 为了使所有的流量都能被Burp Suite捕获,在系统的网络设置中找到代理配置选项,输入预发环境代理的地址和端口[^1]。 #### 二、启动并配置Burp Suite作为中间代理 启动Burp Suite后,前往“Proxy”标签页确认其正在监听指定的本地接口与端口(比如`127.0.0.1:8080`)。这一步骤确保了来自其他应用或设备发出的目标向Web资源发起请求时能够经过Burp Suite过滤[^4]。 #### 三、浏览器侧的代理设定 对于希望监控其通信过程的应用程序而言——通常指网页浏览器来说,应当调整它们各自的代理参数使之指向运行着Burp Suite的那个机器上的相应IP及端口号组合(`127.0.0.1:8080`)。这里推荐利用像SwitchyOmega这样的插件辅助完成这项工作以便更便捷地切换不同的上网模式。 #### 四、定义上游代理服务器用于转接至目标主机 进入Burp Suite内的用户选项菜单下的“Upstream Proxy Servers”,在此处添加实际通往外部世界的网关信息即测试服务器所采用的另一层中介服务详情(如`localhost:8001`),从而实现双级转发机制。 然而针对具体的代理池概念及其实践操作: #### 使用自定义脚本创建代理轮询逻辑 由于官方并不直接提供内置的代理池管理特性,因此可以通过编写Python扩展或者BApp来达成目的。下面给出一段简单的基于Python API实现随机选取可用HTTP(S)/SOCKS节点的例子: ```python from burp import IBurpExtender, IHttpListener import random class BurpExtender(IBurpExtender, IHttpListener): def registerExtenderCallbacks(self,callbacks): self._callbacks = callbacks self._helpers = callbacks.getHelpers() proxies_list=["http://proxy1.com:80","socks5://proxy2.net:1080"] # 替换成真实的代理列表 def processHttpMessage(toolFlag,messageIsRequest,messageInfo): if messageIsRequest: selected_proxy=random.choice(proxies_list) request_info=self._helpers.analyzeRequest(messageInfo) headers=request_info.getHeaders() new_headers=[h for h in headers]+["X-Burp-Proxy:"+selected_proxy] body=messageInfo.getRequest()[request_info.getBodyOffset():].tostring() updated_request=self._helpers.buildHttpMessage(new_headers,body) messageInfo.setRequest(updated_request) callbacks.registerHttpListener(processHttpMessage) ``` 上述代码片段展示了如何借助Burp Extensions框架以及Java/Python APIs构建一个简易版的代理选择器,它可以在每次发送请求前动态决定要使用的下游出口位置[^3]。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值