一种检测应用漏洞的方法及装置制造方法及图纸

技术编号:10851684 阅读:93 留言:0更新日期:2015-01-01 00:11
本发明专利技术公开了一种检测应用漏洞的方法及装置,属于计算机技术领域。所述方法包括:获取待检测的应用,并启动所述待检测的应用;获取用户输入的信息,将所述用户输入的信息发送给服务器,并捕获与所述服务器之间的通信数据;根据所述用户输入的信息和所述通信数据,检测所述待检测的应用是否是通过明文的方式传输所述用户输入的信息;如果是通过明文的方式传输所述用户输入的信息,则确定所述待检测的应用存在漏洞。本发明专利技术通过自动化的对应用中是否明文传输用户输入的信息进行检测,提高了检测应用的效率及准确率。

【技术实现步骤摘要】
一种检测应用漏洞的方法及装置
本专利技术涉及计算机
,特别涉及一种检测应用漏洞的方法及装置。
技术介绍
随着移动互联网和移动终端的发展,移动终端中的应用的数量呈指数级增长,但是在应用数量增加的同时,应用中的漏洞所引发的安全问题也越来越多,这些漏洞会导致用户隐私被窃取,严重的情况甚至会导致用户受到经济损失。因此,在应用发布给用户使用之前,都需要进行漏洞检测。 现有技术中对应用的漏洞的检测方法一般为测试人员手动进行,例如:检测应用是否采用明文的方式将用户输入的信息(用户名,密码,个人资料等信息)传输至服务器,需要由测试人员人工的方式来查找该应用存在的漏洞。 在实现本专利技术的过程中,专利技术人发现现有技术至少存在以下问题: 通过人工手动的方式进行应用的漏洞检测,耗时较长且效率较低;当检测的内容过多的情况下很容易出现漏检的现象,不利于保护用户的使用安全。
技术实现思路
为了解决现有技术的问题,本专利技术实施例提供了一种检测应用漏洞的方法及装置。所述技术方案如下: 一方面,提供了一种检测应用漏洞的方法,所述方法包括: 获取待检测的应用,并启动所述待检测的应用; 获取用户输入的信息,将所述用户输入的信息发送给服务器,并捕获与所述服务器之间的通信数据; 根据所述用户输入的信息和所述通信数据,检测所述待检测的应用是否是通过明文的方式传输所述用户输入的信息; 如果是通过明文的方式传输所述用户输入的信息,则确定所述待检测的应用存在漏洞。 另一方面,提供了一种检测应用漏洞的装置,所述装置包括: 第一获取模块,用于获取待检测的应用,并启动所述待检测的应用; 第二获取模块,用于获取用户输入的信息,将所述用户输入的信息发送给服务器,并捕获与所述服务器之间的通信数据; 第一检测模块,用于根据所述用户输入的信息和所述通信数据,检测所述待检测的应用是否是通过明文的方式传输所述用户输入的信息; 第一确定模块,用于如果是通过明文的方式传输所述用户输入的信息,则确定所述待检测的应用存在漏洞。 本专利技术实施例提供的技术方案带来的有益效果是: 通过自动化的对应用中是否明文传输用户输入的信息进行检测,提高了检测应用的效率及准确率。 【附图说明】 为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。 图1是本专利技术实施例一提供的检测应用漏洞的方法流程图; 图2是本专利技术实施例二提供的检测应用漏洞的方法流程图; 图3是本专利技术实施例二提供的另一种检测应用漏洞的方法流程图; 图4是本专利技术实施例二提供的另一种检测应用漏洞的方法流程图; 图5是本专利技术实施例二提供的检测应用漏洞的方法中生成检测报告的方法流程图; 图6是本专利技术实施例三提供的检测应用漏洞的装置结构示意图。 【具体实施方式】 为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术实施方式作进一步地详细描述。 实施例一 本专利技术实施例提供了一种检测应用漏洞的方法,参见图1,方法流程包括: 101:获取待检测的应用,并启动所述待检测的应用; 102:获取用户输入的信息,将所述用户输入的信息发送给服务器,并捕获与所述服务器之间的通信数据; 103:根据所述用户输入的信息和所述通信数据,检测所述待检测的应用是否是通过明文的方式传输所述用户输入的信息; 104:如果是通过明文的方式传输所述用户输入的信息,则确定所述待检测的应用存在漏洞。 本专利技术实施例通过自动化的对应用中是否明文传输用户输入的信息进行检测,提高了检测应用的效率及准确率。 实施例二 本专利技术实施例提供了一种检测应用漏洞的方法,参见图2。 需要说明的是,本专利技术实施例通过检测Android操作系统中的应用的漏洞为例进行说明。 其中,检测应用漏洞的方法流程包括: 201:获取待检测的应用,并启动所述待检测的应用。 具体的,获取待检测的应用,以及启动待检测的应用的过程在本专利技术实施例中是通过模拟器进行的。在本专利技术实施例中是通过Android模拟器实现的,其中,Android模拟器是Android SDK (Software Development Kit,软件开发工具包)自带一个模拟器,它是一个可以运行在电脑上的虚拟设备,可以让开发人员不需使用物理设备即可预览、开发和测试Android应用。 在模拟器中获取待测试的应用的安装包即APK文件,并在模拟器中安装该应用。安装完毕后,启动该应用。 202:获取用户输入的信息,将所述用户输入的信息发送给服务器,并捕获与所述服务器之间的通信数据。 其中,用户输入的信息的内容可以为:账户、密码、用户身份信息、用户联系方式信息等内容。 获取用户输入的信息的过程可以为:获取测试人员手动在应用中的输入内容的位置的输入的信息;还可以为获取由模拟器自动在应用中的输入内容的位置的输入的信息,其中输入的信息为测试人员预先输入好的信息。 输入后信息后,应用会将用户输入的信息进行保存,一般情况下会将用户输入的信息保存在预先设置好的xml文件中。 在保存后应用通过终端将输入的信息发送至服务器,在此过程中将发给服务器的通信数据进行抓包保存。 203:根据所述用户输入的信息和所述通信数据,检测所述待检测的应用是否是通过明文的方式传输所述用户输入的信息。 其中,明文传输即为将用户输入的信息并不通过任何加密算法的加密,直接进行传输的方式。 判断终端与服务器之间的通信数据中是否对用户输入的信息进行明文传送的方法具体为: 2031:通过预设算法转换对所述用户输入的信息进行加密,生成加密后的用户输入的信息。 首先对用户输入的信息进行加密,得到加密后的用户输入的信息,用于在通信数据中进行查找是否存在加密后的用户输入的信息。 其中,加密方式可以为多种,例如:MD5 (MessageDigestAlgorithmMD5,消息摘要算法第五版)算法,Base64算法等。通过每一种算法会对应生成一个加密后的用户输入的信肩、O 2032:解析所述通信数据,并在解析出的所述通信数据中查询是否存在所述加密后的用户输入的信息或所述用户输入的信息。 将每一种加密后的用户输入的信息以及未加密的用户输入的信息在解析出的通信数据中进行匹配,查询是否存在加密后的用户输入的信息,或是否存在用户输入的信息。 2033:如果查询到所述户输入的信息,则确定所述待检测的应用是通过明文的方式传输所述用户输入的信息。 进一步的,如果查询到加密后的用户输入的信息,则表示待检测的应用是通过加密的方式传输用户输入的信息。 2034:如果查询到所述加密后的用户输入的信息,则确定所述待检测的应用是通过非明文的方式传输所述用户输入的信息,并确定传输所述用户输入的信息的方式为安全方式。 204:如果是通过明文的方式传输所述用户输入的信息,则确定所述待检测的应用存在漏洞。 进一步的,本专利技术实施例还提供对用户输入的信息是否为明文保存进行检测的方法,如图3所示,该方法包括: 301本文档来自技高网...
一种检测应用漏洞的方法及装置

【技术保护点】
一种检测应用漏洞的方法,其特征在于,所述方法包括:获取待检测的应用,并启动所述待检测的应用;获取用户输入的信息,将所述用户输入的信息发送给服务器,并捕获与所述服务器之间的通信数据;根据所述用户输入的信息和所述通信数据,检测所述待检测的应用是否是通过明文的方式传输所述用户输入的信息;如果是通过明文的方式传输所述用户输入的信息,则确定所述待检测的应用存在漏洞。

【技术特征摘要】
1.一种检测应用漏洞的方法,其特征在于,所述方法包括: 获取待检测的应用,并启动所述待检测的应用; 获取用户输入的信息,将所述用户输入的信息发送给服务器,并捕获与所述服务器之间的通信数据; 根据所述用户输入的信息和所述通信数据,检测所述待检测的应用是否是通过明文的方式传输所述用户输入的信息; 如果是通过明文的方式传输所述用户输入的信息,则确定所述待检测的应用存在漏洞。2.根据权利要求1所述的方法,其特征在于,所述根据所述用户输入的信息和所述通信数据,检测所述待检测的应用是否是通过明文的方式传输所述用户输入的信息,包括: 通过预设算法转换对所述用户输入的信息进行加密,生成加密后的用户输入的信息;解析所述通信数据,并在解析出的所述通信数据中查询是否存在所述加密后的用户输入的信息或所述用户输入的信息; 如果查询到所述用户输入的信息,则确定所述待检测的应用是通过明文的方式传输所述用户输入的信息。3.根据权利要求2所述的方法,其特征在于,所述在解析出的所述通信数据中查询是否存在所述加密后的用户输入的信息或所述用户输入的信息之后,所述方法还包括: 如果查询到所述加密后的用户输入的信息,则确定所述待检测的应用是通过非明文的方式传输所述用户输入的信息,并确定传输所述用户输入的信息的方式为安全方式。4.根据权利要求1所述的方法,其特征在于,所述根据所述用户输入的信息和所述通信数据,检测所述待检测的应用是否是通过明文的方式传输所述用户输入的信息之后,所述方法还包括: 根据所述用户输入的信息,检测所述待检测的应用是否是通过明文的方式保存所述用户输入的信息; 如果是通过明文的方式保存所述用户输入的信息,则确定所述待检测的应用存在漏洞。5.根据权利要求4所述的方法,其特征在于,所述根据所述用户输入的信息,检测所述待检测的应用是否是通过明文的方式保存所述用户输入的信息,包括: 通过预设算法转换对所述用户输入的信息进行加密,生成加密后的用户输入的信息;在所述待检测的应用的文件中,查询是否存在所述加密后的用户输入的信息或所述用户输入的信息; 如果查询到所述户输入的信息,则确定所述待检测的应用是通过明文的方式保存所述用户输入的信息。6.根据权利要求5所述的方法,其特征在于,所述查询是否存在所述加密后的用户输入的信息或所述用户输入的信息之后,所述方法还包括: 如果查询到所述加密后的用户输入的信息,则确定所述待检测的应用是通过非明文的方式保存所述用户输入的信息,并确定保存所述用户输入的信息的方式为安全方式。7.根据权利要求1所述的方法,其特征在于,所述根据所述用户输入的信息和所述通信数据,检测所述待检测的应用是否是通过明文的方式传输所述用户输入的信息之后,所述方法还包括: 对所述待检测的应用的安装包进行反编译,得到所述待检测的应用的安装文件; 在所述安装文件中获取保存所述待检测的应用组件权限的权限文件,并在所述权限文件中检测预设的组件对应的权限值是否为预设的权限值; 如果查询到所述预设的组件对应的权限值为预设的权限值,则确定所述待检测的应用存在漏洞。8.根据权利要求1至7中任一项所述的方法,其特征在于,所述确定所述待检测的应用存在漏洞之后,所述方法还包括: 根据所述待检...

【专利技术属性】
技术研发人员:林桠泉
申请(专利权)人:深圳市腾讯计算机系统有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1