[发明专利]一种模糊测试系统及终端设备在审
申请号: | 201910978930.7 | 申请日: | 2019-10-15 |
公开(公告)号: | CN110851352A | 公开(公告)日: | 2020-02-28 |
发明(设计)人: | 万振华;张海春 | 申请(专利权)人: | 深圳开源互联网安全技术有限公司;开源网安物联网技术(武汉)有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 深圳中一联合知识产权代理有限公司 44414 | 代理人: | 刘永康 |
地址: | 518000 广东省深圳市龙华区龙华*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 模糊 测试 系统 终端设备 | ||
本申请属于计算机网络安全技术领域,尤其涉及一种模糊测试系统及终端设备。本申请实施例提供的模糊测试系统可以包括:核心模糊测试引擎、异常检测引擎和异常报告引擎。所述核心模糊测试引擎,用于产生输入目标测试对象的测试向量;所述异常检测引擎,用于对所述目标测试对象的未定义的和潜在的不安全行为进行检测;所述异常报告引擎,用于在所述目标测试对象出现异常时对所有与所述目标测试对象相关的信息做出报告。相较于现有的模糊测试只适合用来找到特定被测系统中的特定弱点,本申请提供的模糊测试系统具有更加广泛的适用性。
技术领域
本申请属于计算机网络安全技术领域,尤其涉及一种模糊测试系统及终端设备。
背景技术
模糊测试是一种“通过向应用提供非预期的输入并监控输出中的异常来发现软件中的故障(faults)的方法”。模糊测试利用自动化或是半自动化的方法重复地向应用提供输入。模糊测试器分两类:一类是基于变异(mutation-based)的模糊测试器,这一类通过对已有的数据样本进行变异来创建测试用例;另一类是基于生成(generation-based)的模糊测试器,该类测试器为被测系统使用的协议或是文件格式建模,基于模型生成输入并据此创建测试用例。模糊测试适合用来找到特定被测系统中的特定弱点,例如访问控制漏洞、糟糕的设计逻辑、后门登陆界面、内存破坏问题和多阶段安全漏洞等方面,因此具有一定的局限性。
发明内容
有鉴于此,本申请实施例提供了一种模糊测试系统及终端设备,以解决现有的模糊测试只适合用来找到特定被测系统中的特定弱点,具有一定的局限性的问题。
本申请实施例的第一方面提供了一种模糊测试系统,可以包括:
核心模糊测试引擎,用于产生输入目标测试对象的测试向量;
异常检测引擎,用于对所述目标测试对象的未定义的和潜在的不安全行为进行检测;
异常报告引擎,用于在所述目标测试对象出现异常时对所有与所述目标测试对象相关的信息做出报告。
进一步地,所述核心模糊测试引擎还用于:
获取描述文件格式的SPIKE脚本,并使用有效数据和无效数据的组合来生成所述文件格式的不同变体。
进一步地,所述核心模糊测试引擎还用于:
获取目标文件;
使用预设的模糊值数据库来对所述目标文件的不同部分进行变异得到变异后的目标文件。
进一步地,所述模糊值数据库中包括二进制类型的模糊值和字符串类型的模糊值。
进一步地,所述异常检测引擎还用于:
监视所述目标测试对象收到的所有信号;
使用C库函数钩子监视被所述模糊测试系统以非安全方式传递给指定函数调用的值;
使用ptrace函数进行信号检测。
进一步地,所述使用ptrace函数进行信号检测包括:
在子进程中使用第一个参数为PTRACE_TRACEME的ptrace函数时,父进程接收所述模糊测试系统发送给子进程的信号,并依据所述信号判断子进程的状态,通过在ptrace函数中使用不同的参数向子进程发送命令。
进一步地,所述使用ptrace函数进行信号检测包括:
若检测到触发漏洞的信号时,使用第一个参数是PTRACE_DETACH的ptrace函数停止对子进程的调试,并记录子进程的现场信息,生成异常报告文件。
进一步地,所述使用ptrace函数进行信号检测包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳开源互联网安全技术有限公司;开源网安物联网技术(武汉)有限公司,未经深圳开源互联网安全技术有限公司;开源网安物联网技术(武汉)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910978930.7/2.html,转载请声明来源钻瓜专利网。