【技术实现步骤摘要】
【国外来华专利技术】易受攻击的应用程序检测
本公开一般涉及安全工具,并且更具体地涉及检测使用软件库的应用程序的漏洞。
技术介绍
紧凑的,特征特定的软件应用程序(通常称为“应用程序”(“apps”))已经在各种计算设备上普遍存在,包括智能电话,平板电脑,电视和其他设备,在此统称为用户设备(UD)。随着不同平台上可用应用程序的数量不断增加,当存储在计算设备上时,它们可能代表重大的安全风险。鉴于某些应用程序平台的开放性,应用程序可能来自各种各样的来源,并且可能无法对漏洞进行严格测试。漏洞的一个潜在来源是软件库,开放源代码等。除了任何给定编程平台(如Java)支持的标准库之外,程序开发人员还可以使用许多其他私有和开放库。使用这些库对于缩短开发时间和增加功能和通用接口的可用性具有吸引力。但是,并非所有库都是安全的。实际上,由于库可能被广泛分发,因此它们可能是黑客和/或恶意软件易于访问的攻击源。邪恶的程序员可能故意分发他们知道如何利用的库。在某些情况下,程序员可能会不小心使用具有已知漏洞的库。当在应用程序中使用这样的库时,库通常静态链接到应用程序。因此,可以将库编译成分发给用户设备的可执行包,从而使潜在的漏洞长久保持于其它UD中。当将这些库编译到可执行软件应用程序中,库的实际代码可能混淆。在这方面,应用程序开发者通常不需要识别他们使用的库。即使编程语言支持人类可读代码中的分发,应用程序也经常被混淆以节省空间和/或防止反向工程,这使得任何集成库难以检测。因此,最终用户下载和使用应用程序可能不知道具有安全性问题的库已包含在他们在其UD上使用的应用程序中。关于这些考虑和其他考虑,本公开已经写好 ...
【技术保护点】
1.一种计算设备,包括:处理器;耦合到处理器的网络接口,以实现通过网络的通信;耦合到处理器的用于内容和编程的存储设备;存储在存储设备中的漏洞引擎软件,其中由处理器执行的软件配置计算设备以执行以下操作:通过网络从第一一个或多个位置下载库;将库存储在数据库中;为每个库,提取库的特征集,并将库的特征集存储在数据库的库索引表中;为每个库,确定库是否构成安全问题并在库索引表中标记构成安全问题的每个库;通过网络从第二一个或多个位置下载应用程序;将应用程序存储在数据库中;为每个应用程序,提取应用程序的特征集,并将该应用程序的特征集存储在数据库的应用程序索引表中;为每个应用程序,将应用程序的特征集与库索引表中每个库的特征集进行比较,以识别与应用程序相关的库;和为每个应用程序,在数据库的漏洞参考表中存储应用程序的名称以及相关库的名称。
【技术特征摘要】
【国外来华专利技术】2016.06.23 US 15/191,3141.一种计算设备,包括:处理器;耦合到处理器的网络接口,以实现通过网络的通信;耦合到处理器的用于内容和编程的存储设备;存储在存储设备中的漏洞引擎软件,其中由处理器执行的软件配置计算设备以执行以下操作:通过网络从第一一个或多个位置下载库;将库存储在数据库中;为每个库,提取库的特征集,并将库的特征集存储在数据库的库索引表中;为每个库,确定库是否构成安全问题并在库索引表中标记构成安全问题的每个库;通过网络从第二一个或多个位置下载应用程序;将应用程序存储在数据库中;为每个应用程序,提取应用程序的特征集,并将该应用程序的特征集存储在数据库的应用程序索引表中;为每个应用程序,将应用程序的特征集与库索引表中每个库的特征集进行比较,以识别与应用程序相关的库;和为每个应用程序,在数据库的漏洞参考表中存储应用程序的名称以及相关库的名称。2.根据权利要求1所述的计算设备,其中,所述漏洞引擎软件的执行进一步配置所述计算设备以,对每个应用程序,执行操作包括:当确定与应用程序相关的一个或多个库中的至少一个被标记为有安全问题时,将安全问题的通知发送到以下中的至少一个:(i)用户设备(UD),其具有应用程序和所述一个或多个库中的至少一个已被标记为具有安全问题,以及(ii)应用程序的授权代表。3.根据权利要求2所述的计算设备,其中,所述通知被配置为禁用UD上的应用程序。4.根据权利要求1所述的计算设备,其中,漏洞引擎软件的执行进一步配置计算设备执行操作,包括:通过网络从用户设备(UD)接收请求以验证目标应用程序的安全性,其中请求包括目标应用程序的标识符;和当确定目标应用程序未包含在漏洞参考表中:从以下中的至少一个请求目标应用程序:(i)UD和(ii)应用程序商店;当接收到目标应用程序:将目标应用程序存储在数据库中;提取目标应用程序的特征集,并将目标应用程序的特征集存储在数据库的应用程序索引表中;将目标应用程序的特征集与库索引表中每个库的特征集进行比较,以识别与目标应用程序有关的库;和在数据库的漏洞参考表中存储目标应用程序的名称和关联库的名称。5.根据权利要求4所述的计算设备,其中,所述漏洞引擎软件的执行进一步配置所述计算设备以执行操作,包括:当确定与目标应用程序相关联的库被标记为有安全问题时,向UD发送安全问题的通知。6.根据权利要求4所述的计算设备,其中,从应用程序开发者的UD接收验证目标应用程序的安全性的请求,并且目标应用程序是新应用程序。7.根据权利要求4所述的计算设备,其中,所述请求包括所述目标应用程序的摹本。8.根据权利要求4所述的计算设备,其中,目标应用程序的标识符包括目标应用程序的名称及其版本。9.根据权利要求1所述的计算设备,其中,所述漏洞引擎软件的执行进一步配置所述计算设备执行以下操作,包括:当确定一个或多个库中的至少一个被标记为有安全问题时,向库的授权代表发送安全问题的通知。10.根据权利要求1所述的计算设备,其中从每个应用程序提取的特征集包括以下中的至少一个:在应用程序中使用时免于混淆的库的特性;和该应用程序的一个版本。11.根据权利要求1所述的计算设备,其中从每个库提取的特征集包括在应用程序中使用时免于混淆的独特特征。12.一种非易失性计算机可读存储介质,其有形地体现为具有计算机可读指令的计算机可读程序代码,所述计算机可读指令在被执行时使计算机设备执行确定软件漏洞的方法,该方法包括:通过网络从第一一个或多个位置下载库;将库存储在数据库中;为每个库,...
【专利技术属性】
技术研发人员:O特里普,SA贝斯特,P苏特,
申请(专利权)人:国际商业机器公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。