最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

iOS冰与火之歌番外篇-AppHook答疑以及iOS9砸壳-蒸米

IT圈 admin 50浏览 0评论

2024年5月31日发(作者:华玛丽)

原文地址

:/papers/13824

0x00

上一章我们讲到了在非越狱的

iOS

上进行

App Hook

。利用这个技术,你可以在非越狱的

iOS

系统上实现各种

hook

功能(

e.g.,

微信自动抢红包,自动聊天机器人,游戏外挂等)。但因为篇幅原

因,有一些细节并没有讲的非常清楚。没想到阅读量非常大,很多人都来私信问我一些

hook

中遇到的问题,并且问的问题都很类似。于是我专门写了一篇答疑的文章来帮助大家解决一些常见

的问题,顺便介绍一下如何在

iOS 9

上进行

app

砸壳

(Dumpdecrypted)

。另外想看主线剧情的读者也不要着急,下一篇就会给大家带来如何过沙盒的文章。

iOS

冰与火之歌》系列的目录如下:

1. Objective-C Pwn and iOS arm64 ROP

2.

在非越狱的

iOS

上进行

App Hook

(番外篇)

3. App Hook

答疑以及

iOS 9

砸壳(番外篇)

4. █████████████

5. █████████████

另外文中涉及代码可在我的

github

下载

:

/zhengmin1989/iOS_ICE_AND_FIRE

0x01

如何编译

很多人私信给我提到

无法编译成功,这个问题大多是因为没有安装

Command Line Tools

和越狱开发环境

iOSOpenDev

造成的,这两个工具都是搞

iOS

安全必备的环境,可以按照以下步骤

进行安装:

Command Line Tools

Xcode

的一个命令行工具插件,安装方法有两种:

(1)

打开终端,输入:

#!bash

xcode-select --install

(2)

去苹果官网下载安装包

/downloads/

iOSOpenDev

里提供了很多越狱开发的模板,可以在

/download/

下载到。安装完

iOSOpenDev

后就可以在

Xcode

里通过新建一个

project

看到我们进行非越狱

Hook

的时候需要用的

CaptainHook

了。

0x02

如何得到

App Store

上解密后的

ipa

我们开发时的

app

默认是没有加密的,但

App Store

上下载的

app

却被加了密。如果我们想要进行

hook

以及重打包的话,我们需要拿到解密后的

app

才行,否则的话,就算

hook

成功,签名成功,

安装成功,

app

还是会闪退。

(1)

查看

app

是否加密:

首先用

file

来看一下

ipa

解压后的二进制文件包含哪些架构(

e.g., armv7, arm64

)。如果有多个架构的话,最好是把所有的架构都解密了。但理论上只要把最老的架构解密就可以了,因为新的

cpu

会兼容老的架构。比如我们拿微博作为例子,可以看到

weibo

的客户端包含了

armv7

arm64

这两个架构。

随后我们可以通过

otool –l

来输出

app

load commands

,随后再查看

cryptid

这个标志位来判断

app

是否被加密了。如果是

1

的话代表加密了,如果是

0

的话代表解密了。

2024年5月31日发(作者:华玛丽)

原文地址

:/papers/13824

0x00

上一章我们讲到了在非越狱的

iOS

上进行

App Hook

。利用这个技术,你可以在非越狱的

iOS

系统上实现各种

hook

功能(

e.g.,

微信自动抢红包,自动聊天机器人,游戏外挂等)。但因为篇幅原

因,有一些细节并没有讲的非常清楚。没想到阅读量非常大,很多人都来私信问我一些

hook

中遇到的问题,并且问的问题都很类似。于是我专门写了一篇答疑的文章来帮助大家解决一些常见

的问题,顺便介绍一下如何在

iOS 9

上进行

app

砸壳

(Dumpdecrypted)

。另外想看主线剧情的读者也不要着急,下一篇就会给大家带来如何过沙盒的文章。

iOS

冰与火之歌》系列的目录如下:

1. Objective-C Pwn and iOS arm64 ROP

2.

在非越狱的

iOS

上进行

App Hook

(番外篇)

3. App Hook

答疑以及

iOS 9

砸壳(番外篇)

4. █████████████

5. █████████████

另外文中涉及代码可在我的

github

下载

:

/zhengmin1989/iOS_ICE_AND_FIRE

0x01

如何编译

很多人私信给我提到

无法编译成功,这个问题大多是因为没有安装

Command Line Tools

和越狱开发环境

iOSOpenDev

造成的,这两个工具都是搞

iOS

安全必备的环境,可以按照以下步骤

进行安装:

Command Line Tools

Xcode

的一个命令行工具插件,安装方法有两种:

(1)

打开终端,输入:

#!bash

xcode-select --install

(2)

去苹果官网下载安装包

/downloads/

iOSOpenDev

里提供了很多越狱开发的模板,可以在

/download/

下载到。安装完

iOSOpenDev

后就可以在

Xcode

里通过新建一个

project

看到我们进行非越狱

Hook

的时候需要用的

CaptainHook

了。

0x02

如何得到

App Store

上解密后的

ipa

我们开发时的

app

默认是没有加密的,但

App Store

上下载的

app

却被加了密。如果我们想要进行

hook

以及重打包的话,我们需要拿到解密后的

app

才行,否则的话,就算

hook

成功,签名成功,

安装成功,

app

还是会闪退。

(1)

查看

app

是否加密:

首先用

file

来看一下

ipa

解压后的二进制文件包含哪些架构(

e.g., armv7, arm64

)。如果有多个架构的话,最好是把所有的架构都解密了。但理论上只要把最老的架构解密就可以了,因为新的

cpu

会兼容老的架构。比如我们拿微博作为例子,可以看到

weibo

的客户端包含了

armv7

arm64

这两个架构。

随后我们可以通过

otool –l

来输出

app

load commands

,随后再查看

cryptid

这个标志位来判断

app

是否被加密了。如果是

1

的话代表加密了,如果是

0

的话代表解密了。

发布评论

评论列表 (0)

  1. 暂无评论