代码改变世界

iOS安全攻防(七)使用iOSOpenDev开发SpringBoard的Tweat

2014-12-07 12:10  16字节  阅读(2123)  评论(0编辑  收藏  举报

个人原创,转帖请注明来源:cnblogs.com/jailbreaker

Tweat可以理解为“外 挂”程序,可以做一些hook,给iOS打补丁的功能,这里我们用iOSOpenDev提供的Logos Tweak模版开发。

这篇blog我们hook的是SpringBoard,简称SB,其是iOS中的桌面管理器,之前的帖子在安装完deb之后,头文件:https://github.com/thomasfinch/iOS-7-SpringBoard-Headers/blob/master/SpringBoard-Class.h

NewImage

创建完,可以看到一个.xm的文件,这里是我们需要堆码的地方,而.mm会根据.xm自动生成内容,不需要我们去手动输入

NewImage

见上图, .xm文件中提示我们需要链接 libsubstrate.dylib,另外看一下很多%开头的语句。%是Legos中的指示符,后面的帖子会讲解。

先把.xm文件的内容清空,然后ibsubstrate.dylib链接进来,另外也把UIKit(需要一个提示框显示信息)链接进来:

NewImage

在头文件中有个方法:

-(void)applicationDidFinishLaunching:(id)application

看方法名,判断出是SB加载完毕后执行的方法,修改.xm文件。

NewImage

在看一下.mm文件,是自动根据.xm内容生成的:

NewImage

 

最后build 成deb,上传源空间或dpkg安装,前面帖子都详细讲过,不再重复。重启SB之后会看到下图:

NewImage