?
文章目錄
- 引言
- I、概述
- 1.1 基本概念
- 1.2 環(huán)境搭建
- 1.3 常用逆向分析工具的原理及使用
- 1.4 正向知識儲備
- 1.4.1 hook
- 1.4.2 app簽名
- II iOS逆向進階
-
- 2.1.2 模擬鼠標點擊
- 2.1.3 LUA
- 2.1.3.1 設備解鎖
- 2.1.4 分析網(wǎng)絡數(shù)據(jù)包
- 2.1.5 日志分析
-
- III、案例實戰(zhàn)
- 3.1 ASO
- 3.2 轉(zhuǎn)換淘口令
- IV、 安全保護
- see also
- 游戲安全
- other
?
引言本文列出學習大綱,同時也可作為大家學習《iOS應用逆向與安全》專欄的索引。
文中的藍字都是超級鏈接,點擊進入即可
- 本專欄的整體大綱模塊
I、概述1、快速上手部分:基本概念、環(huán)境搭建、常用逆向分析工具的原理及使用(Cliclick、cycript)
2、正向知識儲備:類的結構、app簽名、Mach-o、hook
3、案例實戰(zhàn):ASO、轉(zhuǎn)換淘口令
4、安全保護:網(wǎng)絡加密傳輸、動態(tài)保護、代碼混淆
iOS應用逆向的大致留存
1、獲取應用的 ipa 包,解密(如果是越獄應用則不需要解密),導出頭文件;
2、使用工具(cycript、Reveal、Cliclick)
3、使用tweakhook、執(zhí)行相關函數(shù)的輸入輸出以及調(diào)用棧,分析驗證關鍵函數(shù);
4、靜態(tài)分析加動態(tài)調(diào)試進一步分析關鍵函數(shù)的實現(xiàn)邏輯
5、進行修改原有流程:案例ASO
1.1 基本概念
1.2 環(huán)境搭建
-
【Theos 的Makefile 指南】Makefile的規(guī)則、deploy 部署腳本、config 文件設置IP
-
iOS逆向指南之【「配置debugserver」】給debugserver添加task_for_pid權限
1.3 常用逆向分析工具的原理及使用
1.4 正向知識儲備
類的結構、app簽名、Mach-o、hook
1.4.1 hook
- 【使用substrate及runtime進行hook】定時檢測app是否開啟
%new - (void)checkHeart { //定時檢測微信是否開啟 [[UIApplication sharedApplication] launchApplicationWithIdentifier:@"com.tencent.xin" suspended:0]; } %end
1.4.2 app簽名
II iOS逆向進階- iOS應用逆向工程指南:【1、概念2、工具3、逆向理論】
iOS逆向工程,指通過分析系統(tǒng)的功能、結構、行為,將軟件的技術實現(xiàn)或者設計細節(jié)推導出來的過程。
- iOS逆向 :【Cycript Useful Command & Powerful private methods】
_ivarDescription
_shortMethodDescription
nextResponder
_autolayoutTrace
recursiveDescription
_methodDescription
-
iOS 逆向【how_to_host_cydia_repo】 批量部署Tweak插件到iOS設備的方案
-
iOS使用代碼觸發(fā)button的點擊事件:【 [btn sendActionsForControlEvents:UIControlEventTouchUpInside];】及教你找到按鈕action
-
使用ssh config配置文件來管理ssh連接
-
iOS逆向工具usbMuxd的應用:【1、通過USB方式SSH到iOS越獄設備2、端口轉(zhuǎn)發(fā)】
2.1.2 模擬鼠標點擊
- iOS逆向工具Cliclick:【Mac 模擬鼠標點擊工具】
例子(定時點擊特定位置,來點擊保證Mac永遠處于活躍狀態(tài),達到mac永不不關閉屏幕的目的)
2.1.3 LUA
-
獲取屏幕坐標的方式
-
1、lua腳本工具方法 httpPostJson:【發(fā)起Content-Type 為application/json; charset=UTF-8的請求 】2、使用Lua的協(xié)同程序?qū)崿F(xiàn)生產(chǎn)者-消費者
2.1.3.1 設備解鎖
- iOS逆向:【lua 函數(shù)】解鎖無密碼的設備、判斷設備是否鎖定、鎖定設備、打開某個程序
- iOS逆向:lua代碼實現(xiàn)解鎖和打開特定app的代碼、tweak 實現(xiàn)自動解鎖以及打開特定app(launchApplicationWithIdentifier、unlockUIFromSource)
2.1.4 分析網(wǎng)絡數(shù)據(jù)包
- iOS逆向抓包工具Charles【應用場景:App聯(lián)調(diào)測試】
- iOS逆向:tcpdump(截獲分析網(wǎng)絡數(shù)據(jù)包)、Wireshark的原理和基本使用
2.1.5 日志分析
【 iOS設備日志查看工具syslog和socat】(syslogd to /var/log/syslog)
III、案例實戰(zhàn)3.1 ASO
- iOS AppStore Search optimize【 ASO項目使用的技術】目錄(持續(xù)更新)
2、目錄:
3.2 轉(zhuǎn)換淘口令
- 【從app觀察阿里電商的閉環(huán)生態(tài)】1、渠道漏斗公式(渠道 = 流量 x 轉(zhuǎn)化率 x 客單價 x 復購率)2、引申話題:轉(zhuǎn)換淘口令機器人的實現(xiàn)流程(涉及逆向)
iOS應用安全-專欄總目錄(持續(xù)更新)
see also?
本文摘自 :https://blog.51cto.com/i