文章目录
引言
欢迎大家来到#公众号:iOS逆向的《iOS应用逆向与安全》专栏
本文列出学习大纲,同时也可作为大家学习《iOS应用逆向与安全》专栏的索引。
文中的蓝字都是超级链接,点击进入即可
- 本专栏的整体大纲模块
I、概述1、快速上手部分:基本概念、环境搭建、常用逆向分析工具的原理及使用(Cliclick、cycript)
2、正向知识储备:类的结构、app签名、Mach-o、hook
3、案例实战:ASO、转换淘口令
4、安全保护:网络加密传输、动态保护、代码混淆
iOS应用逆向的大致留存
1、获取应用的 ipa 包,解密(如果是越狱应用则不需要解密),导出头文件;
2、使用工具(cycript、Reveal、Cliclick)
3、使用tweakhook、执行相关函数的输入输出以及调用栈,分析验证关键函数;
4、静态分析加动态调试进一步分析关键函数的实现逻辑
5、进行修改原有流程:案例ASO
1.1 基本概念
1.2 环境搭建
1.3 常用逆向分析工具的原理及使用
1.4 正向知识储备
类的结构、app签名、Mach-o、hook
1.4.1 hook
%new
- (void)checkHeart
{
//定时检测微信是否开启
[[UIApplication sharedApplication] launchApplicationWithIdentifier:@"" suspended:0];
}
%end
1.4.2 app签名
II iOS逆向进阶iOS逆向工程,指通过分析系统的功能、结构、行为,将软件的技术实现或者设计细节推导出来的过程。
_ivarDescription
_shortMethodDescription
nextResponder
_autolayoutTrace
recursiveDescription
_methodDescription
2.1.2 模拟鼠标点击
例子(定时点击特定位置,来点击保证Mac永远处于活跃状态,达到mac永不不关闭屏幕的目的)
2.1.3 LUA
2.1.3.1 设备解锁
- iOS逆向:【lua 函数】解锁无密码的设备、判断设备是否锁定、锁定设备、打开某个程序
- iOS逆向:lua代码实现解锁和打开特定app的代码、tweak 实现自动解锁以及打开特定app(launchApplicationWithIdentifier、unlockUIFromSource)
2.1.4 分析网络数据包
2.1.5 日志分析
【 iOS设备日志查看工具syslog和socat】(syslogd to /var/log/syslog)
III、案例实战3.1 ASO
1、原文:
2、目录:
3.2 转换淘口令
IV、 安全保护
游戏安全
私密文章
other


















