ipa与马甲包 | 一种取证思路

前言
通过检索相应资料,发现一些有趣的内容,关于马甲包,也关于躲避苹果审核站着把钱挣了的奇妙手段。
本文旨在探讨,从AppStore取证ipa安装包的一种可行性,该路径未经司法实践验证,亦不可用于实际取证参考。

一、ipa的获取
如周知,ipa是苹果应用的后缀格式,与之对比的,是安卓应用的apk后缀。
面临获取应用安装包的取证需求处理时,不同系统应用,取证方式大不一样。
若待获取目标为安卓apk应用,使用安卓手机直接下载应用至本地后,通过数据线连接电脑的方式,找到存放路径,即可导出apk安装包。数据线导出apk安装包这一路径,使用公证处的可信任设备可完成存证。
若待获取目标系苹果AppStore应用,鉴于iOS系统的封闭性与特殊性,该ipa安装包的下载导出将更为复杂。
获取ipa的方式,一般有以下路径:
使用越狱iPhone直接下载应用,类似安卓手机,连接数据线导出;
安装爱思助手、iTools等第三方应用,软登录apple id后,下载ipa导出;
使用Macbook安装第三方软件,如Apple Configurator,模拟移动设备,软登录AppStore,下载ipa至本地导出;
Win电脑安装低版本iTunes Windows版本,登录Apple id,下载ipa应用至本地;
考虑到公证处常用的信任硬件设备、公证书后续步骤描写支持的“清洁”程度,笔者建议,以最后一种路径进行取证较为安定。

二、道听途说
1、取证原因
需要取证固定安装包,原因可能有两种。
其一,用户端展现的应用内容存在抄袭、侵权可能,安装包源代码可能也存在相似、借鉴的可能性,公证安装包内容时,把安装包一并给固定了,未雨绸缪,为后期鉴定提供前置条件。
其二,该安装包实际是马甲包,哥们扒了其他已过审包体,简单添加了混淆代码,并顺利过审AppStore占坑。包体内置了切支付,加了时间戳判定和热更新,挂羊头卖狗肉。
2、一些名词
(1)马甲包
常见的一种形式为个人开发者账号提审发布于AppStore,因未接入苹果支付,免费软件,亦无提交其他软件运营资质要求,过审概率高。
通过大量的设备、绑定大量个人开发者账号,堆砌数量的形式提交马甲包并发布审核,以数量和去摸索AppStore黑箱审核的过审标准。若顺利过审,那么在AppStore可顺利占据一个软件坑位。
A软件过审,B内容运营,亦是马甲包的一种。
(2)切支付
如周知,每一笔接入苹果支付的收款,苹果税收取占比30%。若应用切支付,苹果将收不到钱,可谓是站着把钱挣了。
关乎利益问题,苹果深恶痛绝严厉打击。奈何切支付软件数量众多,一如过江之鲫。
(3)时间戳
此处时间戳,非tsa时间戳,实际是一类系统时间读取判断逻辑。通过读取用户端系统时间,决定显示的内容。
马甲包过审后,后续运营内容的一种手段。见下图。

(4)热更新
原理如下图。


以补丁的形式更新下载,替换显示其他包体内容。

三、ipa的取证
1、取证账号、设备要求:
Apple id及常用账号常登录iPhone(验证公证处陌生设备);
七麦账号;
公证处PC电脑;
公证处iPhone;
iTunes 12.1.3 64位安装包(有消息称iTunes 12.6.3.6 64位安装包同样可行,待证实 );
U盘(已拷贝旧版本iTunes);
2、取证路径:
使用旧版本iTunes,在公证处电脑上安装,登录Apple id,于iTunes的“应用”中搜索待取证应用,下载获取ipa安装包至电脑本地。
3、公证书需固定内容:
存证应用ipa;
iTunes 12.1.3 64位安装包;
PC端操作步骤截图word文档;
PC内置操作录像;
U盘;
4、大概的取证流程:
电脑打开七麦网并登录,查阅待存证应用(下称应用X)相关信息(App id、应用上架时间、用户评论、下载次数等);
通过七麦链接,点击跳转至AppStore商店,查阅应用X相关信息,显示二者内容一致,与七麦展示信息关联起来;
接入U盘,拷贝旧版本iTunes至电脑,查看iTunes旧版本安装包的数字签名、版权等信息,并安装在电脑上;
登录Apple id,于iTunes中选择“应用”,输入应用X名称,检索查看相关信息,显示与前述内容一致;
点击iTunes下载ipa安装包,本地打开路径,查看ipa属性(下载日期、包体版本等其他信息);

四、一些Q&A
Q:PC电脑上,为何我点击安装包后,提示我修复/重新安装或者卸载?
A:该PC电脑此前已安装过iTunes,取证前应确认PC电脑环境,先退出原有iTunes账号登录记录,并卸载该iTunes包,以便旧版本安装包顺利安装。
Q:为何卸载iTunes后,点击安装旧版本iTunes后,点击启动,系统弹窗提示“不能读取iTunes Library.itl,因为它是由更高版本的iTunes所创建的”?

A:该PC电脑此前安装过更高版本的iTunes,即便卸载后,C盘仍然有文件残留。取证之前,卸载原有iTunes后,前往该路径【C:\Users\(用户名 or Administrator)\Music\iTunes】,删除iTunes Library.itl。后续安装旧版本iTunes后,可以正常打开。
Q:为何要通过外接U盘,导入旧版本iTunes?不能直接苹果官网或其他第三方渠道下载么?
A:苹果官网,自2022年后,撤下了符合要求的iTunes版本下载链接,即便苹果提供了下载,其下载速度比较玄学,头铁的可以用一个上午的时间下载试试。第三方渠道,下载链接随时可能暴毙,后期面对质证会增加多余的解释麻烦,不如外接U盘的方式,直接导入目标iTunes应用。
Q:iTunes的各个历史版本,苹果有提供下载么?
A:历史版本iTunes,苹果官网有提供下载,网址:https://support.apple.com/zh_CN/downloads/itunes,但目标iTunes版本现已下架;
Q:使用iTunes是否都可以导出应用ipa?
A:itunes 12.1.3 64位版本可提供导出应用ipa的功能,苹果官网现阶段提供的iTunes 12.4.3(Windows 版)(64 位,适用于较早的显卡),无法导出应用ipa。也有网友称,iTunes 12.6.3.6 x64 可以下载ipa,不妨试试。
Q:降级!降级!我从苹果官网下载iTunes应用,降级到符合要求的版本,再下载应用X不行吗?
A:不建议。头铁的可以试试。
参考链接





