【技术实现步骤摘要】
漏洞检测方法及装置
本申请涉及软件程序测试
,特别涉及一种漏洞检测方法及装置。
技术介绍
模糊测试(Fuzz)是一种常见的漏洞检测方法,通过向测试目标发送各种随机构造的畸形数据并观察目标是否存在异常行为,然后分析这些异常行为的详细信息以进一步判断是否存在漏洞。畸形数据为根据待测试程序中的目标数据随机构造的数据,例如可以为一个字符串模板,或者为一段二进制数据,将该字符串模板或者该段二进制数据按照一定的比例随机地改变其中的若干字节,可以生成一份新的数据,这份新的数据即为畸形数据。一个Fuzz工具主要有以下几个组成部分:样本分析模块;变异模块;数据发送模块;目标状态监控模块;日志模块;各个模块的主要功能如下:样本分析模块:对目标程序能够正常处理的一个样本进行分析,主要分析它的结构,为后续对其做随机化的变异做准备。变异模块:对正常的样本进行随机化的变异,可能是随机修改某个位置的数据为一个随机值,或者交换前后两个比特的数据等。数据发送模块:主要负责将变异模块产生的畸形数据发送给目标程序。可以是通过网络发送,也可以是本地的直接文件读写。目标状态监控模块:主要负责监控目标程序所在进程在处理发送过去的畸形数据时是否出现了异常,包括一些内存的异常访问,以及代码执行异常等。日志模块:用于记录目标程序都发生了哪些异常,以及导致目标程序出现这些异常的畸形数据等。Fuzz作为一种成熟的漏洞检测方法在PC平台得到了广泛的应用,也有很多成熟切高效稳定的工具可以使用。但是Android作为一个比较年轻的平台,之上的漏洞挖掘处于刚刚起步阶段,Fuzz工具还很少,而很多传统PC平台上的 ...
【技术保护点】
一种漏洞检测方法,其特征在于,包括:对第一操作系统的计算机程序进行漏洞挖掘,获得漏洞挖掘过程中导致所述第一操作系统的计算机程序出现异常的畸形数据;利用所述畸形数据对在第二操作系统的计算机程序进行漏洞检测;其中,所述第一操作系统的计算机程序及第二操作系统的计算机程序由同一待检测源码编译而成。
【技术特征摘要】
2015.12.15 CN 20151093261671.一种漏洞检测方法,其特征在于,包括:对第一操作系统的计算机程序进行漏洞挖掘,获得漏洞挖掘过程中导致所述第一操作系统的计算机程序出现异常的畸形数据;利用所述畸形数据对在第二操作系统的计算机程序进行漏洞检测;其中,所述第一操作系统的计算机程序及第二操作系统的计算机程序由同一待检测源码编译而成。2.根据权利要求1所述的漏洞检测方法,其特征在于,还包括:将待检测源码分别编译为能够运行在所述第一操作系统的计算机程序以及能够运行在所述第二操作系统的计算机程序。3.根据权利要求2所述的漏洞检测方法,其特征在于,利用所述畸形数据对在第二操作系统的计算机程序进行漏洞检测,包括:向所述第二操作系统的计算机程序提交所述畸形数据;利用所述畸形数据作为输入数据,检测所述第二操作系统的计算机程序是否出现异常,以分析所述第二操作系统的计算机程序是否存在漏洞。4.根据权利要求1所述的漏洞检测方法,其特征在于,所述待检测源码为Android系统的应用程序源码。5.根据权利要求3所述的漏洞检测方法,其特征在于,所述第一操作系统为Linux系统,第二操作系统为Android系统;对所述第一操作系统的计算机程序进行漏洞挖掘,并记录漏洞挖掘过程中导致所述第一操作系统的计算机程序出现异常的畸形数据,包括:对所述Linux系统的计算机程序进行模糊测试,检测所述Linux系统存在的漏洞;记录模糊测试过程中导致所述Linux系统的计算机程序出现异常的畸形数据。6.根据权利要求3所述的漏洞检测方法,其特征在于,所述第一操作系统为Windows系统,第二操作系统为Android系统;对所述第一操作系统的计算机程序进行漏洞挖掘,并记录漏洞挖掘过程中导致所述第一操作系统的计算机程序出现异常的畸形数据,包括:对所述Windows系统的计算机程序进行模糊测试,检测所述Windows系统存在的漏洞;记录模糊测试过程中导致所述Windows系统的计算机程序出现异常的畸形数据。7.根据权利要求5或6所述的漏洞检测方法,其特征在于,利用所述畸形数据对在第二操作系统的计算机程序进行漏洞检测,包括:向所述Android系统的计算机程序提交所述畸形数据;利用所述畸形数据作为输入数据,检测所述Android系统的计算机程序是否出现异常,以分析所述Android版本程序是否存在漏洞。8.根据权利要求1所述的漏洞检测方法,其特征在于,还包括:通过repo工具将所述待检测源码下载到所述第一操作系统,或者,将所述待检测源码拷贝到所述第一操作系统。9.根据权利要求5所述的漏洞检测方法,其特征在于,将待检测源码分别编译为能够运行在第一操作系统的计算机程序以及能够运行在第二操作系统的计算机程序,包括:获取所述待检测源码中用于编译的脚本;根据所述脚本将所述待检测源码分别编译为能够运行在Linux系统的计算机程序以及能够运行在Android系统的计算机程序。10.根据权利要求6所述的漏洞检测方法,其特征在于,将待检测源码分别编译为能够运行在第一操作系统的计算机程序以及能够运行在第二操作系统的计算机程序,包括:获取所述待检测源码中用于编译的脚本;根据所述脚本将所述待检测源码分别编译为能够运行在Windows系统的计算机程序以及能够运行在Android系统的计算机程序。11.根据权利要求5或6所述的漏洞检测方法,其特征在于,还包括:将所述Android系统的计算机程序对应的运行系统刷入Android设备,以作为所述Android系统的计算机程序在该Android设备中的运行环境。12.一种漏洞检测装置,其特征在于,包括:畸形数据生成单元,用于对第一操作系统的计算机程序进行漏洞挖掘,获得漏洞挖掘过...
【专利技术属性】
技术研发人员:孙伟超,
申请(专利权)人:阿里巴巴集团控股有限公司,
类型:发明
国别省市:开曼群岛,KY
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。