iOS安全攻防(九)使用iOSOpenDev开发SpringBoard的Tweat
个人原创,转帖请注明来源:http://blog.csdn.net/jailbreaker
前面讲到使用 ,使用iOSOpenDev开发SpringBoard的Tweat,非常易用,但必须知道实质还是依靠Theos来创建,所以必须学会用Theos直接创建Tweat。
首先,通过theos/bin/nic.pl生成一个Tweat项目,步骤如下:
1.设置环境变量 export THEOS=/opt/theos
2.终端cd进入打算保存项目的文件夹
3.创建工程,终端输入 $THEOS/bin/nic.pl 此时会看到如下信息,进行配置。
Choose a Template (required): 5 //我们选择第5个,也就是tweak项目
Project Name (required): myTweatByTheos //项目名称
Package Name [com.yourcompany.mytweatbytheos]: //项目的bundle 标识
Author/Maintainer Name [hf]: //作者
[iphone/tweak] MobileSubstrate Bundle filter [com.apple.springboard]: //Tweat的hook对象
[iphone/tweak] List of applications to terminate upon installation (space-separated, '-' for none) [SpringBoard]: //安装完需要重启的app
通过nic.pl创建工程默认是有5种类型,另外可以下载https://codeload.github.com/DHowett/theos-nic-templates/zip/master.zip 解压出5个.tar保存至$THEOS/templates/iphone目录下,总要一共就有10种类型。
执行完毕生成项目:
项目下的Tweak.xm ,就是我们输入hook代码的文件,现在的.xm内部现已经存有代码模版了。把之前帖子里iOSOpenDev生成的Tweat项目中.xm的内容复制过来。再把iOSOpenDev目录下lib目录中的libsubstrate.dylib 以及 include 目录下的substrate.h 分别复制到Theos目录下的lib和include中去。
打开makefile文件,因为我们要使用UIKit库,增加一行代码 myTweatByTheos_FRAMEWORKS = UIKit,见图
终端 make 编译下,如果没有error接着使用make package打包deb,makefile的设置还是比较多的,比如如果机子里有n个sdk,也可以指定sdk,还可以指定你的iOS设备的ip地址,打包后通过 make install安装。
运行效果图看 [iOS越狱开发 之七]使用iOSOpenDev开发SpringBoard的Tweat
iOS安全攻防(九)使用iOSOpenDev开发SpringBoard的Tweat相关推荐
- iOS安全攻防(九)使用Theos开发SpringBoard的Tweat
个人原创,转帖请注明来源:cnblogs.com/jailbreaker 前面讲到使用 [iOS越狱开发 之七]使用iOSOpenDev开发SpringBoard的Tweat,非常易用,但必须知道实质 ...
- iOS安全攻防(八)Thoes的Logos简介
个人原创,转帖请注明来源:cnblogs.com/jailbreaker 上一篇帖子,讲到使用iOSOpenDev开发基于Theos的Tweak,功能Hook了SpringBoard的 -(void) ...
- IOS学习笔记(九)之UIAlertView(警告视图)和UIActionSheet(操作表视图)基本概念和使用方法...
IOS学习笔记(九)之UIAlertView(警告视图)和UIActionSheet(操作表视图)基本概念和使用方法 Author:hmjiangqq Email:jiangqqlmj@163.com ...
- iOS安全攻防(二十三):Objective-C代码混淆
iOS安全攻防(二十三):Objective-C代码混淆 class-dump可以很方便的导出程序头文件,不仅让攻击者了解了程序结构方便逆向,还让着急赶进度时写出的欠完善的程序给同行留下笑柄. 所以, ...
- iOS安全攻防-李文瀚-专题视频课程
iOS安全攻防-343人已学习 课程介绍 关于iOS应用开发的安全,这块内容可无限的深入和延展 1.苹果的签名机制 2.代码注入的原理 3.HOOK的原理剖析 4.防护进阶 所有的防 ...
- 一个Java开发h5牌九棋牌网站开发细节
今天我们一起来做个简单有趣的实验.熟悉Java的童鞋,对h5牌九棋牌网站开发(Q1687054422)前往h5.fanshubbs.com类应该不陌生.不记得的童鞋,先回忆下. 实验一 我们先看下下面 ...
- unity3D埃及探险游戏源码,支持安卓+IOS双端 unity2019 C#语言开发
unity3D埃及探险游戏源码,支持安卓+IOS双端 unity2019 C#语言开发.完整的源码可直接运营.拿来学习研究和二次开发都很不错. 源码下载 unity3D埃及探险游戏源码C#语言开发.完 ...
- iOS动手做一个直播app开发(代码篇)
iOS动手做一个直播app开发(代码篇) ###开篇 好久没写简书,因为好奇的我跑去学习直播了,今天就分享一下我的感慨. 目前为止直播还是比较热点的技术的,简书,git上有几篇阅读量和含金量都不错的文 ...
- 初探使用iOS 7 Sprite Kit与Cocos2d开发游戏的对比(一家之言)
初探使用iOS 7 Sprite Kit与Cocos2d开发游戏的对比 初探使用iOS 7 Sprite Kit与Cocos2d开发游戏的对比 发布于:2013-07-18 11:00阅读数:1984 ...
最新文章
- Redis 数据结构-字典源码分析
- (转载)(c#)数据结构与算法分析 --数组、向量和表
- 昵图网服务器系统资源不足,Win7系统提示系统资源不足警告怎么办? - 爱绿豆...
- Kattis之旅——Prime Reduction
- java cmd 等待输入_JAVA:调用cmd指令(支持多次手工输入)
- 转载:理解机器学习中的偏差与方差
- 使用WebRTC开发Android Messenger:第1部分
- SpringBoot2.0基础案例(01):环境搭建和RestFul风格接口
- PyTorch入门-词向量
- ribbon设置权重_spring cloud gateway+ribbon 组合指定版本权重分流(简易灰度发布实现)...
- linux grep的信息不全,Linux下grep显示前后几行信息方法介绍
- 恒生电子Java开发岗的面试题汇总
- nohup启动jar_nohup命令详解
- 云计算世界里的企业级软件何去何从
- PHPExcel出现 Formula Error的解决方案
- c++thread里暂停线程_C语言如何正确的终止正在运行的子线程
- 修改linux系统的时间EDT和EST为CST
- mysql 基础语法3
- freertos使用基础
- filedownload实现