iOS 免越狱修改微信运动步数 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
landcbd
V2EX    问与答

iOS 免越狱修改微信运动步数

  •  2
     
  •   landcbd 2017 年 5 月 3 日 7626 次点击
    这是一个创建于 3175 天前的主题,其中的信息可能已经有所发展或是发生改变。

    说明: 相信喜欢逆向工程的小伙伴已经对微信自动抢红包插件有所耳闻了,或者可以说,已经被广泛的传播了,但笔者发现,其实只有两篇是原创的,其余均为疯狂转载.看了下网上对于微信的"喜爱"目前只有抢红包这块,所以为大家带来另一个实用性技能---修改微信运动参数,妈妈在也不用担心我把手机绑在狗腿上了!

    言归正传,本文只针对于初识逆向工程的热爱着,大神勿喷,免越狱利用工具我已经上传到微信公众号 [ 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" 步数以做测试,

    9 条回复    2017-05-05 22:07:29 +08:00
    h4x3rotab
        1
    h4x3rotab  
       2017 年 5 月 3 日 via iPhone
    你这能免越狱我直播吃 iphone
    qinix
        2
    qinix  
       2017 年 5 月 3 日 via iPhone
    @h4x3rotab 确实不用越狱,拿自己的证书重签名一下就可以装到手机上
    Apple9876
        3
    Apple9876  
       2017 年 5 月 3 日
    用 workflow 好像能直接加步数
    dream7758521
        4
    dream7758521  
       2017 年 5 月 3 日 via Android
    我是来看直播的
    aaronlam
        5
    aaronlam  
       2017 年 5 月 3 日 via iPhone
    @h4x3rotab 真的吗?(」)
    h4x3rotab
        6
    h4x3rotab  
       2017 年 5 月 3 日 via iPhone
    @qinix 都 killall springboard 了,不越狱怎么 kill
    qinix
        7
    qinix  
       2017 年 5 月 4 日 via iPhone
    @h4x3rotab 安装一个重签名包的话,应该不需要杀掉 springboard,就跟 xcode 调试一个自己开发的 app 一样。缺点是收不到推送。
    Arthaslixin
        8
    Arthaslixin  
       2017 年 5 月 4 日
    他要是吃 iphone 我可以直播
    h4x3rotab
        9
    h4x3rotab  
       2017 年 5 月 5 日 via iPhone
    @qinix 我是说,看见他教程里的 kill 就不用想了。以及关键的怎么做重签名都没提。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2751 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 15:05 PVG 23:05 LAX 07:05 JFK 10:05
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86