对于iOS应用程序越来越多的更新技术将用户置于风险
越来越多的IOS应用程序开发人员使用一种技术,该技术允许他们在其应用中远程修改代码,而无需通过Apple的正常审查过程,可能会向用户打开滥用和安全风险的门。
该技术是热补丁的变化,这是一种在不重新启动的情况下动态更新系统或应用程序的方式。在这种情况下,在没有开发人员的情况下更新IOS应用程序,必须将新版本提交给官方iOS应用商店,然后等待Apple对更改的审查,这可能是一个冗长的过程。
这种热修补方法的实现来自一个名为JSpatch的开源项目,它提供了一个引擎,App开发人员可以集成到他们的应用中,并将JavaScript代码桥接到Objective-C,iOS应用程序使用的编程语言。
例如,在将JSpatch引擎添加到其应用程序之后,这需要只需要7行代码,开发人员可以突出应用程序以始终从他们控件的远程服务器加载JavaScript代码。然后由JSpatch Engine解释此代码并将其转换为Object-C。
“Jspatch是一个福伊斯开发人员,”Fireeye的安全研究人员在博客帖子中说。“在右侧,它可以用于快速和有效地部署修补程序和代码更新。但在像我们这样的非乌托邦世界,我们需要假设坏演员将为意外目的利用这项技术。“
问题是热补丁与IOS安全模型有所不足,这部分地利用了苹果花园的实力,其精心控制的应用商店。
苹果公司对第三方应用程序产生了一些与安全相关的限制,并仅通过App Store审查流程强制执行。jspatch允许开发人员绕过此类策略。
例如,通过使用此方法,应用程序可以访问某些iOS API,而不在首次提交和接收到App Store时声明它们。它还可以访问仅允许Apple应用程序使用的受限API。
AIREEY研究人员表示,应用程序可以更改设备上的系统设置,枚举帐户类型,收集存储在斯托特库中的照片相册或访问信息中的图片。目前,攻击者可以做的一些限制,但如果JSpatch开发人员选择曝光额外的C功能或应用程序创建者本身对发动机进行一些更改,这些限制可能很容易消失。
jspatch滥用有一些可能的方案。最简单的人将涉及开发人员,他们故意恶意,并利用Jspatch来避免苹果被检测到的流氓代码。
虽然另一个将JSPATTHING进入其SDK(软件开发套件)的广告网络。如果应用程序开发人员将在其应用程序中包含这样的广告SDK,它将提供广告网络通过其应用程序滥用iOS API。
第三种情况将涉及通过未加密的连接下载远程JavaScript代码的JSpatch启用的应用程序。这将允许在开放无线网络或通过黑客路由器上拦截应用程序的攻击者,或者通过黑客路由器来修改JavaScript代码。
“Jspatch技术可能允许近算法以有效地规避应用商店审查过程所施加的保护,并在未经用户同意的情况下对设备进行任意和强大的动作,”Fireeye研究人员得出结论。“代码的动态性质使得在行动中捕捉恶意演员非常困难。”