在此先对钱老师说声对不起!(其中缘由不必分说了)
现在使用iPhone 的童鞋越来越多了吧,在相关论坛你或许也能找到些相关帖子但是其内容并不多,废话不多说了;
首先我们必须确认下你的手机是否是已经越狱了,存在Cydia 这个文件夹不;
手机端必备工具:
1.OpenSSH
openssl_0.9.8k-9_iphoneos-arm.deb
openssh_5.8p1-9_iphoneos-arm.deb
2.adv-cm命令行 工具
adv-cmds_119-5_iphoneos-arm.deb
3.调试工具gdb
gdb_962-5_iphoneos-arm.deb
readline_6.0-7_iphoneos-arm.deb
sqlite3_3.5.9-12_iphoneos-arm.deb
sqlite3-dylib_3.5.9-1_iphoneos-arm.deb
sqlite3-lib_3.5.9-1_iphoneos-arm.deb
4. ARM指令集
arm.chm
Windows端工具
1. 用于远程连接的工具
Putty
2. 还有就是IDA了
准备一个网络环境 (最好有Witf)
工具齐全了现在我们可以来说下调试和修改的步骤了:
1. 使用 同步助手 文件管理 找到
路径为 /var/root/Media/Cydia/AutoInstall/
然后把上面手机必备工具中的文件全丢到这文件夹里, 就是那些 后缀名为 .deb 的文件
然后重启手机就OK啦
2. 把你的手机加入你的局域网中,记录手机的IP地址
打开Putty设置Putty
记得连接类型是SSH 端口默认22
3. 好了,现在用Putty连接手机,
一般iPhone 默认用户名为root 密码为 alpine
4. 登入成功的如入下
然后试试gdb 命令 gdb
OK 没问题
5. 由于种种原因 只能用附加进程去调试 所以现在打q 退出gdb调试器
在root# 下输入 ps ax 查看你要调试软件的进程
以下是gdb 常用命令
附加进程 gdb –p 进程号
设置显示 display /5i $pc
/i 汇编
5为显示的条数
$pc 为当前地址
单步指令 ni 单步步过
si 单步步入
下断点 b *地址
删除断点 d b
显示寄存器 i r
等这些常用 具体自己再去查找
比如你要调试植物大战僵尸的软件
你首先用同步助手 的文件管理 里找到 植物大战僵尸的安装目录 拷贝它的应用文件PvZ
用IDA 分析 PvZ
下断点的地址 和 IDA 显示的地址是一样的 无需再次转换
剩下的就是分析了
如果你找到关键地方的时候如何修改呢
这个 就用 匹配二进制码得方法修改
在winhex 中打开PvZ 匹配二进制码 找到想要的地方然后修改你想要的值
相关指令可以查ARM
当PvZ 改完后 拷贝覆盖手机里的原文件
打开游戏 你就可以YYXX了
PS 现在我的 植物大战僵尸 无CD 一个阳光127 金钱9W 够花了~
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!