色情  · iPhone  · App Store

为什么老是有人用iPhone搞黄色?

色情软件是怎么渗透到iOS上的?

 |  雷科技

文|雷科技

要说选择iPhone的好处有哪些,不少iPhone用户都会提到iPhone完整的应用生态。与国内杂乱无章的Android生态相比,iOS的App Store模式确实要健康不少:无论是权限管理、恶意软件封堵或是资源占用与软件编写质量,iOS都领先Android不少。这一切都与App Store的严密审核密不可分:App Store上一切不符合“苹果规范”的应用都有下架的风险,甚至连对应的开发者账户都有可能被封禁。

但风险往往伴随着利益,至今仍有不少色情或者打着色情擦边球的恶意软件在iOS平台铤而走险,颇有“富贵险中求”的的精神。可是iOS是个封闭的应用生态,这些色情应用究竟是怎么渗透进苹果的后院的呢?苹果就不管管吗?

早期的App Store还真的不管:App Store刚刚面世时,苹果为了方便开发者提交应软件,并未对软件做太多限制;再加上不同地区对成人内容有不同的法律规范,因此“飘洋过海”进入中国市场的iPhone 3GS在上市不久后就出现了色情内容泛滥的现象,排行榜前十的免费应用几乎都是色情或相关内容的软件。

微信截图_20200514155446.png

直到2014年App Store因色情内容遭多地媒体集体抨击,苹果才逐渐提高App Store的审核规范,并多次实施“史上最严审核标准”与人工审查。在苹果将色情内容纳入高压线后,App Store色情内容泛滥现象才稍有好转。

热更新提高了审核的难度

但在见识了色情内容的吸金能力后,相关产业的开发者自然不可能放过色情应用这台“印钞机”,纷纷“各显神通”动起了坏脑筋。其中最为著名、也最为常用的就是借助苹果屡禁不止的“热更新”。

先介绍一下什么是热更新,用过iPhone的朋友应该知道软件理论上只能通过App Store安装更新,但热更新不同:热更新指的是不经过App Store,以软件内部下载代码的方式直接为应用安装更新。

打个比方,酒店(iOS)只允许从正门进入(App Store下载)经过实名登记(审核)的旅客(软件)入住,访客(更新下载)需要在前台登记(App Store审核)。但有些逃犯(违规代码)通过合法旅客里应外合(直接下载新代码),绕过前台翻窗(绕过审核更新)入住。

热更新类色情软件的具体表现通常是先上架一个“正经”软件,比如手电筒或指南针之类的工具类软件,或浏览器、视频播放器这类需要联网获取内容的软件。用户下载后软件会连接开发者服务器并下载真正的“内部资料”,将相关违规内容以替换的形式带到用户手机中。

微信图片_20200514160453.png

这种“偷天换日”的更新方式不仅将色情内容带入到iOS这个封闭封闭系统中,甚至还对用户的信息安全造成隐患:热更新的代码未经苹果审核,只要开发者有这个想法,完全可以将恶意软件直接植入用户的手机。过去不少科技大厂的软件就因为热更新“夹带私货”而被苹果警告、更有甚者被苹果直接下架。

而在打击这类软件时,因为苹果在审核通过后不可能无限期继续对软件进行检查,所以苹果无法辨识软件是否通过热更新夹带了色情内容,即使想要严打色情内容也无从下手。对此苹果也只好通过更新iOS,以限制热更新的方式封堵生态内的色情内容。

此处不“涉黄”,自有“涉黄”处

但对于色情、赌博这类应用来说,iOS是一片不可能放弃的蓝海——苹果严打色情、赌博内容,”渗透“门槛有所提升;但用户对这类内容的需求不可能就此消失,竞争对手少了,市场自然变大。于是在热更新被封堵后,更多涉黄涉赌的“奇技淫巧”被开发了出来。

企业应用

首先他们将目光瞄向了企业证书:企业证书可以对加入企业管理的用户分发专门的内部软件,开发者先注册并认证一个企业账户,取得企业开发者证书,并向用户出售“加入资格”。加入了企业组织后,用户就可以下载一些只在企业内部提供,不公开上架App Store的软件。因为这些软件“理论上”只用于企业内部,所以苹果不会对此进行过多审核,权限也放得比较开,这就给相关产业的开发者留下了钻空子的机会。

微信图片_20200514162215.png

在经历了“企业证书”爆炸式申请后,苹果也意识到事情不对劲,开始严格核实企业的开发资质,不仅提高了认证门槛,同时也收回了大量的企业开发资质。这种做法虽然一定程度堵截了色情应用的发布,但“办法总比困难多”,不久后色情应用就死灰复燃。有人选择向符合资格的开发者高价购买证书,有些则另辟蹊径,开始打TestFlight与测试版的主意。

TestFlight

未从事过软件开发相关工作的朋友可能不知道TestFlight是什么,TestFlight是苹果推出的、用来分发“测试版软件”的软件。开发者注册后可以将正在开发、测试的非正式版软件提交到TestFlight中,方便团队其他成员进行软件测试。

微信图片_20200514162158.png

与企业应用类似,加入TestFlight需要开发者专门邀请,而且这些测试版应用还不是正式版本、不会流出到App Store中公开下载,因此苹果不会对TestFlight中的项目进行严格审核,只有当软件正式提交App Store后才会经正式的检查,所以这也成为了色情应用的生存空间:开发者将色情应用以测试版的名义提交到自己的TestFlight中,并分发自己的测试员资格,用户再以测试人员的身份对色情应用进行“测试”。

不同于企业应用,TestFlight属于开发者的开发工具,因此也有着不少限制。首先一个TestFlight项目允许的测试人员数量有限,同时因TestFlight内不是正式版App,因此存在有效时间限制。但相较于企业应用,使用TestFlight“搞黄色”的门槛显然要低很多,而且名额管理相当方便,所以这也是不少色情应用的首选分发方案。

IPA直接安装

但如果有些开发商想大批量分发放自己的色情软件,将用户人数最大化,TestFlight显然不适合。所以他们选择了最著名,也最为人熟悉的办法:直接发放色情应用的ipa安装文件,由用户自行安装。

这种源自于早期越狱安装盗版软件的方案也是目前最多开发者选择的方案:只需要将安装文件放到网上,让用户用各种一键安装工具安装到自己手机上。这种做法完全经过苹果的应用审核,因此也最为方便。再加上国内“一键安装工具”的泛滥,这种最原始的分发方式为iPhone用户带来了类似Android的体验。

但正因这类软件无需经过苹果审核,因此也将Android的歪风邪气带到了iOS上:不授权不能用、不花钱不能用、不看广告不能用、弹窗广告轰炸等现象层出不穷。除此之外,这种”野路子“更有可能带来个人信息泄漏的风险——试想一下,当一个联网的搞黄色软件读取你的本地照片、地理位置与通讯录后会发生什么?

苹果可以怎么做?

虽然这些搞黄色的软件有无数种方法渗透到看似封闭的iOS里,但苹果真的就束手无策了吗?

显然不是。

上述所有分发方式都有一个大前提——一个可以使用的开发者账号。苹果可以从源头入手,落实开发者资格认证,从源头解决色情应用的问题,不给色情应用应用流出的机会。同时也可以加强应用测试阶段审核,打击“挂测试卖人肉”的现象。苹果也应该在应用上架后不定期对软件进行抽查,防止热更新的漏网之鱼出现。

打击色情应用是苹果应尽的义务,也是苹果打造应用生态的必经之路。App Store作为iPhone唯一的公开应用分发渠道,为开发者提供一个相对公平的竞争舞台。剔除涉黄涉赌应用不仅可以净化生态,同时也可以给开发者一个更优秀的竞争环境,这也是苹果打造封闭生态的初衷。

在与各地执法部门联合下,苹果已经下架了不少色情与擦边球应用。但仅靠后知后觉的下架并不不从根源解决问题。至于未来苹果是否会推出更多更严格开发者策略,今年6月的WWDC上自有分晓。