Google 使用机器学习识别侵扰式 Android 应用程序

  • Sergio De Simone
  • 猫儿不熊

2017 年 7 月 19 日

话题:移动GoogleAndroid语言 & 开发

Google 安全工程师 Martin Pelikan,Giles Hogben 和 Ulfar Erlingsson写到,Google 使用聚类算法自动分析 Android 应用,并检测哪些应用可以被认为是侵扰式应用程序。

侵扰式应用程序需要用户授予比正常运行所需功能更多的权限。Google 工程师解释说,例如着色书应用程序通常不需要访问地理位置数据。并非所有应用在实现其功能时都会用到的权限还包括访问个人数据,如摄像头、通讯录等。如果超出了必须的需求,要求更多的权限,这可能是一个潜在的有害因素,因为您不能真正了解这些数据被用来做什么。有害应用程序的常见行为的例子有:后门、间谍软件、数据收集,拒绝服务等,其他例子还有很多

Google 跟踪检测侵扰式应用程序的方法是基于功能对等组(functional peer group)的概念,即一组共享类似功能的应用程序,应该需要一组类似的授权。一旦有了这些应用分组,就可以检测每个组中的异常应用程序,也就是需要比类似应用程序更多权限的应用程序。该方法需要监控 Android Play 商店,收集详细的统计信息和发掘用户期望,以便自动确定应用程序组。事实上,根据 Google 工程师的说法,固定分类和手工管理将是乏味且容易出错的。

为了使这种方法更有效,Google 使用深度学习来识别应用分组,根据应用的元数据,这些应用会具有类似的特点,元数据会包括文本描述和安装指标。一旦定义了对等组,每个组内都将使用异常检测来识别异常应用程序,即显示所需权限与其功能之间不匹配的应用程序。然后再检查异常应用程序,以确定哪些应用程序实际上是侵扰性的。该信息还用于确定哪些应用程序应该被升级,以及与潜在的侵扰性应用程序的开发人员联系,并帮助他们提高应用程序的隐私和安全。

查看英文原文Google Uses Machine Learning to Identify Intrusive Android Apps


感谢张卫滨对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ@丁晓昀),微信(微信号:InfoQChina)关注我们。

移动GoogleAndroid语言 & 开发