作为一个刚步入逆向之路的新手, 借着网上的资料对逆向工程有一个简单的学习, 在这里把我本人学习的最新成果带给大家, 以帮助更多的人, 少走弯路, 本人遇到了很多坑, 查阅了很多资料, 所以有不懂的地方可以私聊我, 我会尽自己的努力来帮助大家.
首先给大家看看我Demo的正常效果: 默认view的颜色时白色, 当我点击Red 就变成红色, 点我点击Green就变成绿色.然后我把这个项目安装到越狱的手机上, 本人的越狱手机是8.3系统iPhone5s.
安装后我感觉这样感觉颜色太单一了不好看, 在不改变原demo代码的情况下, 我们就要使用逆向工程, 实现对view随机色.
首先使用Theos创建Tweak工程, 这里就不介绍怎么配置工具了, 网上有很多资料, 如果有不懂的可以问我.
1.使用终端cd到你想要存放工程的目录, 输入命令 nic.pl 创建Theos工程, 这里我直接放在了用户目录下了.
2.这里我们选择第11个模板, 所以直接输入11, 按回车.
3.然后会让你输入一些信息 (项目名字) (包id) (作者名字) (要hook的应用的id) (最后一个直接回车使用默认的就行, 意思是要kill的进程, 也可以写我们要hook的app的二进制文件名字)
4.然后查看我们创建的工程, 一共4个文件, 如果你的没有这4个文件, 那么你就可能创建错了模板. 这4个文件的作用我不做过多描述, 网上都有介绍.
5. 配置工程和编写想要实现的随机色代码. 大体说一下什么意思 , 默认的makefile文件是这样的
都是默认的配置不需要更改只需要加入 :
THEOS_DEVICE_IP=192.168.1.101 右面的ip是手机的ip地址, 通过这个可以实现直接安装到手机
ARCHS = armv7 arm64 手机的架构 默认这样写就好了
TARGET = iphone:lastest:8.0 表示支持的手机系统版本, 最小8.0
Demo_FRAMEWORKS = UIKit 导入的框架
然后就是编写我们想实现的代码:
这就是我们实现的随机色的代码, 很简单有木有. Tweak.xm使用Xcode打开.
6. 到这里所有的工程配置和代码编写就完成了, 下一步我们就要把工程安装到手机上, 然后实现随机色. 首先cd到我们工程目录, 然后执行 make package install 安装我们的项目.
随后就是这样的界面, 意思就是编译加打包不同的架构, 然后输入ssh的密码, 这里要输入2次, 一次是编译, 一次是打包安装, 然后你就可以看到你的手机重启了, 这时再去之前安装的Demo看看是不是给你就变成了随机色.
温馨提示: 不用这种安装方式也可以通过把deb文件拖到手机中, 直接通过iFile安装. deb文件就在工程的packages文件夹下.