iOS IPA渗透工具

iOS IPA渗透,对MAC进行配置,这里记录一下,希望可以帮助有需要的人。

环境

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以上系统)

快捷键
切换输入法(中英文切换) --- control+space [空格]
搜索 ---------- command+space
打开多个终端 ------ 移动到终端内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)手动下载安装,Mac java8下载,下载jdk,安装 .dmg

2、node.js安装
(1)打开终端安装brew install node

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

这里node包含npm。

3、iphone越狱
参考

4、iphone安装frida
在cydia应用添加frida软件源,如下:

图片.png
图片.png

5、passionfruit安装
(1)依赖java,node,frida(参考)
(2)执行安装passionfruitsudo npm install -g --unsafe-perm passionfruit
(3)执行passionfruit
(4)连接iphone手机,打开网页http://localhost:31337

图片.png

注意 如果frida(指手机上的)版本过高(如12.8.0),passinfruit还不能兼容,就会出现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)

这时,去下载一个低版本的frida-server,这里我选择12.6.11的,解压出来将其修改为frida-server,替换iphone手机目录/var/sbin/frida-server(6s以上在 /usr/sbin/frida-server)。再次访问:如下

图片.png

6、ida7.0安装
下载ida7.0

7、ipa重签名
参考

8、ipa砸壳
参考

9、class-dump
class-dump是一个mac端的命令行工具,用来导出Mach-O头文件的。class-dump是可以把Objective-C运行时的声明的信息导出来的工具。实质就是可以导出.h文件。用class-dump可以把未经加密的app的头文件导出来。

下载地址:http://stevenygard.com/projects/class-dump/。打开链接后,选择class-dump-3.5.dmg,进行下载。下载完成之后,将dmg文件中的class-dump复制到/usr/bin目录,并在终端执行如下执行进行赋权

image.png

这里提供一个windows版的 Mac_Linux_Win_class-dump-z.zip (这个只支持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

方式一、
动态注入注入
cyrun -n Bundle -e -d -f
cyrun -b appName -e -d -f(中文)
代码注入实例

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

如果出现下面情况,可以考虑方式二

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
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,284评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,115评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,614评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,671评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,699评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,562评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,309评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,223评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,668评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,859评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,981评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,705评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,310评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,904评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,023评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,146评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,933评论 2 355

推荐阅读更多精彩内容