说明: 相信喜欢逆向工程的小伙伴已经对微信自动抢红包插件有所耳闻了,或者可以说,已经被广泛的传播了,但笔者发现,其实只有两篇是原创的,其余均为疯狂转载.看了下网上对于微信的"喜爱"目前只有抢红包这块,所以为大家带来另一个实用性技能---修改微信运动参数,妈妈在也不用担心我把手机绑在狗腿上了!
言归正传,本文只针对于初识逆向工程的热爱着,大神勿喷,免越狱利用工具我已经上传到微信公众号 [ landcbd ] 内,需要测试可以直接关注按照教程操作。
硬件工具:最好是有一台越狱后的 iPhone 手机,没有也没有关系,后续补充非越狱环境开发,本文针对于 Theos 下 Tweak 编码<本文使用的测试机 iPhone 6s 和一台没用上的 iPhone 6s, ps:别问为什么没用上还提, 因为写到这里,控制不住装逼的念头,好了不开玩笑了!>
软件工具:已经有高(hao)人为我们写好了开发工具的配置和安装,只是一个软件的安装所以本人没必要踩在前辈的肩膀上继续深造, 教程地址, 稍等,我们还需要安装一个查看微信头文件的宝物:class-dump, 当然了,使用它的前提是需要进行砸壳后的 app 才可以正确导出头文件,至于怎么砸壳,谷歌肯定能帮到你,目前能谷歌到的我们不做深究,只谈目前没有公开的
硬件软件已经准备就绪
思考功能怎么实现:
在我们的 iOS 系统本身, 有一个运动与健康,这里记录了我们每天的步数行为等等, 那么微信运动排行榜在对好友们的步数进行排榜的时候肯定需要去取数据, 那么从哪取呢?毋庸置疑,去运动与健康取,如果我们能在微信取数据的时候进行动态劫持,伪造一个假数据传给微信,那么是不是就大功告成了呢? 答案: if(YES){NSLog(@"是的");}
观察微信头文件
使用 class-dump -H WeChat.app -o WeChatHead 命令导出微信头文件
真的是巨多无比,几千个.h
我们发现在 WCDeviceStepObject 这个类里面有几个很显眼的属性 m7StepCount,hkStepCount 等.
关键字"stepCount"的中文是"步数",那么这个是不是我们要劫持并修改的参数呢? 多说无益,试试就知道了.
创建一个 Tweak 工程, 如下:
1 THEOS_DEVICE_IP = 172.18.1.114 2 ARCHS = armv7 arm64 3 TARGET = iPhone:latest:7.0 4
5 include $(THEOS)/makefiles/common.mk 6
7 TWEAK_NAME = hookWXYD 8 hookWXYD_FILES = Tweak.xm 9
10 include $(THEOS_MAKE_PATH)/tweak.mk 11
12 after-install:: 13 install.exec "killall -9 SpringBoard"
编写 Tweak.xm 文件, 如下:
1 %hook WCDeviceStepObject 2
3 - (unsigned int)m7StepCount 4 { 5 return 98800; 6 } 7
8 %end
上图我们返回"98800" 步数以做测试,
1
h4x3rotab 2017-05-03 01:51:53 +08:00 via iPhone
你这能免越狱我直播吃 iphone
|
3
Apple9876 2017-05-03 09:24:34 +08:00
用 workflow 好像能直接加步数
|
4
dream7758521 2017-05-03 10:20:31 +08:00 via Android
我是来看直播的
|
7
qinix 2017-05-04 02:46:35 +08:00 via iPhone
@h4x3rotab 安装一个重签名包的话,应该不需要杀掉 springboard,就跟 xcode 调试一个自己开发的 app 一样。缺点是收不到推送。
|
8
Arthaslixin 2017-05-04 21:20:15 +08:00
他要是吃 iphone 我可以直播
|