Google Play中的中国制造无人机应用吓坏了安全研究人员

2020-07-24 20:02:14

研究人员在两份报告中表示,直到最近,安卓版的DJI Go 4-一款让用户可以控制无人机的应用-一直在秘密收集敏感的用户数据,可以下载和执行开发者选择的代码。这两份报告质疑了一个拥有100多万次Google Play下载量的程序的安全性和可信度。

这款应用被用来控制和收集中国大疆(DJI)制造的无人机的近乎实时的视频和飞行数据。大疆是世界上最大的商用无人机制造商。Play Store显示,它的下载量超过100万次,但由于谷歌披露数字的方式,真实数字可能高达500万次。这款应用程序的评级为三星半,超过5.2万名用户可能总共打出了5颗星。

两周前,安全公司Synactive对这款应用进行了反向工程。周四,另一家安全公司Grimm公布了自己的独立分析结果。至少,两人都发现这款应用绕过了谷歌的条款,直到最近,这款应用还秘密收集了大量敏感的用户数据,并将其发送到位于中国大陆的服务器。最糟糕的情况是,开发人员滥用难以识别的功能来监视用户。

能够通过中国社交媒体平台微博提供的软件开发工具包中的自我更新功能或专用安装程序,下载和安装开发人员选择的任何应用程序。这两个功能都可以在游戏之外下载代码,这违反了谷歌的条款。

一个最近移除的组件,它收集了大量电话数据,包括IMEI、IMSI、运营商名称、SIM序列号、SD卡信息、操作系统语言、内核版本、屏幕大小和亮度、无线网络名称、地址和MAC以及蓝牙地址。这些细节和更多细节被发送给MobTech,该公司是直到该应用程序最新发布之前一直使用的软件开发工具包的制造商。

每当用户滑动应用程序关闭它时,自动重启。重新启动会导致应用程序在后台运行,并继续发出网络请求。

本月的报告是在美军出于保密原因禁止使用DJI无人机三年后发布的。今年1月,内政部出于对数据可能被发回大陆的担忧,停飞了大疆(DJI)和其他中国制造商的无人机。

DJI官员说,研究人员发现了“假设的漏洞”,两份报告都没有提供任何证据表明它们曾经被利用过。

他们在一份声明中写道:“这些报告中描述的应用程序更新功能服务于一个非常重要的安全目标,即减少使用被黑客攻击的应用程序,这些应用程序试图覆盖我们的地理围栏或海拔限制功能。”地理围栏是联邦航空管理局(Federal Aviation Administration)或其他当局禁止无人机穿越的虚拟障碍。无人机使用GPS、蓝牙和其他技术来执行限制。

谷歌发言人说,公司正在调查这些报道。研究人员表示,iOS版的这款应用程序不包含混淆或更新机制。

研究人员说,在几个方面,DJI Go 4 for Android模仿了僵尸网络和恶意软件的行为。例如,自动更新和自动安装组件都会调用开发人员指定的服务器,并等待下载和安装代码或应用程序的命令。这些混淆技术与恶意软件用来阻止研究人员发现其真正目的的技术非常相似。其他相似之处包括始终在线状态和收集的敏感数据,这些数据与无人机飞行的既定目的无关或不必要。

更令人担忧的是使用该应用程序所需的权限范围,包括访问联系人、麦克风、摄像头、位置、存储和更改网络连接的能力。研究人员表示,如此庞大的权限意味着,大疆或微博的服务器几乎完全控制了用户的设备。大疆和微博都位于一个以政府支持的间谍活动闻名的国家。

两个研究小组都表示,他们没有看到应用程序安装程序实际使用过的证据,但他们确实看到了自动更新机制触发并从DJI服务器下载新版本并进行安装。这两个功能的下载URL都是动态生成的,这意味着它们由远程服务器提供,并且可以随时更改。

这两家公司的研究人员都进行了实验,表明这两种机制都可以用来安装任意应用程序。虽然程序是自动交付的,但研究人员仍然必须单击他们的批准才能安装程序。

这两份研究报告都没有说这款应用程序实际上是针对个人的,两份报告都指出,随着当前版本4.3.36的发布,IMSI和其他数据的收集已经结束。然而,这些团队并不排除邪恶用途的可能性。格林研究人员写道:

在最好的情况下,这些功能仅用于安装用户可能感兴趣的正版应用程序,例如建议其他大疆或微博应用程序。在这种情况下,更常见的技术是通过从应用程序内链接到Google Play Store应用程序来在Google Play Store应用程序中显示附加应用程序。然后,如果用户选择,他们可以直接从Google Play商店安装应用程序。类似地,自更新组件可以仅用于向用户提供最新版本的应用程序。不过,这可以通过Google Play商店更轻松地实现。

在最坏的情况下,这些功能可能被用来通过恶意更新或应用程序瞄准特定用户,这些恶意更新或应用程序可能被用来利用用户的手机。考虑到从用户设备中检索到的用户信息量,大疆或微博将很容易识别出特定的感兴趣目标。利用这些目标的下一步将是建议一个新的应用程序(通过微博SDK),或者使用专门为利用他们的设备而构建的自定义版本更新DJI应用程序。一旦他们的设备被利用,它可以被用来从手机收集额外的信息,通过手机的各种传感器跟踪用户,或者被用作攻击手机WiFi网络上的其他设备的跳板。这种定向系统将允许攻击者更隐蔽地利用他们的漏洞,而不是更嘈杂的技术,例如利用访问网站的所有设备。

DJI官员发表了一份详尽而有力的回应,称报告中详细说明的所有功能和组件要么服务于合法目的,要么被单方面删除,没有被恶意使用。

声明称:“我们的系统设计使DJI客户能够完全控制如何或是否共享他们的照片、视频和飞行日志,我们支持创建无人机数据安全行业标准,为所有无人机用户提供保护和信心。”它提供了以下逐点讨论:

当我们的系统检测到DJI应用程序不是官方版本时-例如,如果它已被修改为删除了关键的飞行安全功能,如地理围栏或高度限制-我们会通知用户,并要求他们从我们的网站下载该应用程序的最新官方版本。在未来的版本中,用户还可以从Google Play下载官方版本,如果它在他们的国家可用的话。如果用户不同意这样做,出于安全原因,他们的未经授权(被黑客攻击)的应用程序版本将被禁用。

在过去,对DJI控制应用程序的未经授权修改引起了人们的担忧,这项技术旨在帮助确保我们的全面空域安全措施得到一致应用。

由于我们的娱乐客户经常希望在社交媒体上与朋友和家人分享他们的照片和视频,因此大疆通过他们的原生SDK将我们的消费者应用程序与领先的社交媒体网站集成在一起。我们必须将有关这些SDK安全性的问题直接提交给它们各自的社交媒体服务。不过,请注意,只有当我们的用户主动打开SDK时,才会使用它。

DJI Go 4在没有用户输入的情况下无法重启,我们正在调查为什么这些研究人员声称它会这样做。到目前为止,我们还没有能够在我们的测试中复制这种行为。

这些报告中概述的假设漏洞最好被描述为潜在的漏洞,我们已经通过我们的Bug Bounty计划主动尝试识别这些漏洞,安全研究人员在该计划中负责任地披露他们发现的安全问题,以换取高达30,000美元的报酬。由于所有DJI飞行控制应用程序都设计为在任何国家都可以运行,我们能够改进我们的软件,这要归功于世界各地的研究人员的贡献,就像这份名单上所看到的那样。

这些报告中确定的MobTech和Bugly组件之前已从DJI飞行控制应用程序中删除,此前研究人员发现它们存在潜在的安全漏洞。同样,没有证据表明它们曾被利用,它们也没有用于大疆为政府和专业客户提供的飞行控制系统。

DJI GO4应用程序主要用于控制我们的娱乐无人机产品。DJI为政府机构设计的无人机产品不会向DJI传输数据,只与DJI Pilot APP的非商用版本兼容,这些无人机的软件只能通过离线流程更新,这意味着这份报告与打算用于政府敏感用途的无人机无关。博思艾伦汉密尔顿公司(Booz Allen Hamilton)最近发布的一份安全报告对这些系统进行了审计,没有发现任何证据表明这些无人机收集的数据或信息正在传输到DJI、中国或任何其他意想不到的方。

这只是美国国家海洋和大气管理局、美国网络安全公司Kivu Consulting、美国内政部和美国国土安全部审查后对DJI产品安全性的最新独立验证。

长期以来,DJI一直呼吁为无人机数据安全制定行业标准,我们希望这一过程将继续为有安全担忧的无人机用户提供适当的保护。如果这类旨在确保安全的功能值得关注,则应以客户可以指定的客观标准来解决。DJI致力于保护无人机用户数据,这就是为什么我们设计我们的系统,以便无人机用户可以控制他们是否与我们共享任何数据。我们也致力于安全,努力提供技术解决方案来确保空域安全。

这项研究和大疆的回应突显了谷歌目前应用程序采购系统的混乱。审查效率低下,旧版Android的权限粒度不足,以及操作系统的开放性,使得在Play Store中发布恶意应用变得很容易。同样的事情也使得人们很容易将合法功能误认为恶意功能。

安装了DJI Go 4 for Android的用户可能希望至少在谷歌宣布调查结果之前将其删除(据报道,自动重启行为意味着暂时不足以简单地限制该应用程序的使用)。最终,这款应用的用户发现自己处于与TikTok类似的境地,TikTok也引起了怀疑,这既是因为一些人认为一些行为粗略,也是因为它属于中国的ByteDance。

毫无疑问,许多与中国无关的Android应用程序的违规行为与大疆Go 4和TikTok类似或更严重。那些想要在安全方面犯错误的人应该避开他们中的绝大多数。