準備工作
- iOS逆向工程中,我們需要用到一個越獄開發(fā)工具包尼啡,那就是Theos呜投,還有另外一個工具是 iOSOpenDev(還在研究中)這次修改步數(shù)的 “功臣”就是Theos锦茁。
1、Theos 的安裝
首先本地先安裝了 Homebrew (不懂的自行g(shù)oogle)洞辣。
xcode安裝 command line tools
打開終端咐刨,輸入 xcode-select --install 即可自動彈出安裝界面昙衅。
直接在終端輸入 sudo xcodebuild -license
按下回車,會自動打開協(xié)議內(nèi)容定鸟,按 q 直接忽略
最后手動輸入 agree 而涉,搞定。安裝dpkg仔粥。
dpkg:用來制作deb 格式的文件婴谱,因為Theos 開發(fā)的插件都會以 deb 的格式進行發(fā)布的。所在需要先安裝dpkg躯泰。
sudo brew install dpkg
- 安裝ldid(簽名工具)
sudo brew install ldid
- 安裝Theos
git clone --recursive https://github.com/theos/theos.git
下載之后 需要修改一下文件的權(quán)限:
sudo chown $(id -u):$(id -g) theos
這樣就算安裝完畢了谭羔。
2、使用Theos 創(chuàng)建項目來達到修改步數(shù)的目的
- 創(chuàng)建工程
這里如果想偷懶 可以在終端這樣
export THEOS=theos文件所在路徑 例如 export THEOS=/opt/theos
然后$THEOS/bin/nic.pl
要么就是這樣在終端這樣寫
/opt/theos/bin/nic.pl
一共12個模板麦向,我們選擇11瘟裸,然后寫一些關(guān)于項目的名字之類的配置。
3诵竭、寫代碼话告,以便于下一步的安裝注入。
注意:編輯時不要用mac自帶的編輯器卵慰。
- control:是關(guān)于項目的一些信息沙郭。
- demo.plist:這個我就不介紹了,開發(fā)iOS的同學(xué)都知道是什么裳朋。
- Makefile:這個可以當做是個頭文件病线。
我們需要修改它 給它添加頭部,代碼如下:
export THEOS=/opt/theos
THEOS_DEVICE_IP = 192.168.1.102(手機的ip地址)
ARCHS = armv7 arm64
include $(THEOS)/makefiles/common.mk
TWEAK_NAME = demo
demo_FILES = Tweak.xm
include $(THEOS_MAKE_PATH)/tweak.mk
after-install::
install.exec "killall -9 SpringBoard"
- Tweak.xm:我們在這里面寫代碼鲤嫡,來修改數(shù)據(jù)送挑。
%hook WCDeviceStepObject
- (unsigned int)m7StepCount
{
return 98800;
}
%end
這里的語法 是 logos 點擊查看語法
這個方法就是通過砸文件等分析出來的。可以點擊看我上一篇文章暖眼。
4惕耕、安裝運行 達到目的
cd 到創(chuàng)建的項目文件下。
然后執(zhí)行
make package install
我之前碰到的錯誤是:提示deb 文件有問題诫肠。
然后我是這樣改的
$(ECHO_NOTHING)COPYFILE_DISABLE=1 $(FAKEROOT) -r $(_THEOS_PLATFORM_DPKG_DEB) -Z$(_THEOS_PLATFORM_DPKG_DEB_COMPRESSION) -Zgzip -b "$(THEOS_STAGING_DIR)" "$(_THEOS_DEB_PACKAGE_FILENAME)"$(ECHO_END)
中間加了一個 Zgzip 然后打包就成功了司澎。
中間會出現(xiàn)讓輸入2次 手機的密碼(OpenSSH)的密碼。然后手機重啟区赵。記得要把健康中同步微信的給關(guān)掉惭缰,要不然沒效果。