车服务平台-ios版本分析

VSole2023-02-09 10:00:51

1.砸壳

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保持同一目录。

 <plist version="1.0">     <dict> <key>com.apple.springboard.debugapplicationskey> <true/> <key>get-task-allowkey> <true/> <key>task_for_pid-allowkey> <true/> <key>run-unsigned-codekey> <true/> dict> plist>

用codesign签名

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

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

  • 然后运行debugserver 127.0.0.1:1998 -a /var/mobile/app进程。

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

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

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

连上了,按c继续。

拿到首地址:

在刚才那个方法sub_1014DACA4下断点看看入参。

触发断点,打印寄存器情况,这10个寄存器代表函数的10个入参。

分别打印寄存器的值,这里跟我在安卓上抓到计算X-PA-SIGN方法入参对比。

x0为http请求方法、x1请求路径 、x2为请求参数、x3为请求body base64编码、x4时间戳、x5为平台 、x6为安卓和ios特定的字符串、x7为固定值1。那么拿到入参后、继续分析。

很明显了就是把GET请求就是把这些参数按照顺序拼起来。

再看看POST方法的。

也是把参数拼接来,路径后接一个请求报文的base64编码。

那么我们先拿到这个函数的结果然后去判断是否是标准的sh256加密。

好了 到这X-Pa-Sign分析完了,就是Sha256 对拼接的参数进行加密。

2.1.spartaid

这里开始分析sparataid的生成,在ida中找到这个生成的位置。

具体这Lion_meta 有三个方法 通过对前面两个方法进行hook 大概猜到用于收集设备信息 然后把前两步收集到的信息传入第三个方法进行加密。

hook该方法拿到的入参和返回值就很明显这是设备信息收集进行加密的方法,具体分析下这个方法怎么加密的,看代码大概猜了下如下图:

这就很简单了直接打印下CCCrypt的入参和返回值就知道,是哪种加密和key是多少。

很明显了AES ecb psck7 加密 key为固定值 OkqDu3nfoVGNIyQA。不过这里要注意一点,这个ios 这个编码出来的结果跟java 和python 有一点的不一样,要处理下,这里就不解释了,自己去看吧!

android
本作品采用《CC 协议》,转载必须注明作者和本文链接
Android 银行木马善于伪装,在日常使用中很难被发现,是想要自动窃取在线资金的网络犯罪分子最喜欢的黑客工具之一。仅去年一年就检测到了 88,500 个Android 银行木马,对用户构成严重威胁。
Android、Linux、macOS、iOS 和 Windows 中的蓝牙漏洞至关重要,因为黑客可以利用它们未经授权访问易受攻击的设备。
恶意软件为了不让我们很容易反编译一个apk,会对androidmanifest文件进行魔改加固,本文探索androidmanifest加固的常见手法以及对抗方法。这里提供一个恶意样本的androidmanifest.xml文件,我们学完之后可以动手实践。
当前的Android生态环境中充斥着各种类型的恶意软件,每一款恶意软件都有其自己独特的一面。
Android14可防范伪基站
2023-08-11 13:44:36
为了从根本上缓解伪基站攻击风险,更好地保护用户移动数据和通信,谷歌近日宣布即将推出的Android14将增加两大新的蜂窝网络安全功能,预计将于本月晚些时候推出。
安全公司趋势科技的研究人员发现了一种被称为 CherryBlos 的 Android 恶意程序,能使用光学字符识别窃取手机屏幕上显示的凭证。恶意程序主要通过第三方传播的 Android apps 传播。
广泛使用的文件传输程序 MOVEit 中的一个高危漏洞导致其客户遭遇数据大规模被盗。支付服务 Zellis,、加拿大新斯科舍省、英国航空、BBC 和英国连锁药妆店博姿都遭遇了数据被盗。
Android抓包现状目前常见的抓包工具有Charles、Fiddler、Wireshark等,这些或多或少都需要一些配置,略显麻烦,只适合开发及测试人员玩,如果产品也想看数据怎么办呢,别急,本文的主角登场了,你可以在项目中集成AndroidMonitor,只需两步简单配置即可实现抓包数据可视化功能,随时随地,人人都可以方便快捷的查看请求数据了。根目录build.gradle下添加如下依赖。为了保险起见建议生产包禁掉此插件。
Android Java层源码调试编译idegen成功会在源码根目录生成android.iml 和 android.ipr两个文件。编辑导入配置sudo deepin-editor android.iml搜索excludeFolder,在下面加入这些配置。过滤不需要的源码模块。排除tests 目录 右键mark Directory as Excluded配置 Android源码项目点击File -> Project Structure–>SDKs配置项目的JDK、SDK。根据源码版本选择对应API级别 这里使用的Android10 对应29。配置 VScode 运行和调试获取vscodelunch.json 配置注意先选择C/C++ 源码 下好断点 此时按F5 触发。
VSole
网络安全专家