iOS 逆向-非越狱手机Hook App

本文介绍了如何在非越狱的iOS设备上实现App Hook,主要涉及Mach-o LC_LOAD_DYLIB,通过修改binary加载dylib。详细步骤包括目标App准备、动态库dylib生成、dylib注入、重签名和安装。工具如MachOView、iReSign、yololib等在过程中起到关键作用。
摘要由CSDN通过智能技术生成

引子


由于对iOS逆向分析很感兴趣,所以也花了很长一段时间学习了iOS逆向相关知识,并积累了一些相关经验,
这几天又到看雪论坛逛了一下,看看最近有没有什么大牛分享心得成果的!还真让我看到一篇有意思的文章【原创】微信双开是定时炸弹?关于非越狱iOS上微信分身高危插件ImgNaix的分析 ,通过读完这篇文章,让我又有了站在巨人的肩膀上,也来探究和学习一下非越狱设备如何Hook App的兴趣了。

思路


越狱和非越狱Hook iOS App的关键就是让App在启动的时候加载自己的dylib。那么在非越狱上加载dylib的思路就是利用:Mach-o LC_LOAD_DYLIB , 在App在被加载的时候,把我们的动态库dylib也一起加载起来。

关于非越狱设备Hook App网上有很多资料,下面摘抄来自阿里安全工程师的博客“iOS冰与火之歌番外篇 - 在非越狱手机上进行App Hook”关于非越狱手机Hook App的思路。也可以在IOS应用逆向工程官方论坛搜索更多关于逆向的资料。

今天我就来介绍一种不需要越狱就能hook iOS app方法,也就是Mach-O LC_LOAD_DYLIB Hook。这种方法是通过修改binary本身来加载第三方dylib并实现hook,具体思路是:

提取ipa中的二进制文件 -> 修改二进制文件的Load Commands列表,加入要hook的dylib –> hook.dylib在函数constructor函数中完成对特定函数的hook->对修改后的ipa进行签名,打包和安装。


工具

MachOView
iReSign
yololib
同步助手(或者pp助手、iTools)

本文实践工程

被注入目标代码工程:AppRe
生成动态库dylib代码工程:dylib


1.目标App

也就是要被注入的App。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值