原文:http://www.reibang.com/p/b8b7fd5447c2
說明: 相信喜歡逆向工程的小伙伴已經(jīng)對(duì)微信自動(dòng)搶紅包插件有所耳聞了,或者可以說,已經(jīng)被廣泛的傳播了,但筆者發(fā)現(xiàn),其實(shí)只有兩篇是原創(chuàng)的,其余均為瘋狂轉(zhuǎn)載.看了下網(wǎng)上對(duì)于微信的"喜愛"目前只有搶紅包這塊,所以為大家?guī)砹硪粋€(gè)實(shí)用性技能---修改微信運(yùn)動(dòng)參數(shù),媽媽在也不用擔(dān)心我把手機(jī)綁在狗腿上了!
言歸正傳,本文只針對(duì)于初識(shí)逆向工程的熱愛著,大神勿噴,我已將利用程序集成到微信公眾號(hào)【虛擬走路】中借尿,大家可以關(guān)注測試刨晴。
硬件工具:最好是有一臺(tái)越獄后的iPhone手機(jī),沒有也沒有關(guān)系,后續(xù)補(bǔ)充非越獄環(huán)境開發(fā),本文針對(duì)于Theos下Tweak編碼<本文使用的測試機(jī)iPhone 5c和一臺(tái)沒用上的iPhone 5s, ps:別問為什么沒用上還提, 因?yàn)閷懙竭@里,控制不住裝逼的念頭,好了不開玩笑了!>
軟件工具:已經(jīng)有高(hao)人為我們寫好了開發(fā)工具的配置和安裝,只是一個(gè)軟件的安裝所以本人沒必要踩在前輩的肩膀上繼續(xù)深造, 教程地址 , 稍等,我們還需要安裝一個(gè)查看微信頭文件的寶物:class-dump , 當(dāng)然了,使用它的前提是需要進(jìn)行砸殼后的app才可以正確導(dǎo)出頭文件,至于怎么砸殼,谷歌肯定能幫到你,目前能谷歌到的我們不做深究,只談目前沒有公開的
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 硬件軟件已經(jīng)準(zhǔn)備就緒
思考功能怎么實(shí)現(xiàn):
在我們的iOS系統(tǒng)本身, 有一個(gè)運(yùn)動(dòng)與健康,這里記錄了我們每天的步數(shù)行為等等, 那么微信運(yùn)動(dòng)排行榜在對(duì)好友們的步數(shù)進(jìn)行排榜的時(shí)候肯定需要去取數(shù)據(jù), 那么從哪取呢?毋庸置疑,去運(yùn)動(dòng)與健康取,如果我們能在微信取數(shù)據(jù)的時(shí)候進(jìn)行動(dòng)態(tài)劫持,偽造一個(gè)假數(shù)據(jù)傳給微信,那么是不是就大功告成了呢? 答案: if(YES){NSLog(@"是的");}
觀察微信頭文件
使用 class-dump -H WeChat.app -o WeChatHead命令導(dǎo)出微信頭文件
我們發(fā)現(xiàn)在WCDeviceStepObject這個(gè)類里面有幾個(gè)很顯眼的屬性m7StepCount,hkStepCount 等.? 如下:
關(guān)鍵字"stepCount"的中文是"步數(shù)",那么這個(gè)是不是我們要劫持并修改的參數(shù)呢? 多說無益,試試就知道了.
創(chuàng)建一個(gè)Tweak工程, 如下:
編寫Tweak.xm文件, 如下:
上圖我們返回"98800" 步數(shù)以做測試,
make并install Tweak工程后在測試機(jī)查看結(jié)果 , 如下: