iOS逆向工程

iOS逆向工程-非越狱

简介

软件逆向工程,指的是通过分析一个程序或系统的功能、结构或行为,将它的技术实现或细节推导出来的过程。当我们对一个软件的功能很感兴趣,却又拿不到它的源代码时,往往可以通过逆向工程来对它进行分析。

运用

逆向工程主要有两个作用:
分析目标程序,拿到关键信息,可以归类于安全相关的逆向工程

  • 评定软件的安全级别
  • 逆向恶意软件
  • 检查软件后门

借鉴他人的程序功能来开发自己的软件,可以归类于开发相关的逆向工程

  • 逆向系统API
  • 借鉴别的软件

脱壳

dumpdecrypted
AloneMonkey

AloneMonkey

安装

Dump

Hook

重签

完全重签名

证书,mobileprovision、Bundle ID 三者信息对应一致,这种重签名方式基本上与直接对代码进行签名的效果是一样的;
优点:有效期长、稳定性高;
缺点:维护成本较高,每一个重签名的ipa都必须修改Bundle ID 并且独享一套证书和mobileprovision文件;
适用范围:对签名效果稳定性有要求的公司和团队;

不完全重签名

只保证证书和mobileprovision对应一致,至于这两者与原ipa的Bundle ID 等信息是否一致则不考虑;
优点:看起来较方便维护;
缺点:实际上并没有对原ipa的签名进行完全替换,很容易重签名失败,稳定性不高,多则一两个月,少则三五天就可能发生签名失效,需要重新签名,慎用!!
适用范围:市面上出售企业证书进行重签名的个人卖家;

常用签名工具

命令行

AloneMonkey

Xcode 自动化重签


上一篇
App启动速度优化 App启动速度优化
App启动速度优化关于App应用启动速度优化的话题:Session 406 Optimizing App Startup Time ,该Session上Apple建议一个App完整的启动时间应该保证400ms之内,而若超过20s后还未完全启
2019-01-18
下一篇
关于Mac环境下Hexo搭建指南 关于Mac环境下Hexo搭建指南
环境配置安装Hexo前需要先安装Git和Node.js Git安装HomeBrew是一种包管理工具,可以帮助您方便快捷的安装与卸载软件。 $ brew install git 安装结束后在命令行输入git后运行,如果屏幕上出现git命令的
2018-11-16
目录