首页
社区
课程
招聘
[旧帖] [原创]IOS 越狱开发 0.00雪花
发表于: 2014-3-10 19:19 1653

[旧帖] [原创]IOS 越狱开发 0.00雪花

2014-3-10 19:19
1653
用theos完成一个简单的越狱程序hook:
参考了以下链接
http://joeyio.com/ios/2014/01/01/make-a-mobile-substrate-tweak-using-theos/

http://wufawei.com/2013/08/iOS-jailbroken-programming-1/
http://wufawei.com/2013/08/iOS-jailbroken-programming-2/
http://wufawei.com/2013/08/iOS-jailbroken-programming-3/
http://wufawei.com/2013/08/iOS-jailbroken-programming-4/

问题处理:
1.安装软件包除了macport ,brew也是个不错的选择,用macport往Lion安装dpkg
比macport更轻量级
http://linfan.info/blog/2012/02/25/homebrew-installation-and-usage/
安装源:
http://brew.sh/

2.make package install时报错遇到的问题:
dpkg-deb: file `/tmp/_theos_install.deb' contains ununderstood data member data.tar.xz , giving up

修改     /opt/theos/makefiles/package/deb.mk
-    $(ECHO_NOTHING)COPYFILE_DISABLE=1 $(FAKEROOT) -r dpkg-deb -b "$(THEOS_STAGING_DIR)" "$(_THEOS_DEB_PACKAGE_FILENAME)" $(STDERR_NULL_REDIRECT)$(ECHO_END)

+    $(ECHO_NOTHING)COPYFILE_DISABLE=1 $(FAKEROOT) -r dpkg-deb -Zgzip -b "$(THEOS_STAGING_DIR)" "$(_THEOS_DEB_PACKAGE_FILENAME)" $(STDERR_NULL_REDIRECT)$(ECHO_END)

3.编译弹出对话框时的hook程序报错:
Undefined symbols for architecture armv7:
  "_OBJC_CLASS_$_UIAlertView", referenced from:
      objc-class-ref in Tweak.xm.30520078.o
ld: symbol(s) not found for architecture armv7

修改Makefile,增加如下条目解决:
XXX_FRAMEWORKS = UIKit

4.在Xcode 4.5环境下 编译两种hook程序成功,其中遇到一些问题基本可以解决,ios6版本上均正常显示,在ios7中未能显示
   在Xcode5.0.2环境下,编译两种hook程序失败

5.关于lipo的介绍:
ios开发中使用lipo用来合并模拟器和真机通用静态库
通常在项目中静态库都有两个版本,一个用于模拟器,一个用于真机,mac和iphone的CPU不同造成的
为了方便模拟器和真机间切换调试方便,制作通用版非常有必要
现在有两个版本的静态库libSQLite_i386.a(模拟器)与libSQLite_arm.a(真机)
执行:lipo -create libSQLite_i386.a libSQLite_arm.a -output libSQLite.a
我们可以lipo -info libSQLite.a命令,查看是否是通用的

6.关于在ios7及arm64上跑hook程序,跟进中···

跟进链接在ios7上编译没有问题,但是在真机上不起效果

http://iphonedevwiki.net/index.php/Updating_extensions_for_iOS_7

Xcode5还不支持工具链···,所以还要在Xcode4上搞···

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//