首页 > 编程语言 >2023年最新微信小程序抓包教程

2023年最新微信小程序抓包教程

时间:2023-04-20 09:02:32浏览次数:42  
标签:微信 安卓 程序 2023 思路 数据包 抓包

01
开门见山

隔一个月发一篇文章,不过分。

首先回顾一下《微信绑定手机号数据库被脱库事件》,我也是第一时间得知了这个消息,然后跟踪了整件事情的经过。下面是这起事件的相关截图以及近日流出的一万条数据样本:

个人认为这件事也没什么,还不如关注一下之前45亿快递数据查询渠道疑似在近日复活的消息。

消息是这么传的,真假尚未确定,因为笔者不会冒着查询个人信息意味着账号和个人信息绑定的风险去测试是否为真,但是可以知道的是之前的查询渠道叫“星链”,现在叫做星盾。

为什么要提起这两件事情,因为我要写的微信小程序抓包教程与第一个事件是有关联的,也可以说是受“旁击侧敲”的启发。从事件发生起,某圈子就迅速流行起了“如何获得某一微信账号的wxid”的问题,并且也有人迅速的给出了思路,方法也很简单,我这里简单复现一遍:

 

特别说明: 本次的思路仅限iOS系统(苹果系统)

1.苹果应用商店安装“Stream”软件:

2.配置代理,安装证书。 内置教程,此处省略。

3.开始抓包。 (为了方便我用iPad测试)

4.群里找一个目标,点头像,右上角投诉。

任意选一个投诉理由,注意,不是真的投诉,只要获取加载的数据包即可。最后一步的时候不用提交,返回工具页面,点击上传流量查看数据包。

选择“按域名”查看数据。 一般举报功能都是请求weixin110这个子域。

选择红框中的POST请求,exposeh5cgi为标识符。

选择“请求”模块,查看请求的数据包。

然后下滑点击查看请求主体。

箭头处的realChatUser就是“被投诉用户”的wxid了。获得wxid后意味着即使在不知道对方微信名的情况下,也能反查到该用户的手机号码。

 

这也就是我今天要分享的抓包思路,同理,微信小程序也是可以的。我应该不是第一个知道的,但是在真正实战的时候还需要注意一些细节,我等会文章结尾再讲。因为可能有人要反驳我了,微信小程序抓包的思路不是很多吗。确实,你说得对,毫不夸张的说,你懂的思路我都懂,但是问题在于很多思路都容易失效,在这里我列出一些基本思路。

 

第一种:使用Burpsuite配合模拟器抓包

众所周知,Burpsuite是渗透测试必备的抓包工具,对于微信小程序抓包应该也是得心应手的,可以通过在模拟器配置证书进行抓包。

起初这个思路人人皆知,但是后来微信修改了规则,方法已经失效了,并且前几个月有消息说微信好像禁止在模拟器登录,检测会警告封号处理,消息是否真实仍未证实。当然了,比较专业的同学可以安装类似于“Xposed框架”使得模拟器变得更强大,或者说能够绕过微信检测机制?

 

第二种:使用Fiddler配合微信PC端抓包

Fiddler也是一个强大的抓包工具,或者说是数据包分析工具,可以调试你电脑中的HTTP流量。

有些Burpsuite不能做的事情,它可以,我个人用得比较少。Fiddler不管是对于微信PC端还是模拟器都适用,不过这个思路好像从去年的11月左右就已经失效,具体没有证实。

 

第三种:使用Charles配合微信PC端抓包

根据官网的介绍,Charles是一款HTTP代理兼HTTP监视器工具,主要适用于Web浏览器。

Charles俗称“花瓶”,应该说是安全圈里一个“后来居上”的抓包工具吧,平时笔者也用得多,因为这款工具能够抓到某些“特殊”的数据包,比如JavaScript触发的数据包? 我也不知道怎么形容。

图片来源: https://blog.csdn.net/pengxurui

需要补充一下,以上三种思路也可以配合在苹果手机设置“网络代理”,实现用“电脑工具”抓取手机的数据包,具体来说也能实现抓取“微信小程序”或“手机QQ”的一些数据包。这个思路是笔者亲测过的,但是目前是否仍有效就不清楚了。

 

第四种:使用Httpcanary配合安卓端抓包

除了以上三(四)种思路,应该还有安卓系统使用 HttpCanary (小黄鸟) 抓取数据包的思路。

小黄鸟算得上是安卓系统最强大的抓包工具了,至少我认为地位如同安卓早期破解圈中的“幸运破̆̈解̆̈器̆̈”,不过人家靠的不是“运气”,而是“实力”。比如能够修改数据包中的数据实现“破解软件的VIP限制”或“无限签到”。

图片来源: https://blog.csdn.net/weixin_53891182

该思路同样也能配合安卓模拟器进行抓包,笔者亲测有效,目前是否依然有效也不清楚。对于能否抓取安卓系统微信小程序的数据没有经过实验。 文章中所提到的安卓系统和安卓模拟器需要区分一下。

 

其实抓取微信小程序数据包的思路大同小异,微信小程序大多数都是内嵌网站,部分开发者以为有微信这个“保护伞”就万事大吉,实际上保证足够安全还需“自扫门前雪。” 不管是企业还是国内高校,正因为小程序的安全容易被忽视,所以在渗透测试中,小程序往往成为了一个重要的被攻击目标。

 

02
言归正传

言归正传,补充一些前文提到的细节。用“Stream”抓取微信小程序的数据包时,经过测试,开启抓包之后,打开部分小程序时会卡在加载页面,这时候关闭抓包,重新打开小程序,等页面加载完成后再开启抓包即可。

 

下面用“肯德基”微信小程序来实战测试: 

这时候藤椒风味劲爆大鸡米花就一览无余了,不对,应该是肯德基的CRM客户系统。

 

一份神秘代码,帮我破解一下可以吗?

 

⣀⣆⣰⣒⣒⡀⢀⠔⠠⠤⡦⠤⠄⢴⠤⠤⠤⢴⠄

⢰⣒⣒⣒⣲⠄⠠⡎⠸⠽⠽⠽⠄⠼⡭⠭⠭⡽⠄

⢸⠒⠒⢒⣺⠄⠄⡇⡍⣝⣩⢫⠄⣊⣒⣺⣒⣊⡂

⢠⠤⠴⠤⠤⠄⢐⢔⠐⠒⡖⠒⠄

⣹⢸⢍⢉⢽⠄⢀⢼⠠⠤⡧⠤⠄

⡜⡸⠔⠑⠜⡄⠠⡸⢀⣀⣇⣀⠄

⢰⣒⣒⣒⣲⠄⠠⡦⢴⠄⡖⢲⠄⡖⢲⠒⢲⠒⡆

⢸⣒⣲⣒⣚⠄⠄⡯⢽⠄⣏⣹⠄⡇⡸⠄⢸⣀⡇

⣑⣒⣺⣒⣒⡀⢈⠍⠩⣡⠃⣸⠄⣏⣀⣀⣀⣀⡇

⡄   ⡄⠐⢲⠒⠄⡆⠢⠄⡤⠤⠄⢀⠤⢄

⢱⢰⠁⠈⢹⣉⠉⡏⡍⠄⠗⠒⡄⢸    ⢸

  ⠇   ⠈⣹⢀⡠⠺⡰⠄⠢⠤⠃⠘.. .⠜

 

标签:微信,安卓,程序,2023,思路,数据包,抓包
From: https://www.cnblogs.com/arrdres/p/17335376.html

相关文章

  • 2023/4/19
    7-2抽象基类Shape派生3个类分数 15全屏浏览题目切换布局作者 沙金单位 石家庄铁道大学声明抽象基类Shape,由它派生出三个类,圆形Circle,矩形Rectangle,三角形Triangle,用一个函数输出三个面积。输入格式:在一行中依次输入5个数,圆的半径,长方形的高......
  • 2023.4.19
    1//1.7最佳存款方案2//假设银行一年整存零取的月息为0.63%。现在某人手中有一笔钱,他打算在今后的3//五年中的每年年底取出1000元,到第五年时正好取完,请算出他存钱时应存入多少4#include<iostream>5usingnamespacestd;6intmain()7{8floatm,n;9......
  • java学习日记20230415-LinkedHashSet源码
    LinkedHashSet全面说明:LinkedHashSet是HashSet子类;底层是一个LinkedHashMap,底层维护了一个数组和双向链表根据元素的hashCode值来决定元素的位置,同时使用链表维护元素的次序,使得元素看起来是以插入的顺序保存的不允许添加重复元素维护了一个hash表和双向链表,每个节点有pre和......
  • 每日总结2023-04-19
    今天完成了对Android的界面优化,增添了昨日收入查看,总收入查看,并对三项收入增添了密文显示, 完成了下部分额外部分显示、跳转补货界面的Spinner使用   目前地址的当前详细位置还未完成,期望明天完成。 ......
  • 西南民族大学 2023 天梯自主训练 3
    西南民族大学2023天梯自主训练3正整数A+B#include<bits/stdc++.h>usingnamespacestd;typedefpair<int,int>PII;constintN=1e3+5,INF=0x3f3f3f3f,Mod=1e6;constdoubleeps=1e-8;typedeflonglongll;stringa,b;intx,y;intmain(){ios::sync_with_st......
  • 2023.4.19每日会议
    今天完成了什么:将图片识别的结果录入到数据库遇到了什么困难:将图片识别的结果录入到数据库后,我们有一个需要用户确认录入的信息是否正确的功能,如果不正确则让用户实现更改,但在更改时不断的报错以及数据库响应数为0,折腾一晚上也没有得到结果,打算明天解决明天打算做什么:解决今天遇......
  • 单调栈_20230419
    通常是一维数组,要寻找任一个元素的右边或者左边第一个比自己大或者小的元素的位置,此时我们就要想到可以用单调栈了739.每日温度题目说明请根据每日气温列表,重新生成一个列表。对应位置的输出为:要想观测到更高的气温,至少需要等待的天数。如果气温在这之后都不会升高,请在该位置......
  • 2023 4 19
    #include<iostream>usingnamespacestd;voidspeed(doublea){doublev;v=(a-95859)/2;cout<<"汽车的车速为"<<v<<endl;}intmain(){inti,j;doubles;intA[5]={0};for(i=95860;i<100000;i++){intt=i;for(j=0;j<5......
  • 2023.4.19 那片段 像对未来留言
    加训大数据结构。「LG8528」[Ynoi2003]铃原露露lxl怎么一题多投,很坏啊!考虑哪些\((a_x,a_y)\)有约束力,一是\(a_z>a_x\)且\(a_z>a_y\),或者\(a_z<a_x\)且\(a_z<a_y\)。这也就相当于将\(l\in[L_l,R_l],r\in[L_r,R_r]\)的二元组\((l,r)\)均设为非法。对于一次询问,我......
  • 2023/04/19代码评审
    1、实体类成员变量一律用private修饰2、尽量多加注释,包括但不限于业务方法、枚举、常量等。3、变量范围校验,可以使用@Range注解,例如@Range(min=1,max=3,message="分类层级不符合规范")4、使用service自带方法查询业务数据时,无需注入deleted字段,因为拦截器已经做了该......