iOS IPA滲透工具

iOS IPA滲透,對(duì)MAC進(jìn)行配置,這里記錄一下,希望可以幫助有需要的人。

環(huán)境

Mac Air 64 
iphone 5s  版本10.2(可越獄)

配置目錄

0、homebrew
1、java
2、node.js
3、iphone越獄
4、iphone安裝frida
5、passionfruit
6、ida7.0
7、ipa重簽名
8、ipa砸殼
9、class-dump
10、安裝cyrun (12.0以上系統(tǒng))

快捷鍵
切換輸入法(中英文切換) --- control+space [空格]
搜索 ---------- command+space
打開多個(gè)終端 ------ 移動(dòng)到終端內(nèi)command+N

安裝

0、homebrew安裝
Homebrew是“MacOS缺失的軟件包管理器”,用于安裝軟件。打開終端
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
查看是否安裝成功brew -v

圖片.png

1、java安裝
(1)直接安裝 brew install java [沒有成功]
(2)手動(dòng)下載安裝,Mac java8下載,下載jdk,安裝 .dmg

2、node.js安裝
(1)打開終端安裝brew install node

(2)查看是否安裝成功node -v

這里node包含npm。

3、iphone越獄
參考

4、iphone安裝frida
在cydia應(yīng)用添加frida軟件源,如下:

圖片.png
圖片.png

5、passionfruit安裝
(1)依賴java,node,frida(參考)
(2)執(zhí)行安裝passionfruitsudo npm install -g --unsafe-perm passionfruit
(3)執(zhí)行passionfruit
(4)連接iphone手機(jī),打開網(wǎng)頁http://localhost:31337

圖片.png

注意 如果frida(指手機(jī)上的)版本過高(如12.8.0),passinfruit還不能兼容,就會(huì)出現(xiàn)Uncaught RPC Error: invalid size

passionfruit
listening on [http://localhost:31337](http://localhost:31337)
<-- GET /
<-- GET /static/0.build.js
<-- GET /static/logo.svg?abda96cf81a18b28052a52d16b35d4e1
<-- GET /static/MaterialIcons-Regular.woff2?570eb83859dc23dd0eec423a49e147fe
<-- GET /static/build.js
--> GET / 200 13ms 338b
--> GET /static/MaterialIcons-Regular.woff2?570eb83859dc23dd0eec423a49e147fe 200 21ms 43.26kb
--> GET /static/logo.svg?abda96cf81a18b28052a52d16b35d4e1 200 24ms 16.33kb
--> GET /static/0.build.js 200 29ms 55.2kb
--> GET /static/build.js 200 46ms 865.29kb
<-- GET /static/logo.svg?abda96cf81a18b28052a52d16b35d4e1
--> GET /static/logo.svg?abda96cf81a18b28052a52d16b35d4e1 200 4ms 16.33kb
nc localhost 51421
Uncaught RPC Error: invalid size
at Object.checksec (/script1.js:107:26)
at handleRpcMessage (frida/runtime/message-dispatcher.js:43:1)

這時(shí),去下載一個(gè)低版本的frida-server,這里我選擇12.6.11的,解壓出來將其修改為frida-server,替換iphone手機(jī)目錄/var/sbin/frida-server(6s以上在 /usr/sbin/frida-server)。再次訪問:如下

圖片.png

6、ida7.0安裝
下載ida7.0

7、ipa重簽名
參考

8、ipa砸殼
參考

9、class-dump
class-dump是一個(gè)mac端的命令行工具,用來導(dǎo)出Mach-O頭文件的。class-dump是可以把Objective-C運(yùn)行時(shí)的聲明的信息導(dǎo)出來的工具。實(shí)質(zhì)就是可以導(dǎo)出.h文件。用class-dump可以把未經(jīng)加密的app的頭文件導(dǎo)出來。

下載地址:http://stevenygard.com/projects/class-dump/。打開鏈接后,選擇class-dump-3.5.dmg,進(jìn)行下載。下載完成之后,將dmg文件中的class-dump復(fù)制到/usr/bin目錄,并在終端執(zhí)行如下執(zhí)行進(jìn)行賦權(quán)

image.png

這里提供一個(gè)windows版的 Mac_Linux_Win_class-dump-z.zip (這個(gè)只支持32位的,64位的dump不出來,需要mac版)。

10、安裝cyrun
通過Cydia安裝New Curses,readline,adv-cmds
通過Cydia安裝wget,主要為了在iPhone上可以下載deb文件
以root用戶登錄到iPhone上,安裝wget
apt install wget
分別下載

wget http://apt.saurik.com/debs/cycript_0.9.594_iphoneos-arm.deb
wget http://www.tateu.net/repo/files/net.tateu.cycriptlistenertweak_1.0.0_iphoneos-arm.deb
wget http://www.tateu.net/repo/files/net.tateu.cyrun_1.0.5_iphoneos-arm.deb

以root用戶在iPhone上安裝下載的deb

dpkg -i cycript_0.9.594_iphoneos-arm.deb
dpkg -i net.tateu.cycriptlistenertweak_1.0.0_iphoneos-arm.deb   net.tateu.cyrun_1.0.5_iphoneos-arm.deb

方式一、
動(dòng)態(tài)注入注入
cyrun -n Bundle -e -d -f
cyrun -b appName -e -d -f(中文)
代碼注入實(shí)例

var alertView = [[[UIAlertView alloc] initWithTitle:@"inject" message:@"success" delegate:nil cancelButtonTitle:@"ok" otherButtonTitles:nil] show]

如果出現(xiàn)下面情況,可以考慮方式二

Waiting for Cycript to become active...
ERROR - could not connect to Cycript

方式二

ps aux | grep xxx
cycript -p xxx
var alertView = [[[UIAlertView alloc] initWithTitle:@"inject" message:@"success" delegate:nil cancelButtonTitle:@"ok" otherButton itles:nil] show]

例如


圖片.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容