首先退出当前登录的微信并下载**3.7.6.44**版本的微信
然后将这个目录下的所有文件及文件夹删除
**C:\Users\Administrator\AppData\Roaming\Tencent\WeChat**
登录微信后随便找一个小程序点进去。
进到这个目录下查看文件夹名称是否为**4648**
**C:\Users\Administrator\AppData\Roaming\Tencent\WeChat\XPlugin\Plugins\WMPFRuntime**
并确保该文件的版本为**1.9.4648.2**
**C:\Users\Administrator\AppData\Roaming\Tencent\WeChat\XPlugin\Plugins\WMPFRuntime\4648\extracted\runtime\WeChatAppEx.exe**
x64dbg附加 WeChatAppEx.exe.
注意: **找有小程序标题的那个附加。**
image.png
1
下断recv先抓一个返回数据
image.png
2
抓到的数据大概如下格式
补图:
image.png
3
[Asm] 纯文本查看 复制代码
17 //协议状态位03 03 //协议类型 小程序07 99 //content 长度BB 81 24 B3 67 12 D2 34 F9 31 F4 95 46 D9 83 C19D E3 7C 5B B6 6F B2 E6 F0 AC 1A FE 9E 02 CD B667 EA E9 2D 5B C3 7A 26 7C 34 B5 EF 8D B2 30 C3BA 90 BB 8E 81 BB A7 A9 58 A3 C9 A7 62 14 4D 1439 EF 8D 17 FB B9 AB 02 CB 85 8F 9A 84 15 94 4021 15 DB 40 18 82 2F 83 D2 6A 2D 8F 2C 28 FC 67FC 88 32 D6 6D A1 27 95 36 76 C2 84 3D 26 20 4866 CC 88 53 88 38 3E 95 F0 32 F6 2A 53 A3 28 DD26 5A 82 2A C8 88 03 5F FB F9 FC 7C 95 AB AB F071 3A 99 C5 7A 30 A0 BC 81 9D 7B E9 D3 99 2E 7E7C D2 50 2B AC E0 64 6A 8B 48 00 36 70 13 10 ACEF CB 2E AB 23 AA AD D3 9D 5B 88 //content
其中第一个字节是状态位 分别有 14 15 16 17这几种 16 17 是业务正常数据。15应该是失败。
对buffer下访问断返回后来到这里
image.png
4
**RVA:2DF0866**
函数会执行两次。
第一次读取包的buffer前5个字节。从中会取出后两位,也就是长度当做下一次调用的参数。
第二次读取buffer+5位置的data(len参数来源于第一次获取)
读取完数据后。会从中再读取前8位作为head处理。
剩余数据当作body处理。
image.png
5
**RVA:1DE4802**
[Asm] 纯文本查看 复制代码
BB 81 24 B3 67 12 D2 34 //headF9 31 F4 95 46 D9 83 C1 9D E3 7C 5B B6 6F B2 E6F0 AC 1A FE 9E 02 CD B6 67 EA E9 2D 5B C3 7A 267C 34 B5 EF 8D B2 30 C3 BA 90 BB 8E 81 BB A7 A958 A3 C9 A7 62 14 4D 14 39 EF 8D 17 FB B9 AB 02CB 85 8F 9A 84 15 94 40 21 15 DB 40 18 82 2F 83D2 6A 2D 8F 2C 28 FC 67 FC 88 32 D6 6D A1 27 9536 76 C2 84 3D 26 20 48 66 CC 88 53 88 38 3E 95F0 32 F6 2A 53 A3 28 DD 26 5A 82 2A C8 88 03 5FFB F9 FC 7C 95 AB AB F0 71 3A 99 C5 7A 30 A0 BC81 9D 7B E9 D3 99 2E 7E 7C D2 50 2B AC E0 64 6A8B 48 00 36 70 13 10 AC EF CB 2E AB 23 AA AD D39D 5B 88 //body
然后对body进行一次解密后得到最终response数据交给app做后续处理。
image.png
6
**RVA:1DE485A**
从解密的参数来看应该是aes-128-gcm算法
解密后的数据如下,我将其分为了两部分。
第一部分为协议头。
第二部分为json_data(也有可能是HTTP的raw).
[Asm] 纯文本查看 复制代码
00 00 31 01 04 00 00 00 0F 88 61 96 D0 7A BE 94 03 AA 69 3F 75 04 01 09 40 82 E3 6C DC 10 54 C5 A3 7F 5F 96 1D 75 D0 62 0D 26 3D 4C 74 41 EA FB 24 E3 B1 05 4C 1C 37 E1 59 EF 00 07 3E 00 00 00 00 00 0F7B 22 72 65 74 5F 6D 6F 64 75 6C 65 22 3A 7B 22 63 6F 75 6E 74 22 3A ... //json_data
其中response的数据可以直接转文本就是明文字符了。
[HTML] 纯文本查看 复制代码
{ "ret_module": { "count": 50, "data": [ { "slot_num": 7, "device_id": 100031366, "order_id": 31359415, "name": "千惠便利店", "coins": 3, "create_time": "2022-08-09 09:52:36", "stack_id": 26507501, "status": 1, "refundCoins": null }, { "order_id": 28234418, "slot_num": 7, "device_id": 100031366, "name": "千惠便利店", "coins": 2, "stack_id": 23882273, "create_time": "2022-07-18 09:56:05", "status": 1, "refundCoins": null }, { "create_time": "2022-07-13 09:47:55", "slot_num": 7, "stack_id": 23308528, "device_id": 100031366, "order_id": 27545901, "name": "千惠便利店", "coins": 2, "status": 1, "refundCoins": null }, { "slot_num": 7, "device_id": 100031366, "order_id": 27258391, "name": "千惠便利店", "stack_id": 23074033, "coins": 2, "create_time": "2022-07-11 09:20:23", "status": 1, "refundCoins": null }, { "slot_num": 7, "device_id": 100031366, "stack_id": 22288022, "name": "千惠便利店", "coins": 2, "order_id": 26302324, "create_time": "2022-07-04 09:34:32", "status": 1, "refundCoins": null }, { "order_id": 24564459, "stack_id": 20871834, "slot_num": 7, "device_id": 100031366, "name": "千惠便利店", "coins": 3, "create_time": "2022-06-21 09:17:29", "status": 1, "refundCoins": null }, { "slot_num": 7, "device_id": 100031366, "name": "千惠便利店", "coins": 2, "create_time": "2022-06-20 14:30:20", "status": 1, "stack_id": 20782357, "order_id": 24453351,
如果数据走的HTTP协议的话。解密后的数据则大概如下 其中包含http报文协议头和raw。
[Asm] 纯文本查看 复制代码
48 54 54 50 2F 31 2E 31 20 32 30 30 20 4F 4B 0D 0A 53 65 72 76 65 72 3A 20 6E 67 69 6E 78 0D 0A 44 61 74 65 3A 20 4D 6F 6E 2C 20 30 37 20 4E 6F 76 20 32 30 32 32 20 31 31 3A 32 38 3A 31 32 20 47 4D 54 0D 0A 43 6F 6E 74 65 6E 74 2D 54 79 70 65 3A 20 61 70 70 6C 69 63 61 74 69 6F 6E 2F 6A 73 6F 6E 0D 0A 54 72 61 6E 73 66 65 72 2D 45 6E 63 6F 64 69 6E 67 3A 20 63 68 75 6E 6B 65 64 0D 0A 43 6F 6E 6E 65 63 74 69 6F 6E 3A 20 6B 65 65 70 2D 61 6C 69 76 65 0D 0A 58 2D 50 65 72 6D 69 74 74 65 64 2D 43 72 6F 73 73 2D 44 6F 6D 61 69 6E 2D 50 6F 6C 69 63 69 65 73 3A 20 61 6C 6C 0D 0A 58 2D 44 6F 77 6E 6C 6F 61 64 2D 4F 70 74 69 6F 6E 73 3A 20 76 61 6C 75 65 0D 0A 58 2D 46 72 61 6D 65 2D 4F 70 74 69 6F 6E 73 3A 20 53 41 4D 45 4F 52 49 47 49 4E 0D 0A 58 2D 43 6F 6E 74 65 6E 74 2D 54 79 70 65 2D 4F 70 74 69 6F 6E 73 3A 20 6E 6F 73 6E 69 66 66 0D 0A 58 2D 58 53 53 2D 50 72 6F 74 65 63 74 69 6F 6E 3A 20 31 0D 0A 43 6F 6E 74 65 6E 74 2D 53 65 63 75 72 69 74 79 2D 50 6F 6C 69 63 79 3A 20 75 70 67 72 61 64 65 2D 69 6E 73 65 63 75 72 65 2D 72 65 71 75 65 73 74 73 3B 63 6F 6E 74 65 6E 74 20 2A 0D 0A 53 74 72 69 63 74 2D 54 72 61 6E 73 70 6F 72 74 2D 53 65 63 75 72 69 74 79 3A 20 6D 61 78 2D 61 67 65 3D 36 33 30 37 32 30 30 30 3B 20 69 6E 63 6C 75 64 65 53 75 62 64 6F 6D 61 69 6E 73 3B 20 70 72 65 6C 6F 61 64 0D 0A 52 65 66 65 72 72 65 72 2D 50 6F 6C 69 63 79 3A 20 6F 72 69 67 69 6E 2D 77 68 65 6E 2D 63 72 6F 73 73 6F 72 69 67 69 6E 0D 0A 0D 0A 36 31 0D 0A 7B 22 63 6F 64 65 22 3A 22 32 30 30 22 2C 22 6D 73 67 22 3A 22 E6 93 8D E4 BD 9C E6 88 90 E5 8A 9F 22 2C 22 64 61 74 61 22 3A 22 76 34 6E 50 62 75 33 62 55 70 71 6C 77 71 6D 64 7A 58 2B 36 74 51 3D 3D 22 2C 22 74 69 6D 65 53 74 61 6D 70 22 3A 22 31 36 36 37 38 32 30 34 39 32 31 32 37 22 7D
[Asm] 纯文本查看 复制代码
HTTP/1.1 200 OKServer: nginxDate: Mon, 07 Nov 2022 11:28:12 GMTContent-Type: application/jsonTransfer-Encoding: chunkedConnection: keep-aliveX-Permitted-Cross-Domain-Policies: allX-Download-Options: valueX-Frame-Options: SAMEORIGINX-Content-Type-Options: nosniffX-XSS-Protection: 1Content-Security-Policy: upgrade-insecure-requests;content *Strict-Transport-Security: max-age=63072000; includeSubdomains; preloadReferrer-Policy: origin-when-crossorigin61{"code":"200","msg":"操作成功","data":"v4nPbu3bUpqlwqmdzX+6tQ==","timeStamp":"1667820492127"}0
最终效果:
image.png
7
源码下载:
https://github.com/snlie/WeChat-Hook/tree/main/PC%E5%BE%AE%E4%BF%A1%E5%8D%8F%E8%AE%AE/%E5%B0%8F%E7%A8%8B%E5%BA%8F%E7%9B%B8%E5%85%B3%E7%AE%97%E6%B3%95
​
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
暂无评论...
更新日志
2024年11月22日
2024年11月22日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]