iOS逆向专栏总目录(持续更新)

简介: iOS逆向专栏总目录(持续更新)

引言

欢迎大家来到#公众号:iOS逆向的《iOS应用逆向与安全》专栏

本文列出学习大纲,同时也可作为大家学习《iOS应用逆向与安全》专栏的索引。文中的蓝字都是超级链接,点击进入即可

  • 本专栏的整体大纲模块

1、快速上手部分:基本概念、环境搭建、常用逆向分析工具的原理及使用(Cliclick、cycript)

2、正向知识储备:类的结构、app签名、Mach-o、hook

3、案例实战:ASO、转换淘口令

4、安全保护:网络加密传输、动态保护、代码混淆

I、概述

iOS应用逆向的大致留存

1、获取应用的 ipa 包,解密(如果是越狱应用则不需要解密),导出头文件;

2、使用工具(cycript、Reveal、Cliclick)

3、使用tweakhook、执行相关函数的输入输出以及调用栈,分析验证关键函数;

4、静态分析加动态调试进一步分析关键函数的实现逻辑

5、进行修改原有流程:案例ASO

1.1  基本概念

1.2 环境搭建

  • 【Theos 的Makefile 指南】Makefile的规则、deploy 部署脚本、config 文件设置IP

https://blog.csdn.net/z929118967/article/details/78249206

  • iOS逆向指南之【「配置debugserver」】给debugserver添加task_for_pid权限

https://blog.csdn.net/z929118967/article/details/78262460

1.3 常用逆向分析工具的原理及使用

请关注博客:https://blog.csdn.net/z929118967

1.4 正向知识储备

类的结构、app签名、Mach-o、hook

【使用substrate及runtime进行hook】定时检测app是否开启

https://kunnan.blog.csdn.net/article/details/78216856

%new
- (void)checkHeart
{
 //定时检测微信是否开启
    [[UIApplication sharedApplication] launchApplicationWithIdentifier:@"com.tencent.xin" suspended:0];
}
%end

II iOS逆向进阶

  • iOS应用逆向工程指南:【1、概念2、工具3、逆向理论】

https://blog.csdn.net/z929118967/article/details/77039930iOS逆向工程,指通过分析系统的功能、结构、行为,将软件的技术实现或者设计细节推导出来的过程。

  • iOS逆向 :【Cycript Useful Command & Powerful private methods】

https://kunnan.blog.csdn.net/article/details/78309400_ivarDescription _shortMethodDescription nextResponder _autolayoutTrace recursiveDescription _methodDescription

  • iOS 逆向【how_to_host_cydia_repo】 批量部署Tweak插件到iOS设备的方案

https://kunnan.blog.csdn.net/article/details/78344104

  • iOS使用代码触发button的点击事件:

[btn sendActionsForControlEvents:UIControlEventTouchUpInside];https://kunnan.blog.csdn.net/article/details/80782694

  • 使用ssh config配置文件来管理ssh连接

https://blog.csdn.net/z929118967/article/details/78219687

  • iOS逆向工具usbMuxd的应用:【1、通过USB方式SSH到iOS越狱设备2、端口转发】

https://blog.csdn.net/z929118967/article/details/78201784

2.1.2 模拟鼠标点击

  • iOS逆向工具Cliclick:【Mac 模拟鼠标点击工具】

https://kunnan.blog.csdn.net/article/details/108949981例子(定时点击特定位置,来点击保证Mac永远处于活跃状态,达到mac永不不关闭屏幕的目的)

2.1.3 LUA

  • 获取屏幕坐标的方式

https://kunnan.blog.csdn.net/article/details/78235417

  • 1、lua脚本工具方法 httpPostJson:【发起Content-Type 为application/json;charset=UTF-8的请求 】2、使用Lua的协同程序实现生产者-消费者

https://blog.csdn.net/z929118967/article/details/78252065

2.1.3.1 设备解锁

  • iOS逆向:【lua 函数】解锁无密码的设备、判断设备是否锁定、锁定设备、打开某个程序

https://blog.csdn.net/z929118967/article/details/78234965

  • iOS逆向:lua代码实现解锁和打开特定app的代码、tweak 实现自动解锁以及打开特定app(launchApplicationWithIdentifier、unlockUIFromSource)

https://blog.csdn.net/z929118967/article/details/78227984

2.1.4 分析网络数据包

  • iOS逆向抓包工具Charles【应用场景:App联调测试】

https://kunnan.blog.csdn.net/article/details/78192383

  • iOS逆向:tcpdump(截获分析网络数据包)、Wireshark的原理和基本使用

https://blog.csdn.net/z929118967/article/details/76914929

2.1.5 日志分析

【 iOS设备日志查看工具syslog和socat】(syslogd to /var/log/syslog)

https://blog.csdn.net/z929118967/article/details/78202096

III、案例实战

3.1 ASO

  • iOS AppStore Search optimize【 ASO项目使用的技术】目录(持续更新)

1、原文:https://kunnan.blog.csdn.net/article/details/1146540292、部分目录:

image.png

3.2 转换淘口令

  • 从app观察阿里电商的闭环生态
  1. 渠道漏斗公式(渠道 = 流量 x 转化率 x 客单价 x 复购率)
  2. 引申话题:转换淘口令机器人的实现流程(涉及逆向)](转换淘口令)https://blog.csdn.net/z929118967/article/details/88413780

IV、 安全保护

iOS应用安全-专栏总目录(持续更新)

https://kunnan.blog.csdn.net/article/details/115543792

image.png

see also


目录
相关文章
|
JavaScript 前端开发 Java
iOS逆向-day3:Cycript
iOS逆向-day3:Cycript
285 0
iOS逆向-day3:Cycript
|
iOS开发
iOS下载文件保存到手机文件指定目录
iOS下载文件保存到手机文件指定目录
781 0
|
数据安全/隐私保护 iOS开发
iOS逆向小技能:解锁无密码的设备、判断设备是否锁定、锁定设备、打开某个程序
介绍lua 函数: runApp、closeApp、getScreenSize、getDeviceID、lua_exit、isFrontApp。
201 0
|
安全 算法 开发工具
iOS逆向-day11:代码混淆
iOS逆向-day11:代码混淆
772 0
iOS逆向-day11:代码混淆
|
编译器 API iOS开发
iOS逆向-day10:LLVM 编译器(下)
iOS逆向-day10:LLVM 编译器(下)
351 0
iOS逆向-day10:LLVM 编译器(下)
|
自然语言处理 前端开发 IDE
iOS逆向-day10:LLVM 编译器(上)
iOS逆向-day10:LLVM 编译器
180 0
iOS逆向-day10:LLVM 编译器(上)
|
安全 数据安全/隐私保护 iOS开发
iOS逆向-day9:签名机制(下)
iOS逆向-day9:签名机制(下)
280 0
iOS逆向-day9:签名机制(下)
|
存储 安全 数据安全/隐私保护
iOS逆向-day9:签名机制(中)
iOS逆向-day9:签名机制(中)
153 0
iOS逆向-day9:签名机制(中)
|
算法 网络安全 数据安全/隐私保护
iOS逆向-day9:签名机制(上)
iOS逆向-day9:签名机制(上)
139 0
iOS逆向-day9:签名机制(上)
|
NoSQL 编译器 C语言
iOS逆向-day8:LLDB 动态调试
iOS逆向-day8:LLDB 动态调试
658 0
iOS逆向-day8:LLDB 动态调试