首页
社区
课程
招聘
[原创]关于某ios版本分析
发表于: 2022-10-31 16:00 23128

[原创]关于某ios版本分析

2022-10-31 16:00
23128

前言:

小弟最近刚学ios逆向,刚好最近在分析hcz这个app的安卓版本它的加密都在底层so里,但是so包做了加密,改了偏移,还有frida反调试不好分析,这正好符合我遇到困难就换路子的习惯。切换到ios 看看这个app 于是就有这篇文章了。app都做了SSL双向认证,所以抓包有点困难这里不就讲了。主要讲X-pa-Sign和Sparataid这两个参数。这里我用的是3.58.1版本 因为这个砸壳后代码清晰度好些,新版本的加密方法没改都是通用的 我已经测试过了。

这篇文章包含了lldb动态调试,frida-ios-dump砸壳,还有frida-trace静态分析.



1.1.这里采取frida-ios-dump 操作

用起来很简单直接下载这个包 然后打开要砸壳的APP、命令行运行 python dump.py 进程名 然后等待就行.

1.2.砸完壳后拿到ipa文件,改成zip格式,解压打开找到里面可执行的文件一般跟app名称一样.把他扔到ida中,等待ida分析完成就好。这里要等待蛮久的。

2.ida+lldb分析


搜索要X-PA-SIGN 要到引用位置

定位到这个方法,对比抓包结果判断这个方法就是用于添加请求头的位置,分析代码找到X-PA-SIGN应该是由下面这个函数返回

点进去看

对比抓包生成的sign和代码分析可差不多知道X-PA-SIGN就是SHA256加密,下面我们来分析sub_1014DACA4的入参

lldb调试

在x-code目录中找到对于版本的DeveloperDiskImage.dmg ,路径大 致/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/9.2 /DeveloperDiskImage.dmg

双击 DeveloperDiskImage.dmg 在/Volumes/DeveloperDiskImage/usr/bin/ 下找到debugserver.

debugserver复制出来

创建一个entitlement.xml文件与debugserver保持同一目录

用codesign签名

codesign -s - --entitlements entitlement.xml -f debugserver

发送到手机中 scp -r debugserver root@localhost -p xxxx :/usr/bin

记得在电脑端转发这个1998端口 也可以自己定义 iproxy装个就好了

然后再电脑端另起一个窗口启动lldb

然后再输入 process connect connect://localhost:1998 等待连接

连上了 按c继续

拿到首地址



[培训]科锐逆向工程师培训第53期2025年7月8日开班!

最后于 2023-2-8 21:31 被那年没下雪编辑 ,原因:
收藏
免费 6
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回