SDK伪造:开源与闭源SDK伪造:开源与闭源

对于移动营销人员来说,SDK伪造(SDK Spoofing)是发展最为迅速的威胁之一,而我们也经常听

对于移动营销人员来说,SDK伪造(SDK Spoofing)是发展最为迅速的威胁之一,而我们也经常听到对于我们如何确定我们的开源SDK能有效预防此类假量的疑问。在这篇短文中,我们将介绍 Adjust 如何保证我们的数据安全,并且说明为何闭源SDK的伪造难度并非高于开源 SDK。

如果您并不了解什么是SDK伪造,可以浏览Adjust官网了解更多信息。

简而言之,借由查看应用通过归因SDK所发送的数据和归因公司服务器中的数据,欺诈者就能决定他们需要发送什么信息以“欺骗”归因公司来接受他们的伪造数据。

一旦成功,欺诈者便可以创建无限量、看似真实的用户和应用内事件,甚至无需在任何手机上运行实际的应用。

如今的欺诈者可以得到真实的设备ID,这意味着,除非您使用了加密签名来确保数据是从应用中发送的,否则他们产生的虚假数据看起来就如同真实数据ㄧ般。

我们的安全专家Abdullah在他的文章中谈到了这一基本理念。

正因为Adjust SDK是开源的,下面的问题更值得我们深究:如何保护我们用来验证请求的代码,不会轻易遭他人读取并用来复制其行为。

Adjust之所以提供开源SDK,是因为我们确信客户有权了解他们的应用中发生了什么。除此之外,开源SDK促使我们与客户的合作,创建市场上最稳定且不会崩溃的SDK。事实上,归因SDK应该实现开源化的原因有很多,我们在之前的文章中已有所着墨。

Adjust SDK如何保证安全?

为了使用Adjust进行跟踪,客户需要先将Adjust SDK集成到他们的应用中。但是为了保护我们的客户免受伪造影响,我们还要求客户另外下载一个单独的库(library),并将其插入Adjust SDK。如果没有这个库,SDK并不安全,而我们也不会接受来自它的数据。

此库可以创建加密签名,而该签名将附加到从SDK发送的每个数据请求中。它可以防御所有已知的攻击方法,并由我们的安全专家团队不断更新。每个库都是不同的,这意味着如果一个应用受到攻击,相同的攻击方法不会在世界上的任何其他应用上起作用。此外,我们的安全团队会持续更新该库,因此任何破坏安全性的新尝试都将很快失效。

库的代码是随机生成的,之后经过特殊的编译过程,使攻击者无法对库进行反向工程以读取代码

其他SDK是否更加安全?

大多数其他归因SDK都是闭源的,不会向使用它们的客户显示其代码,但这是否使它们更加安全?

答案是并不会。

在我们对SDK伪造的研究中,我们检查了市场中的闭源归因SDK,以了解它们在没有加密签名的情况下的安全性。遗憾的是,我们发现在每个案例中,这些SDK用来签署数据请求的函数都能非常轻易地以人类可读的形式提取,因此要攻破它是轻而易举。

实际上,对于某些SDK,我们的研究人员只花了几分钟就能找到并破解它们的签名功能——也就是说SDK的保护在短短的时间内便被完全破除。这会导致非常严重的后果,因为一旦攻击者这样做,他们就可以使用该签名来使虚假数据看起来完全真实。

简而言之,攻击者可以轻松欺骗所有现行的闭源解决方案。

客户插入到SDK的自定义库里,并不包含归因SDK的全部函数,只包含防止伪造所必须的相关函数。这意味着我们可以用完全不同的方式编写、编译和保护它。

出于安全考量,我们无法透露用于保护库的所有方法,但是我们很乐意为客户与我们的网络安全专家之间连线,并提供进一步的解释。

总而言之,保护开源SDK的安全性是绝对可行的,另一方面,闭源SDK不会遭受伪造的说法也是不正确的。

关于 Adjust

Adjust是行业领先的移动数据监测和防欺诈平台,为全球移动应用营销商提供高质量的分析、监测、防欺诈及网络完全解决方案,从而帮助他们更精准、更快速地作出营销决策。

Adjust是全球主要平台的营销合作伙伴,包括Facebook、Google、Snap、Twitter、Line和腾 讯。总计已有25,000 余个应用选择了Adjust 的解决方案以优化其市场表现。Adjust 创立于2012年,现已在柏林、纽约、旧金山、圣保罗、巴黎、伦敦、莫斯科、伊斯坦布尔、特拉维夫、首尔、上海、北京、东京、班加罗尔和新加坡均设有全球办公室。

Adjust近期收购了数据聚合平台Acquired.io和网络安全与人工智能初创公司Unbotify。在2019年2月,与日本领先的移动营销代理商Adways达成战略合作伙伴关系。这将助力Adjust达成统一广告主之营销工作,打造一流的产品的目标。

打开APP阅读更多精彩内容