首页
社区
课程
招聘
[原创]修改微信实现防撤回、自动抢红包功能
发表于: 2018-4-12 13:42 26586

[原创]修改微信实现防撤回、自动抢红包功能

2018-4-12 13:42
26586

昨天看到大神skyun分享了一个实现微信主动发消息 防撤回 抢红包 骰子作弊 模拟位置 步数最高的模块。自己之前也搞过类似的事情,但是实现的方法不同,仅实现了防撤回 抢红包 修改步数的功能。其中修改步数是通过StepChanger实现的。防撤回、抢红包是通过修改微信APK实现的。这里主要描述一下防撤回、抢红包功能的实现思路。恰巧我修改微信的最新版本也是微信6.6.1。

一来是因为不想装Xposed,二来是因为觉得通过Hook实现的方法不够优雅,所以想通过直接修改微信的方式来实现防撤回和抢红包的功能。

在修改微信的过程中,一个重要的原则就是尽量重用微信自带的界面和组件,以求添加的界面和原界面保持风格一致。

研究过微信的人肯定都知道,用apktool反编译微信,是不能重打包的,因为微信使用AndResGuard对资源做了混淆。即便用apktool d -r命令保持资源文件不变,重打包后的微信也不能运行,这是因为微信启动后会对自己的dex文件进行校验,校验失败就不能运行。

要过掉这两个问题也很简单,针对资源混淆的问题,使用ShakaApktool

针对校验问题,自己找到校验的位置然后把那一段代码patch掉。例如在微信6.6.1版本中,校验代码位于smali/com/tencent/mm/f/a.smali

这一部分主要是通过调试和Hook完成的。Hook框架用的Frida。调试用的Android Studio +
smalidea

当然root权限是进行hook和调试的基础。有了root权限,开启调试权限的方法有两种。

一是修改AndroidManifest.xml里面的android:debuggable属性为true,开启某个app的调试权限。
二是使用大神提供的工具mprop开启整个系统的调试权限。

调试和Hook的具体工作很繁杂,就不说了。

在研究完微信的代码逻辑后,就可以开始添加自己的代码了。反编译微信后得到的都是smali代码,手写那么多smali代码肯定是不太现实的。


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

最后于 2018-4-12 13:44 被iweizime编辑 ,原因:
收藏
免费 4
支持
分享
最新回复 (35)
雪    币: 3032
活跃值: (3366)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
2
2018-4-12 15:05
0
雪    币: 76
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
现在都自己diy抢红包插件了。。。
2018-4-12 15:34
0
雪    币: 4522
活跃值: (2146)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
厉害厉害
2018-4-12 16:25
0
雪    币: 1040
活跃值: (1293)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
66666,不过我个人还是觉得xposed的要好很多……直接改APP还是太暴力了
2018-4-12 17:15
0
雪    币: 3907
活跃值: (5817)
能力值: ( LV12,RANK:200 )
在线值:
发帖
回帖
粉丝
6
火钳刘明
2018-4-12 18:26
0
雪    币: 9
活跃值: (18)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
膜拜膜拜
2018-4-12 19:59
0
雪    币: 239
活跃值: (23)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
大神,  请收下我的膝盖,  就想问问,  做这个花了多少时间??挺想试试的
2018-4-13 15:32
0
雪    币: 930
活跃值: (1333)
能力值: ( LV15,RANK:750 )
在线值:
发帖
回帖
粉丝
9
七岁 大神, 请收下我的膝盖, 就想问问, 做这个花了多少时间??挺想试试的
挺长时间的,你想做的话可以交流一下
2018-4-13 22:32
0
雪    币: 2375
活跃值: (433)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
hook为什么不优雅呢
2018-4-14 20:27
0
雪    币: 2375
活跃值: (433)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
天涯一鸿 66666,不过我个人还是觉得xposed的要好很多……直接改APP还是太暴力了
apk一更新,是不是要重新倒腾呢
2018-4-14 20:28
0
雪    币: 267
活跃值: (318)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
patch不是好方案,有封号风险,建议找到patch点用xposed
2018-4-14 21:27
0
雪    币: 1
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
没下载地址了。
2018-4-17 13:26
0
雪    币: 2
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
iweizime 挺长时间的,你想做的话可以交流一下
大神,你这个我挺感兴趣,能不能留个联系方式请教一些
2018-4-26 16:19
0
雪    币: 34
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
不怕封号,2333333
2018-6-5 12:13
0
雪    币: 38
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
可否请教下楼主
2018-6-7 12:04
0
雪    币: 930
活跃值: (1333)
能力值: ( LV15,RANK:750 )
在线值:
发帖
回帖
粉丝
17
imsnail 可否请教下楼主
你把问题写到github的issue里面吧
最后于 2018-6-7 17:47 被iweizime编辑 ,原因:
2018-6-7 17:47
0
雪    币: 206
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
Ats
18
大佬,软件能不能分享一下,万分感谢
2018-6-16 22:40
0
雪    币: 248
活跃值: (3789)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
会不会封号?
2018-6-16 23:48
0
雪    币: 930
活跃值: (1333)
能力值: ( LV15,RANK:750 )
在线值:
发帖
回帖
粉丝
20
yy虫子yy 会不会封号?
以前不会,现在会被警告
2018-6-18 10:57
0
雪    币: 206
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
Ats
21
iweizime 以前不会,现在会被警告
软件能不能分享一下,大佬
2018-6-18 21:56
0
雪    币: 4
活跃值: (16)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
最新的微信版本中对xposed做了检测,请问各位大佬这个怎么破?
2018-6-21 13:53
0
雪    币: 930
活跃值: (1333)
能力值: ( LV15,RANK:750 )
在线值:
发帖
回帖
粉丝
23
imhuster 最新的微信版本中对xposed做了检测,请问各位大佬这个怎么破?
不知道,我发的这个6.6.1的版本也会检测重打包,之前还没有
2018-6-21 19:55
0
雪    币: 4
活跃值: (16)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
24
iweizime 不知道,我发的这个6.6.1的版本也会检测重打包,之前还没有
好像是从6.6的版本开始加了检测的
2018-6-21 21:46
0
雪    币: 5
活跃值: (39)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
楼主求一个联系方式
2018-8-9 15:37
0
游客
登录 | 注册 方可回帖
返回
//