PhoneGap框架的应用程序的漏洞检测方法及装置制造方法

文档序号:6546770阅读:232来源:国知局
PhoneGap框架的应用程序的漏洞检测方法及装置制造方法
【专利摘要】本发明实施例公开了PhoneGap框架的应用程序的漏洞检测方法,包括:获取应用程序所基于的PhoneGap框架的版本信息和白名单配置信息,其中,所述白名单配置信息中包括所述应用程序具有访问权限的网址;根据所述版本信息和所述白名单配置信息,确定所述应用程序的漏洞类型。本发明实施例还公开了PhoneGap框架的应用程序的漏洞检测装置。采用本发明实施例,可自动检测基于PhoneGap框架的应用程序是否存在白名单绕过漏洞和/或白名单配置不当漏洞。
【专利说明】PhoneGap框架的应用程序的漏洞检测方法及装置
【技术领域】
[0001]本发明涉及信息安全【技术领域】,尤其涉及PhoneGap框架的应用程序的漏洞检测方法及装置。
【背景技术】
[0002]PhoneGap是目前唯一一款支持7个平台的开源开发框架,旨在让开发者使用HTML (Hyper Text Mark-up Language,超文本标记语言)、Javascript、CSS (Cascading StyleSheet,层叠样式表)等Web APIs开发跨平台的应用程序,开发者使用普通的web技术即可轻松调用不同移动平台的API接口,因此,越来越多的web开发者选择使用PhoneGap开发移动应用程序。然而,若使用不当,采用基于PhoneGap框架的应用程序很容易存在白名单绕过漏洞或白名单配置不当漏洞,黑客利用该类漏洞使终端可以访问一些非法网站,从而通过访问该网站后自动执行一些黑客命令,如后台下载恶意软件、获取联系人信息等。因此,对使用基于PhoneGap框架的应用程序进行该类漏洞的检测尤为重要。

【发明内容】

[0003]本发明实施例提供了 PhoneGap框架的应用程序的漏洞检测方法及装置,可自动检测基于PhoneGap框架的应用程序是否存在白名单绕过漏洞和/或白名单配置不当漏洞。
[0004]本发明实施例提供PhoneGap框架的应用程序的漏洞检测方法,包括:
[0005]获取应用程序所基于的PhoneGap框架的版本信息和白名单配置信息,其中,所述白名单配置信息中包括所述应用程序具有访问权限的网址;
[0006]根据所述版本信息和所述白名单配置信息,确定所述应用程序的漏洞类型。
[0007]其中,所述漏洞类型包括:
[0008]白名单绕过漏洞和/或白名单配置不当漏洞。
[0009]其中,所述根据所述版本信息和所述白名单配置信息,确定所述应用程序的漏洞类型,包括:
[0010]将所述版本信息与预设版本信息进行比较,确定所述应用程序是否存在所述白名单绕过漏洞。
[0011]其中,所述根据所述版本信息和所述白名单配置信息,确定所述应用程序的漏洞类型,包括:
[0012]对所述白名单配置信息进行解析,确定所述应用程序是否存在所述白名单配置不当漏洞。
[0013]其中,所述对所述白名单配置信息进行解析,确定所述应用程序是否存在所述白名单配置不当漏洞,包括:
[0014]识别所述白名单配置信息是否为特定字符;
[0015]若是,确定所述应用程序存在所述白名单配置不当漏洞。
[0016]其中,所述特定字符包括或[0017]其中,所述识别所述白名单配置信息是否为特定字符,还包括:
[0018]若识别出所述白名单配置信息不是所述特定字符,将所述白名单配置信息中具有访问权限的网址与预设的黑名单数据库进行比对,若所述具有访问权限的网址中存在至少一条黑名单记录,确定所述应用程序存在所述白名单配置不当漏洞。
[0019]其中,在所述获取应用程序所基于的PhoneGap框架的版本信息和白名单配置信息之前,所述方法还包括:
[0020]对所述应用程序进行解包处理,获取所述应用程序的配置文件,所述配置文件包括所述应用程序所基于的PhoneGap框架的版本信息和白名单配置信息。
[0021]其中,所述方法还包括:
[0022]保存所述应用程序的检测结果,并标记所述应用程序已检测。
[0023]其中,所述方法还包括:
[0024]获取参数信息,将所述参数信息和所述检测结果上传至服务器,其中,所述参数信息包括所述应用程序所在终端的标识信息和所述终端的操作系统版本信息。
[0025]其中,所述方法还包括:
[0026]将所述至少一条黑名单记录从所述白名单配置信息中删除。
[0027]相应的,本发明实施例提供PhoneGap框架的应用程序的漏洞检测装置,包括:
[0028]获取模块,用于获取应用程序所基于的PhoneGap框架的版本信息和白名单配置信息,其中,所述白名单配置信息中包括所述应用程序具有访问权限的网址;
[0029]确定模块,用于根据所述版本信息和所述白名单配置信息,确定所述应用程序的漏洞类型。
[0030]其中,所述漏洞类型包括:
[0031]白名单绕过漏洞和/或白名单配置不当漏洞。
[0032]其中,所述确定模块包括:
[0033]第一确定单元,用于将所述版本信息与预设版本信息进行比较,确定所述应用程序是否存在所述白名单绕过漏洞。
[0034]其中,所述确定模块包括:
[0035]第二确定单元,用于对所述白名单配置信息进行解析,确定所述应用程序是否存在所述白名单配置不当漏洞。
[0036]其中,所述第二确定单元还用于识别所述白名单配置信息是否为特定字符;若是,确定所述应用程序存在所述白名单配置不当漏洞。
[0037]其中,所述特定字符包括“ ”或“.* ”。
[0038]其中,所述第二确定单元还用于:
[0039]若识别出所述白名单配置信息不是所述特定字符,将所述白名单配置信息中具有访问权限的网址与预设的黑名单数据库进行比对,若所述具有访问权限的网址中存在至少一条黑名单记录,确定所述应用程序存在所述白名单配置不当漏洞。
[0040]其中,所述装置还包括:
[0041]解包模块,用于对所述应用程序进行解包处理,获取所述应用程序的配置文件,所述配置文件包括所述应用程序所基于的PhoneGap框架的版本信息和白名单配置信息。
[0042]其中,所述装置还包括:[0043]保存模块,用于保存所述应用程序的检测结果,并标记所述应用程序已检测。
[0044]其中,所述装置还包括:
[0045]上传模块,用于获取参数信息,将所述参数信息和所述检测结果上传至服务器,其中,所述参数信息包括所述应用程序所在终端的标识信息和所述终端所处操作系统的版本信息。
[0046]其中,所述装置还包括:
[0047]删除模块,用于将所述至少一条黑名单记录从所述白名单配置信息中删除。
[0048]实施本发明实施例,通过获取应用程序所基于的PhoneGap框架的版本信息和白名单配置信息,判断所述版本信息是否低于预设版本信息和/或所述白名单配置信息是否为特定字符来确定应用程序是否存在白名单绕过漏洞和/或白名单配置不当漏洞。采用本发明实施例,可自动检测基于PhoneGap框架的应用程序是否存在白名单绕过漏洞和/或白名单配置不当漏洞。
【专利附图】

【附图说明】
[0049]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0050]图1是本发明实施例提供的PhoneGap框架的应用程序的漏洞检测方法的流程示意图;
[0051]图2是本发明实施例提供的PhoneGap框架的应用程序的漏洞检测方法的另一流程不意图;
[0052]图3是本发明实施例提供的PhoneGap框架的应用程序的漏洞检测装置的结构示意图;
[0053]图4是图3提供的其中一种确定模块的结构示意图;
[0054]图5是本发明实施例提供的PhoneGap框架的应用程序的漏洞检测装置的结构示意图。
【具体实施方式】
[0055]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0056]请参见图1,图1是本发明实施例提供的PhoneGap框架的应用程序的漏洞检测方法的流程示意图,在本发明实施例中,该方法包括:
[0057]SlOl:获取应用程序所基于的PhoneGap框架的版本信息和白名单配置信息,其中,所述白名单配置信息中包括所述应用程序具有访问权限的网址。
[0058]—般的,在基于PhoneGap框架的应用程序中,PhoneGap框架本身会自动给该应用程序设置一个配置文件,其中,配置文件中记录有该应用程序允许访问的网址或域名。[0059]在本发明实施例中,该应用程序具有访问权限的网址列表被称为白名单,可以理解的,被直接允许访问的网站列表称为白名单;相反地,被直接阻塞访问的网站列表称为黑名单。应用程序需要访问网页时,若待访问网页的网址与白名单不在同一域名服务器下,则应用程序自动拒绝访问该网页。
[0060]默认情况下,PhoneGap框架配置的白名单信息会使应用程序可以访问所有网址,即在配置文件中将白名单配置信息设置为星号或表明该应用程序可以访问任意网站,包括一些恶意网站。因此,开发者因根据具体应用程序的实际需要,重新配置该白名单配置信息中应用程序具有访问权限的网址,避免应用程序访问恶意网站,例如:将白名单配置信息默认的或*”设置为WWW.baidu.com,说明该应用程序可以访问www.baidu.com域名下的所有网站。值得注意的是,PhoneGap框架在不断完善的过程中,低版本(低于3.1.0版本)的PhoneGap框架本身存在风险,即PhoneGap框架本身存在白名单绕过漏洞,换句话说,基于该低版本的PhoneGap框架开发的应用程序不管白名单配置是否得当,都可以访问一些非法网页,而黑客利用该非法网页可以使终端执行一些非法操作,给终端带来风险。因此,开发者应该使用不低于版本号3.1.0的PhoneGap框架进行应用程序的开发,避免PhoneGap框架本身给应用程序带来风险。
[0061]作为一种可能的实施方式,对应用程序进行解包处理,获取应用程序的配置文件,其中,配置文件中包括应用程序所基于的PhoneGap框架的版本信息和白名单配置信息。然后,根据配置文件获取应用程序所基于的PhoneGap框架的版本和白名单配置信息。
[0062]S102:根据所述版本信息和所述白名单配置信息,确定所述应用程序的漏洞类型。
[0063]具体的,对SlOl中获取到的版本信息和白名单配置信息进行解析,进一步确定应用程序的漏洞类型,其中,所指的漏洞类型包括:白名单绕过漏洞和/或白名单配置不当漏洞。例如:根据PhoneGap框架目前为止所发布的版本信息情况来看,可以将预设版本信息设置为PhoneGap框架的3.1.0版本。若应用程序所基于的PhoneGap框架的版本信息低于预设版本信息,其中,预设版本为PhoneGap框架的3.1.0版本,则可以确定该应用程序存在白名单绕过漏洞,说明应用程序所基于的PhoneGap框架版本过低,导致该应用程序因PhoneGap框架本身存在的问题而存在白名单绕过漏洞,即不管如何配置白名单信息,黑客都可以捕捉到该漏洞而执行一些非法操作。若获取到的白名单配置信息为特定字符,则可以确定该应用程序存在白名单配置不当漏洞,说明该应用程序允许访问一些原本不应该具有访问权限的网址,例如:带病毒的网址,从而导致黑客捕捉到该漏洞后利用该配置不当的网址执行一些非法操作。若应用程序所基于的PhoneGap框架的版本低于预设版本和白名单配置信息为特定字符,则应用程序存在白名单绕过漏洞和白名单配置不当漏洞,不仅应用程序所基于的PhoneGap框架版本过低,而且白名单配置不当。若应用程序所基于的PhoneGap框架的版本不低于预设版本且白名单配置信息不是特定字符,则进一步的根据白名单配置信息中具有访问权限的网址来确定该应用程序是否存在白名单配置不当漏洞。例如:可以预先设置一个黑名单数据库,该黑名单数据库中记录有大量非法网页的网址,即黑名单,将白名单配置信息中具有访问权限的网址与预设的黑名单数据库中的每一条黑名单进行比对,若所述具有访问权限的网址中存在至少一条黑名单记录,确定所述应用程序存在所述白名单配置不当漏洞。相应的,若应用程序所基于的PhoneGap框架的版本不低于预设版本、白名单配置信息不是特定字符,且白名单配置信息中具有访问权限的网址不具有预设的黑名单数据库中的任意一条黑名单记录,则确定该应用程序不存在白名单绕过漏洞和白名单配置不当漏洞。
[0064]优选的,该特定字符为星号“ ”或“.* ”。
[0065]例如:假设应用程序所基于的PhoneGap框架的版本为2.3.0版本,白名单配置为“*”,则根据SlOl获取到应用程序所基于的PhoneGap框架的版本和白名单配置信息后,可知:该应用程序所基于的PhoneGap框架的版本过低存在白名单绕过漏洞,且白名单配置信息为特定字符“*”,说明该应用程序未单独对白名单配置信息进行重新设置,该应用程序同时也存在白名单配置不当漏洞。因此,若开发者在应用程序发布前,对该应用程序进行该类漏洞的检测,则开发者可以根据漏洞检测结果对应用程序进行相应的修改后再进行发布,给开发者提供指导作用,同时降低终端使用该应用程序的风险。
[0066]例如:假设待检测应用程序所基于的PhoneGap框架的版本为3.3.0版本,白名单配置信息中其中一条具有访问权限的网址为“WWW.baid.com” (备注:假设开发者的本意是想让应用程序可以访问WWW.baidu.com域名下的所有网页,但误写为www.baid.com,而恰好预设的黑名单数据库中包括www.baid.com这条黑名单记录),则根据SlOl获取到待检测应用程序所基于的PhoneGap框架的版本信息和白名单配置信息后,可知:该应用程序不存在白名单绕过漏洞,但由于白名单配置信息中具有访问权限的网址存在一条黑名单记录,则确定该应用程序存在白名单配置不当漏洞。在本例子中,应用程序本应该拒绝访问该网址但却因为白名单配置不当而导致应用程序可以访问该网址时,黑客很容易获取该白名单配置不当漏洞而利用网址“www.baid.com”或其它类似网址执行一些恶意操作,给终端带来风险。因此,作为一种可能的实施方式,将所述至少一条黑名单记录从所述白名单配置信息中删除,禁用该黑名单记录的访问权限,保护终端。
[0067]值得说明的是,以上所描述的根据版本信息和白名单配置信息确定应用程序的漏洞类型仅是本发明实施例提供的一种优选的实施方式,具体的,还可以包括其它的实施方式,本发明实施例对此并不作限制。
[0068]在本发明实施例所描述的基于PhoneGap框架的应用程序的漏洞检测方法中,通过获取应用程序所基于的PhoneGap框架的版本和白名单配置信息,判断所述版本是否低于预设版本和/或所述白名单配置信息是否为特定字符或所述白名单配置信息中具有访问权限的网址是否为黑名单来确定应用程序是否存在白名单绕过漏洞和/或白名单配置不当漏洞。采用本发明实施例,可自动检测基于PhoneGap框架的应用程序是否存在白名单绕过漏洞和/或白名单配置不当漏洞。
[0069]请参见图2,图2是本发明实施例提供的PhoneGap框架的应用程序的漏洞检测方法的另一流程示意图,在本发明实施例中,该方法包括:
[0070]S201:对应用程序进行解包处理,获取所述应用程序的配置文件。
[0071]其中,配置文件包括应用程序所基于的PhoneGap框架的版本信息和白名单配置信息。解包即压包的反过程,将压包文件还原成原来的初始文件,扫描应用程序包括的所有文件,获取配置文件。
[0072]S202:获取所述应用程序所基于的PhoneGap框架的版本信息和白名单配置信息。
[0073]具体的,根据已获取到的配置文件获取应用程序所基于的PhoneGap框架的版本信息和白名单配置信息,其中,所述白名单配置信息中包括所述应用程序具有访问权限的网址。
[0074]S203:若所述版本低于预设版本,则确定所述应用程序存在白名单绕过漏洞。
[0075]具体的,根据S202获取到的应用程序所基于的PhoneGap框架的版本信息,将所述版本信息与预设版本信息进行比较,从而判断该应用程序是否存在白名单绕过漏洞,若应用程序所基于的PhoneGap框架的版本低于预设版本,其中,预设版本为PhoneGap框架的
3.1.0版本,则可以确定该应用程序存在白名单绕过漏洞。
[0076]S204:对所述白名单配置信息进行解析,确定所述应用程序是否存在所述白名单配置不当漏洞。
[0077]具体的,根据S202获取到的应用程序的白名单配置信息,首先识别所述白名单配置信息是否为特定字符,若是,则确定该应用程序存在所述白名单配置不当漏洞;若识别出所述白名单配置信息不是所述特定字符,则进一步的将所述白名单配置信息中具有访问权限的网址与预设的黑名单数据库中的每条黑名单记录进行比对,若所述具有访问权限的网址中存在至少一条黑名单记录,确定应用程序存在白名单配置不当漏洞。相应的,若比对出所述具有访问权限的网址均不在预设的黑名单数据库中,则确定该应用程序不存在白名单配置漏洞。作为一种可能的实施方式,若检测到白名单配置信息中具有访问权限的网址存在至少一条黑名单记录,将所述至少一条黑名单记录从所述白名单配置信息中删除,禁用该黑名单记录的访问权限,保护终端。
[0078]优选的,该特定字符为星号“ ”或“,* ”。
[0079]值得说明的是,白名单配置不当漏洞和白名单绕过漏洞为两个互不影响的漏洞,即若应用程序存在白名单配置不当漏洞,且同时存在PhoneGap框架的版本低于预设版本的问题,则该应用程序存在白名单配置不当漏洞和白名单绕过漏洞;若不存在PhoneGap框架的版本低于预设版本的问题,则该应用程序只存在白名单配置不当漏洞。
[0080]S205:保存所述应用程序的检测结果,并标记所述应用程序已检测。
[0081]具体的,待确定完应用程序是否存在白名单绕过漏洞和/或白名单配置不当漏洞后,保存该应用程序的检测结果及检测时间,并标记该应用程序已检测,方便下次检测时直接根据已保存的信息获取该应用程序的检测信息,减少重复操作。
[0082]优选的,在系统中给应用程序创建一个标记文件,其中,用“ I”标识所述应用程序已完成白名单绕过漏洞和/或白名单配置不当漏洞的检测,用“O”标识所述应用程序未进行该类漏洞的检测。具体的,将标识所述应用程序是否存在该类漏洞的状态标志位默认置为“O”;当确定完应用程序是否存在该类漏洞后,将该状态标志位置为“1”,并将检测结果及检测时间保存在指定的保存路径中。当下一次对该应用程序进行该类漏洞的检测时,首先去获取系统中是否有该应用程序的标记文件,若有,查看状态标志位是否为1,若状态标志位为“1”,直接去指定的存储单元中获取该应用程序的检测结果;若系统中没有该应用程序的标记文件,为该应用程序创建一个标记文件,将状态标志位默认置为“0”,执行S201,待确定完应用程序是否存在该类漏洞后,将状态标志位更新为I并保存检测结果;若系统中有该应用程序的标记文件,但状态标志位为“0”,执行S201,待确定完应用程序是否存在白名单绕过漏洞和/或白名单配置不当漏洞后,将状态标志位更新为I并保存检测结果。
[0083]S206:获取参数信息,将所述参数信息和所述检测结果上传至服务器。
[0084]具体的,该参数信息包括应用程序所在终端的标识信息和所述终端所处操作系统的版本信息。例如:某一用户在使用该应用程序的过程中,若检测到该应用程序存在白名单绕过漏洞和/或白名单配置不当漏洞,则获取所在终端的标识信息和所述终端所处操作系统的版本信息,将获取到的参数信息和检测结果上传至服务器,以便服务器将该检测结果通知给与所述参数信息相类似且安装了该应用程序的其它终端。例如:其它用户在终端上也使用该应用程序时,若服务器获取到该终端的参数信息与服务器中所保存的参数信息一致,则可以基于消息推送的机制将该应用程序的检测结果发送给该终端,提示用户该应用程序存在白名单绕过漏洞和/或白名单配置不当漏洞,因此,用户可以根据该提示信息进行漏洞修复或卸载该应用程序等。
[0085]在本发明实施例所描述的基于PhoneGap框架的应用程序的漏洞检测方法中,通过获取应用程序所基于的PhoneGap框架的版本和白名单配置信息,判断所述版本是否低于预设版本和/或所述白名单配置信息是否为特定字符或所述白名单配置信息中具有访问权限的网址是否为黑名单来确定应用程序是否存在白名单绕过漏洞和/或白名单配置不当漏洞。采用本发明实施例,可自动检测基于PhoneGap框架的应用程序是否存在白名单绕过漏洞和/或白名单配置不当漏洞。
[0086]请参见图3,图3是本发明实施例提供的PhoneGap框架的应用程序的漏洞检测装置的结构示意图,在本发明实施例中,该装置包括:获取模块101和确定模块102。
[0087]获取模块101,用于获取应用程序所基于的PhoneGap框架的版本信息和白名单配置信息,其中,所述白名单配置信息中包括所述应用程序具有访问权限的网址。
[0088]确定模块102,用于根据所述版本信息和所述白名单配置信息,确定所述应用程序的漏洞类型。
[0089]优选的,该漏洞类型包括:白名单绕过漏洞和/或白名单配置不当漏洞。
[0090]作为一种优选的实施方式,确定模块102包括:第一确定单元1021和第二确定单元1022。如图4所示,图4是图3提供的其中一种确定模块的结构示意图。
[0091]第一确定单元1021,用于将所述版本信息与预设版本信息进行比较,确定所述应用程序是否存在所述白名单绕过漏洞。
[0092]第二确定单元1022,用于对所述白名单配置信息进行解析,确定所述应用程序是否存在所述白名单配置不当漏洞。
[0093]其中,第二确定单元1022还用于识别所述白名单配置信息是否为特定字符;若是,确定所述应用程序存在所述白名单配置不当漏洞;若否,将所述白名单配置信息中具有访问权限的网址与预设的黑名单数据库进行比对,若所述具有访问权限的网址中存在至少一条黑名单记录,确定所述应用程序存在所述白名单配置不当漏洞。
[0094]优选的,特定字符包括星号或“.*”。
[0095]在本发明实施例所描述的基于PhoneGap框架的应用程序的漏洞检测装置中,通过获取应用程序所基于的PhoneGap框架的版本和白名单配置信息,判断所述版本是否低于预设版本和/或所述白名单配置信息是否为特定字符或所述白名单配置信息中具有访问权限的网址是否为黑名单来确定应用程序是否存在白名单绕过漏洞和/或白名单配置不当漏洞。采用本发明实施例,可自动检测基于PhoneGap框架的应用程序是否存在白名单绕过漏洞和/或白名单配置不当漏洞。
[0096]请参见图5,图5是本发明实施例提供的PhoneGap框架的应用程序的漏洞检测装置的另一结构示意图,在本发明实施例中,该装置包括:获取模块201、确定模块202、解包模块203、保存模块204、上传模块205和删除模块206。
[0097]获取模块201,用于获取应用程序所基于的PhoneGap框架的版本信息和白名单配置信息,其中,所述白名单配置信息中包括所述应用程序具有访问权限的网址。
[0098]确定模块202,用于根据所述版本信息和所述白名单配置信息,确定所述应用程序的漏洞类型。
[0099]解包模块203,用于对所述应用程序进行解包处理,获取所述应用程序的配置文件,所述配置文件包括所述应用程序所基于的PhoneGap框架的版本信息和白名单配置信
肩、O
[0100]保存模块204,用于保存所述应用程序的检测结果,并标记所述应用程序已检测。
[0101]上传模块205,用于获取参数信息,将所述参数信息和所述检测结果上传至服务器,其中,所述参数信息包括所述应用程序所在终端的标识信息和所述终端所处操作系统的版本信息。
[0102]删除模块206,用于将所述至少一条黑名单记录从所述白名单配置信息中删除。
[0103]优选的,该漏洞类型包括:白名单绕过漏洞和/或白名单配置不当漏洞。
[0104]作为一种优选的实施方式,确定模块202包括:第一确定单元和第二确定单元。
[0105]第一确定单元,用于将所述版本信息与预设版本信息进行比较,确定所述应用程序是否存在所述白名单绕过漏洞。
[0106]第二确定单元,用于对所述白名单配置信息进行解析,确定所述应用程序是否存在所述白名单配置不当漏洞。
[0107]其中,第二确定单元还用于识别所述白名单配置信息是否为特定字符;若是,确定所述应用程序存在所述白名单配置不当漏洞;若否,将所述白名单配置信息中具有访问权限的网址与预设的黑名单数据库进行比对,若所述具有访问权限的网址中存在至少一条黑名单记录,确定所述应用程序存在所述白名单配置不当漏洞。
[0108]优选的,特定字符包括星号或
[0109]在本发明实施例所描述的基于PhoneGap框架的应用程序的漏洞检测装置中,通过获取应用程序所基于的PhoneGap框架的版本和白名单配置信息,判断所述版本是否低于预设版本和/或所述白名单配置信息是否为特定字符或所述白名单配置信息中具有访问权限的网址是否为黑名单来确定应用程序是否存在白名单绕过漏洞和/或白名单配置不当漏洞。采用本发明实施例,可自动检测基于PhoneGap框架的应用程序是否存在白名单绕过漏洞和/或白名单配置不当漏洞。本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。相应的,本发明实施例装置中的模块或单元可以根据实际需要进行合并、划分和删减。
[0110]本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(RandomAccessMemory, RAM)等。
[0111]以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,本领域普通技术人员可以理解实现上述实施例的全部或部分流程,并依本发明权利要求所作的等同变化,仍属于发明所涵盖的范围。
【权利要求】
1.PhoneGap框架的应用程序的漏洞检测方法,其特征在于,包括: 获取应用程序所基于的PhoneGap框架的版本信息和白名单配置信息,其中,所述白名单配置信息中包括所述应用程序具有访问权限的网址; 根据所述版本信息和所述白名单配置信息,确定所述应用程序的漏洞类型。
2.如权利要求1所述的方法,其特征在于,所述漏洞类型包括: 白名单绕过漏洞和/或白名单配置不当漏洞。
3.如权利要求2所述的方法,其特征在于,所述根据所述版本信息和所述白名单配置信息,确定所述应用程序的漏洞类型,包括: 将所述版本信息与预设版本信息进行比较,确定所述应用程序是否存在所述白名单绕过漏洞。
4.如权利要求2所述的方法,其特征在于,所述根据所述版本信息和所述白名单配置信息,确定所述应用程序的漏洞类型,包括: 对所述白名单配置信息进行解析,确定所述应用程序是否存在所述白名单配置不当漏洞。
5.如权利要求4所述的方法,其特征在于,所述对所述白名单配置信息进行解析,确定所述应用程序是否存在所述白名单配置不当漏洞,包括: 识别所述白名单配置信息是否为特定字符; 若是,确定所述应用程序存在所述白名单配置不当漏洞。
6.如权利要求5所述的方法,其特征在于,所述特定字符包括或*”。
7.如权利要求5所述的方法,其特征在于,所述识别所述白名单配置信息是否为特定字符,还包括: 若识别出所述白名单配置信息不是所述特定字符,将所述白名单配置信息中具有访问权限的网址与预设的黑名单数据库进行比对,若所述具有访问权限的网址中存在至少一条黑名单记录,确定所述应用程序存在所述白名单配置不当漏洞。
8.如权利要求1-7任一项所述的方法,其特征在于,在所述获取应用程序所基于的PhoneGap框架的版本信息和白名单配置信息之前,所述方法还包括: 对所述应用程序进行解包处理,获取所述应用程序的配置文件,所述配置文件包括所述应用程序所基于的PhoneGap框架的版本信息和白名单配置信息。
9.如权利要求1所述的方法,其特征在于,所述方法还包括: 保存所述应用程序的检测结果,并标记所述应用程序已检测。
10.如权利要求1所述的方法,其特征在于,所述方法还包括: 获取参数信息,将所述参数信息和所述检测结果上传至服务器,其中,所述参数信息包括所述应用程序所在终端的标识信息和所述终端所处操作系统的版本信息。
11.如权利要求7所述的方法,其特征在于,所述方法还包括: 将所述至少一条黑名单记录从所述白名单配置信息中删除。
12.PhoneGap框架的应用程序的漏洞检测装置,其特征在于,包括: 获取模块,用于获取应用程序所基于的PhoneGap框架的版本信息和白名单配置信息,其中,所述白名单配置信息中包括所述应用程序具有访问权限的网址; 确定模块,用于根据所述版本信息和所述白名单配置信息,确定所述应用程序的漏洞类型。
13.如权利要求12所述的装置,其特征在于,所述漏洞类型包括: 白名单绕过漏洞和/或白名单配置不当漏洞。
14.如权利要求13所述的装置,其特征在于,所述确定模块包括: 第一确定单元,用于将所述版本信息与预设版本信息进行比较,确定所述应用程序是否存在所述白名单绕过漏洞。
15.如权利要求13所述的装置,其特征在于,所述确定模块包括: 第二确定单元,用于对所述白名单配置信息进行解析,确定所述应用程序是否存在所述白名单配置不当漏洞。
16.如权利要求15所述的装置,其特征在于,所述第二确定单元还用于识别所述白名单配置信息是否为特定字符;若是,确定所述应用程序存在所述白名单配置不当漏洞。
17.如权利要求16所述的装置,其特征在于,所述特定字符包括或*”。
18.如权利要求16所述的装置,其特征在于,所述第二确定单元还用于: 若识别出所述白名单配置信息不是所述特定字符,将所述白名单配置信息中具有访问权限的网址与预设的黑名单数据库进行比对,若所述具有访问权限的网址中存在至少一条黑名单记录,确定所述应用程序存在所述白名单配置不当漏洞。
19.如权利要求12-18任一项所述的装置,其特征在于,所述装置还包括: 解包模块,用于对所述应用程序进行解包处理,获取所述应用程序的配置文件,所述配置文件包括所述应用程序所基于的PhoneGap框架的版本信息和白名单配置信息。
20.如权利要求12所述的装置,其特征在于,所述装置还包括: 保存模块,用于保存所述应用程序的检测结果,并标记所述应用程序已检测。
21.如权利要求12所述的装置,其特征在于,所述装置还包括: 上传模块,用于获取参数信息,将所述参数信息和所述检测结果上传至服务器,其中,所述参数信息包括所述应用程序所在终端的标识信息和所述终端所处操作系统的版本信肩、O
22.如权利要求12所述的装置,其特征在于,所述装置还包括: 删除模块,用于将所述至少一条黑名单记录从所述白名单配置信息中删除。
【文档编号】G06F21/57GK104021074SQ201410209123
【公开日】2014年9月3日 申请日期:2014年5月16日 优先权日:2014年5月16日
【发明者】刘文柱, 沈江波, 张楠, 徐鸣 申请人:北京金山安全软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1