Burp与小程序梦中情缘

前言

在日常渗透工作中,有时需要对微信小程序进行抓包渗透,通过抓包,我们可以捕获小程序与服务器之间的通信数据,分析这些数据可以帮助我们发现潜在的安全漏洞,本文通过讲述三个方法在PC端来对小程序抓包渗透

文章目录

  • 一、Burp直接抓包
    • [1. 证书安装](#1. 证书安装)
      • [1.1 证书下载](#1.1 证书下载)
      • [1.2 证书导入](#1.2 证书导入)
    • [2. 配置代理](#2. 配置代理)
    • [3. 查看抓包效果](#3. 查看抓包效果)
  • 二、Burp与ProxyPin联合抓包
    • [1. ProxyPin介绍](#1. ProxyPin介绍)
    • [2. Burp配置代理](#2. Burp配置代理)
    • [3. ProxyPin配置](#3. ProxyPin配置)
      • [3.1 安装SSL证书到本机](#3.1 安装SSL证书到本机)
      • [3.2 设置代理](#3.2 设置代理)
      • [3.3 配置外部代理](#3.3 配置外部代理)
    • [4. 查看抓包效果](#4. 查看抓包效果)
  • 三、Burp与Proxifier联合抓包
    • [1. Proxifier介绍](#1. Proxifier介绍)
    • [2. Proxifier配置](#2. Proxifier配置)
      • [2.1 启用http服务器](#2.1 启用http服务器)
      • [2.2 配置代理服务器](#2.2 配置代理服务器)
      • [2.3 配置代理规则](#2.3 配置代理规则)
    • [3. 查看抓包效果](#3. 查看抓包效果)

一、Burp直接抓包

1. 证书安装

1.1 证书下载

首先Burp配置好代理监听器

浏览器访问代理监听器地址,点击CA Certificate导出证书,注意要把证书的后缀der手动改成cer

1.2 证书导入

接着导入证书,从浏览器导入证书也可以,从系统导入证书也可以,反正都是到导入到本地系统,网上有很多浏览器导入方式,我这里采用系统导入的方式

打开系统设置找到Internet选项,然后选择内容,点击证书

选择受信任的根证书颁发机构,点击导入

然后把刚才的cer证书导入安装即可

2. 配置代理

进入系统设置,找到代理服务器,手动设置代理

设置为burp的代理监听器地址

保存即可

注意我这里配置的是系统代理,会抓取系统所有应用程序的http/s的数据包,如果是在浏览器设置代理,仅会抓取浏览器中的http/s数据包

3. 查看抓包效果

可以看到成功抓到小程序的数据包

但是缺点就是整个计算机系统的应用程序的http/s的数据包都会被抓取,因为我们刚才配置的系统代理

二、Burp与ProxyPin联合抓包

1. ProxyPin介绍

开源免费抓包工具,支持Windows、Mac、Android、IOS、Linux 全平台系统,可以使用它来拦截、检查和重写HTTP(S)流量,支持Flutter应用抓包,软件采用 Flutter 框架进行开发,不仅确保了软件的跨平台兼容性,还为用户带来了简洁美观的界面和流畅的操作体验,无需复杂的手动配置,仅需手机扫码连接,即可实现设备间流量的代理与共享,极大地提高了使用的便捷性

项目地址:https://github.com/wanghongenpin/proxypin

使用界面如下:

2. Burp配置代理

为了区分,我们新建代理监听器,监听8888端口

记得启用,到这就可以了,证书刚才配置过了,这里不再赘述

3. ProxyPin配置

3.1 安装SSL证书到本机

选择https代理并启用,然后点击安装根证书到本机

会弹出一个窗口,点击安装根证书

点击安装证书,便会进入安装向导,存储位置选择当前用户

接着选择受信任的根证书颁发机构

然后一直下一步即可

3.2 设置代理

点击设置,选择代理设置端口号,并启用系统代理,然后按箭头所指开启抓包

接着打开小程序,可以看到成功抓取数据包

点击某个具体的数据包,还可以看到大致内容叙述,请求包,响应包,以及cookie

那么怎么将数据包传入burp呢?

3.3 配置外部代理

点击设置,选择外部代理设置

设置刚才配置的Burp代理监听器,这样数据包就可以到burp了

4. 查看抓包效果

这个方法的原理和本质其实跟第一个方法一样的,都是通过设置系统代理抓取系统内应用程序的http/s的数据包,只不过多走了一层代理

整个代理链如下:

plain 复制代码
电脑(PC)端微信小程序-->通过ProxyPin -->到Burpsuite

那为啥要说这个工具,因为这个工具还有其他的功能,相当于小型的burp,也可以改数据包,还可以连接手机,实现设备间流量的代理与共享

还有一个问题来了,上述两个方法都抓取系统内所有应用程序的http/s数据包,

那我能不能单抓wx小程序,当然是可以的,所以接下来Proxifier,他来了

三、Burp与Proxifier联合抓包

1. Proxifier介绍

Proxifier 官网地址:https://www.proxifier.com/

2. Proxifier配置

2.1 启用http服务器

配置文件,选择高级,点击http代理服务器

启用支持,启用支持后 在之后配置代理服务器的时候协议的选择才有http,不然只有https

2.2 配置代理服务器

选择配置文件,点击代理服务器

点击添加,设置监听同Burp代理端口,这里我就监听刚才配置的8888端口,协议选择https,然后确定

弹出窗口表示该代理服务器将使用default规则,也就是配置完代理服务器,就会抓取系统应用程序的流量,并且经过burp,我们这里选择否,

如果选择是,或者没有弹窗窗口的小伙伴这里要注意一下,因为到时候的代理服务器会按default规则的action会走burp代理,到时候要改为direct

如果选择否后,会有弹窗表示是否想要现在为代理服务器设置规则,我们这里选择是,然后看2.3的第二步

2.3 配置代理规则

为了方便抓取小程序的包,建立一个小程序的规则

第一步:配置文件选择代理规则

第二步:添加,为规则命名,选择代理服务器

还有一个应用程序的配置,现在为any,我们要配置小程序的应用程序,我们先打开一个小程序,

然后查询应用程序路径,我这里使用everything搜索,获取到应用WetChatAppex.exe路径

然后回到proxifier代理规则,应用程序点击浏览

路径复制,将WeChatAppEx.exe添加进来

添加进来后查看代理规则

可以看到wx小程序规则的限定了application,以及流量走向刚才设置代理服务器,到这就配置好了

3. 查看抓包效果

可以看到只有wx小程序的流量了

ps:如果最终还是有其他程序的流量,请再检查一下配置(包括burp证书),或者按顺序重启一下小程序,burp,proxifier,因为有可能是还没设置规则时burp已经先抓取到默认规则的代理流量,原因嘛,请看2.2代理服务器配置中标红字段

文章原创,欢迎转载,请注明文章出处

相关推荐
HappyAcmen15 分钟前
关于微信小程序的面试题及其解析
微信小程序·小程序·notepad++
乔冠宇18 分钟前
微信小程序修改个人信息头像(uniapp开发)
微信小程序·小程序·uni-app
南宫生28 分钟前
力扣每日一题【算法学习day.132】
java·学习·算法·leetcode
技术小齐1 小时前
网络运维学习笔记 016网工初级(HCIA-Datacom与CCNA-EI)PPP点对点协议和PPPoE以太网上的点对点协议(此处只讲华为)
运维·网络·学习
竹言笙熙1 小时前
代码审计初探
学习·web安全
日记成书1 小时前
物联网智能项目
物联网·学习
虾球xz1 小时前
游戏引擎学习第118天
学习·游戏引擎
lvbb661 小时前
微信小程序-路线规划功能
微信小程序·小程序·notepad++
gz927cool2 小时前
大模型做导师之开源项目学习(lightRAG)
学习·开源·mfc
世事如云有卷舒3 小时前
FreeRTOS学习笔记
笔记·学习