首页> 中国专利> 基于被动扫描的半自动化渗透测试系统及方法

基于被动扫描的半自动化渗透测试系统及方法

摘要

本发明涉及信息安全测试技术。目前的渗透出测试工具中不能针对性的对需要进行渗透测试的参数进行测试,渗透测试的信息存在局限性,测试输入信息收集和漏洞验证没有很好的结合起来,本发明为解决上述技术问题,提出了一种基于被动扫描的半自动化渗透测试系统及方法,其技术方案要点为:监听并抓取待测目标站点的数据流信息,并判断抓取的数据流信息是否存在待测包含特定参数的数据信息以及是否满足测试接口规范,若符合要求则将该数据流信息传递给信息处理模块,可以将处理后的待测包含特定参数的数据信息自动或逐一手动传输到信息存储模块进行更新,并自动或手动逐一分发到各个渗透测试模块或指定的单个渗透测试模块,执行特定渗透测试动作。

著录项

  • 公开/公告号CN108540491A

    专利类型发明专利

  • 公开/公告日2018-09-14

    原文格式PDF

  • 申请/专利权人 四川长虹电器股份有限公司;

    申请/专利号CN201810392824.6

  • 发明设计人 丁锐;常清雪;

    申请日2018-04-27

  • 分类号

  • 代理机构成都虹桥专利事务所(普通合伙);

  • 代理人李凌峰

  • 地址 621000 四川省绵阳市高新区绵兴东路35号

  • 入库时间 2023-06-19 06:31:19

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-06-30

    授权

    授权

  • 2018-10-16

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20180427

    实质审查的生效

  • 2018-09-14

    公开

    公开

说明书

技术领域

本发明涉及信息安全测试技术,特别涉及接口渗透测试技术。

背景技术

随着网络和计算机软件信息技术的发展,网络安全越来越受到大家的重视和关注,相关的安全测试也越来越必不可少。

在安全测试中,为了尽可能的提高准确率和测试覆盖率,往往需要对待测系统进行大量频繁的测试,测试人员可以模拟黑客进行攻击,对待测业务的所有接口进行渗透测试技术的验证,确保业务系统的安全级别达到业务要求,但是单个业务系统往往包含了很多接口地址,人工的进行验证无疑是个体力活,且测试时间有限,这也给安全测试人员带来了很多工作压力;目前的渗透测试工具,要么是只提供了代理功能,仅仅能获取待测数据(如ip,url,接口地址等),渗透测试验证模块需要额外集成,要么是只有验证模块,不能指定或者批量的对待测数据进行验证;增加了安全测试的时间,以现在比较流行的struts2-046验证工具、Weblogic XML反序列化漏洞检查工具为例,仅仅只有渗透测试的验证模块,没有待测数据获取模块;这导致了渗透测试的信息局限性,测试输入信息收集和漏洞验证没有很好的结合起来,给安全测试工作带来了很多的不便。

参见申请号为CN201410381582.2的专利申请,其公开了一种自动化渗透测试方法及系统,但是其主要针对的是目前的半自动化或者手动进行渗透测试过程的耗时耗力的问题,这种渗透测试方法虽然高效,但是全自动化渗透测试后,其输出和显示的只有最终的结果,无法针对性选择需要进行渗透测试的参数,也不能任意指定需要的渗透测试模块执行渗透测试工作。因此需要一个能使测试输入信息收集和漏洞验证结合的手段,以满足在安全测试工作中更简单、更快捷、更有效地对目标业务进行快速、全面、有针对性的渗透测试需求。

发明内容

本发明的目的是提供一种基于被动扫描的半自动化渗透测试系统及方法,解决了目前的渗透出测试工具中不能针对性的对需要进行渗透测试的参数进行测试,渗透测试的信息存在局限性,测试输入信息收集和漏洞验证没有很好的结合起来的问题。

本发明解决其技术问题,采用的技术方案是:基于被动扫描的半自动化渗透测试系统,包括客户端和云端,其特征在于,所述客户端包括信息监听模块、信息识别模块、信息处理模块、信息存储模块和渗透测试模块,所述信息监听模块通过信息识别模块与信息处理模块连接,所述信息存储模块与信息处理模块连接,所述信息处理模块通过渗透测试模块用于与云端连接;

所述信息监听模块,用于对待测目标站点的相关接口报文数据进行监视,对网络上的信息传输进行管理以及抓取待测目标站点的数据流信息;

所述信息识别模块,用于判断抓取的数据流信息是否存在待测包含特定参数的数据信息以及是否满足测试接口规范,若存在待测包含特定参数的数据信息并且满足测试接口规范,则将该数据流信息传递给信息处理模块,否则不动作;

所述信息处理模块,用于处理数据流信息中待测包含特定参数的数据信息,同时将处理后的待测包含特定参数的数据信息自动或逐一手动传输到信息存储模块进行更新,并提取信息存储模块中新增的待测包含特定参数的数据信息并将其自动或手动逐一分发到各个渗透测试模块或指定的单个渗透测试模块;

所述信息存储模块,用于接收经信息处理模块处理后的待测包含特定参数的数据信息,并逐一保存,当信息处理模块需要提取更新后的待测包含特定参数的数据信息时将该数据信息传递给信息处理模块;

所述渗透测试模块,用于接收从信息处理模块传递来的待测包含特定参数的数据信息,并执行特定渗透测试动作,最后输出测试结果并发送到云端进行更新和显示。

具体地,所述客户端至少为一个。

进一步地,所述特定参数的数据信息包括URL和/或ip地址和/或接口链接。

具体地,所述客户端以SDK的形式安装或集成在终端目标上,或以单独的软件形式存在。

再进一步地,所述特定渗透测试动作包括web应用漏洞检测和/或服务器漏洞检测。

具体地,所述web应用漏洞检测包括SQL注入检测、跨站攻击脚本XSS检测、越权检测、任意文件读取检测和弱口令爆破检测。

再进一步地,所述服务器漏洞检测包括心脏滴血漏洞检测、Bash远程命令执行漏洞检测、Strust2远程命令执行漏洞检测和Weblogic反序列化远程代码执行漏洞检测。

基于被动扫描的半自动化渗透测试方法,应用于基于被动扫描的半自动化渗透测试系统,其特征在于,包括以下步骤:

步骤1、建立客户端与云端之间的连接;

步骤2、通过客户端中的信息监听模块对待测目标站点的相关接口报文数据进行监视,对网络上的信息传输进行管理以及抓取待测目标站点的数据流信息,数据流信息抓取完毕后,进入步骤3;

步骤3、通过信息识别模块判断抓取的数据流信息是否存在待测包含特定参数的数据信息以及是否满足测试接口规范,若存在待测包含特定参数的数据信息并且满足测试接口规范,则将该数据流信息传递给信息处理模块,并进入步骤4,否则不动作;

步骤4、信息处理模块接收并处理数据流信息中待测包含特定参数的数据信息,同时将处理后的待测包含特定参数的数据信息自动或逐一手动传输到信息存储模块进行更新,并提取信息存储模块中新增的待测包含特定参数的数据信息并将其自动或手动逐一分发到各个渗透测试模块或指定的单个渗透测试模块,然后进入步骤5;

步骤5、当渗透测试模块接收到从信息处理模块传递来的待测包含特定参数的数据信息后,执行特定渗透测试动作,最后输出测试结果并发送到云端进行更新和显示。

具体地,步骤5中,若执行特定渗透测试动作后,云端未更新和显示测试结果,则进入步骤1。

本发明的有益效果是,通过上述基于被动扫描的半自动化渗透测试系统及方法,对待测信息数据进行监测,并根据测试规范对待测数据进行选择和存储,在批量或指定类型渗透测试中,可以快速且自动的遍历或指定存储的待测数据,并对其进行指定或批量渗透测试技术的验证,省去了人工进行漏洞验证的时间,实现了安全测试的高效性,快捷性和准确性。

附图说明

图1为本发明基于被动扫描的半自动化渗透测试系统的结构示意图。

具体实施方式

下面结合实施例及附图,详细描述本发明的技术方案。

本发明所述基于被动扫描的半自动化渗透测试系统,其结构示意图参见图1,该系统包括客户端和云端,客户端包括信息监听模块、信息识别模块、信息处理模块、信息存储模块和渗透测试模块,信息监听模块通过信息识别模块与信息处理模块连接,信息存储模块与信息处理模块连接,信息处理模块通过渗透测试模块用于与云端连接;信息监听模块,用于对待测目标站点的相关接口报文数据进行监视,对网络上的信息传输进行管理以及抓取待测目标站点的数据流信息;信息识别模块,用于判断抓取的数据流信息是否存在待测包含特定参数的数据信息以及是否满足测试接口规范,若存在待测包含特定参数的数据信息并且满足测试接口规范,则将该数据流信息传递给信息处理模块,否则不动作;信息处理模块,用于处理数据流信息中待测包含特定参数的数据信息,同时将处理后的待测包含特定参数的数据信息自动或逐一手动传输到信息存储模块进行更新,并提取信息存储模块中新增的待测包含特定参数的数据信息并将其自动或手动逐一分发到各个渗透测试模块或指定的单个渗透测试模块;信息存储模块,用于接收经信息处理模块处理后的待测包含特定参数的数据信息,并逐一保存,当信息处理模块需要提取更新后的待测包含特定参数的数据信息时将该数据信息传递给信息处理模块;渗透测试模块,用于接收从信息处理模块传递来的待测包含特定参数的数据信息,并执行特定渗透测试动作,最后输出测试结果并发送到云端进行更新和显示。

基于被动扫描的半自动化渗透测试方法,应用于基于被动扫描的半自动化渗透测试系统,由以下步骤组成:首先,建立客户端与云端之间的连接;其次,通过客户端中的信息监听模块对待测目标站点的相关接口报文数据进行监视,对网络上的信息传输进行管理以及抓取待测目标站点的数据流信息,数据流信息抓取完毕后,通过信息识别模块判断抓取的数据流信息是否存在待测包含特定参数的数据信息以及是否满足测试接口规范,若存在待测包含特定参数的数据信息并且满足测试接口规范,则将该数据流信息传递给信息处理模块;然后,信息处理模块接收并处理数据流信息中待测包含特定参数的数据信息,同时将处理后的待测包含特定参数的数据信息自动或逐一手动传输到信息存储模块进行更新,并提取信息存储模块中新增的待测包含特定参数的数据信息并将其自动或手动逐一分发到各个渗透测试模块或指定的单个渗透测试模块;当渗透测试模块接收到从信息处理模块传递来的待测包含特定参数的数据信息后,执行特定渗透测试动作,最后输出测试结果并发送到云端进行更新和显示。

这里,对待测目标站点的信息数据进行监测过程中,根据测试规范对待测信息数据进行选择和存储,在批量或指定类型渗透测试中,可以快速且自动的遍历或指定存储的待测数据,并对其进行指定或批量渗透测试技术的验证,省去了人工进行漏洞验证的时间,实现了安全测试的高效性,快捷性和准确性。

实施例1

本发明实施例基于被动扫描的半自动化渗透测试系统,包括客户端和云端,客户端至少为一个,每个客户端可以包括信息监听模块、信息识别模块、信息处理模块、信息存储模块和渗透测试模块等,信息监听模块通过信息识别模块与信息处理模块连接,信息存储模块与信息处理模块连接,信息处理模块通过渗透测试模块用于与云端连接;信息监听模块,用于对待测目标站点的相关接口报文数据进行监视,对网络上的信息传输进行管理以及抓取待测目标站点的数据流信息;信息识别模块,用于判断抓取的数据流信息是否存在待测包含特定参数的数据信息以及是否满足测试接口规范,若存在待测包含特定参数的数据信息并且满足测试接口规范,则将该数据流信息传递给信息处理模块,否则不动作;信息处理模块,用于处理数据流信息中待测包含特定参数的数据信息,同时将处理后的待测包含特定参数的数据信息自动或逐一手动传输到信息存储模块进行更新,并提取信息存储模块中新增的待测包含特定参数的数据信息并将其自动或手动逐一分发到各个渗透测试模块或指定的单个渗透测试模块;信息存储模块,用于接收经信息处理模块处理后的待测包含特定参数的数据信息,并逐一保存,当信息处理模块需要提取更新后的待测包含特定参数的数据信息时将该数据信息传递给信息处理模块;渗透测试模块,用于接收从信息处理模块传递来的待测包含特定参数的数据信息,并执行特定渗透测试动作,最后输出测试结果并发送到云端进行更新和显示。

本例中提到的特定参数的数据信息以URL为例进行说明,基于被动扫描的半自动化渗透测试方法,应用于基于被动扫描的半自动化渗透测试系统,包括以下步骤:

步骤1、建立客户端与云端之间的连接,客户端至少为一个;

步骤2、通过客户端中的信息监听模块对待测目标站点的相关接口报文数据进行监视,对网络上的信息传输进行管理以及抓取待测目标站点的数据流信息,数据流信息抓取完毕后,进入步骤3;

步骤3、通过信息识别模块判断抓取的数据流信息是否存在待测包含URL以及是否满足URL测试接口规范,若存在待测包含URL并且满足URL测试接口规范,则将该数据流信息传递给信息处理模块,并进入步骤4,否则不动作;

步骤4、信息处理模块接收并处理数据流信息中待测包含URL,同时将处理后的待测包含URL逐一手动传输到信息存储模块进行更新,当需要对信息存储模块中新增的待测包含URL进行测试时,通过信息处理模块提取信息存储模块中新增的待测包含URL并将其自动分发到各个渗透测试模块或指定的单个渗透测试模块,然后进入步骤5;

步骤5、当渗透测试模块接收到从信息处理模块传递来的待测包含URL后,执行特定渗透测试动作,最后输出测试结果并发送到云端进行更新和显示;若执行特定渗透测试动作后,云端未更新和显示测试结果,则进入步骤1。

实施例2

在实施例1中的基于被动扫描的半自动化渗透测试系统的基础上,特定参数的数据信息同样以URL为例进行说明。基于被动扫描的半自动化渗透测试方法,应用于基于被动扫描的半自动化渗透测试系统,包括以下步骤:

步骤1、建立客户端与云端之间的连接,客户端至少为一个;

步骤2、通过客户端中的信息监听模块对待测目标站点的相关接口报文数据进行监视,对网络上的信息传输进行管理以及抓取待测目标站点的数据流信息,数据流信息抓取完毕后,进入步骤3;

步骤3、通过信息识别模块判断抓取的数据流信息是否存在待测包含URL以及是否满足URL测试接口规范,若存在待测包含URL并且满足URL测试接口规范,则将该数据流信息传递给信息处理模块,并进入步骤4,否则不动作;

步骤4、信息处理模块接收并处理数据流信息中待测包含URL,同时将处理后的待测包含URL逐一手动传输到信息存储模块进行更新,当需要对信息存储模块中新增的待测包含URL进行测试时,通过信息处理模块提取信息存储模块中新增的待测包含URL并将其手动逐一分发到各个渗透测试模块或指定的单个渗透测试模块,然后进入步骤5;

步骤5、当渗透测试模块接收到从信息处理模块传递来的待测包含URL后,执行特定渗透测试动作,最后输出测试结果并发送到云端进行更新和显示;若执行特定渗透测试动作后,云端未更新和显示测试结果,则进入步骤1。

实施例3

在实施例1中的基于被动扫描的半自动化渗透测试系统的基础上,特定参数的数据信息同样也以URL为例进行说明。基于被动扫描的半自动化渗透测试方法,应用于基于被动扫描的半自动化渗透测试系统,包括以下步骤:

步骤1、建立客户端与云端之间的连接,客户端至少为一个;

步骤2、通过客户端中的信息监听模块对待测目标站点的相关接口报文数据进行监视,对网络上的信息传输进行管理以及抓取待测目标站点的数据流信息,数据流信息抓取完毕后,进入步骤3;

步骤3、通过信息识别模块判断抓取的数据流信息是否存在待测包含URL以及是否满足URL测试接口规范,若存在待测包含URL并且满足URL测试接口规范,则将该数据流信息传递给信息处理模块,并进入步骤4,否则不动作;

步骤4、信息处理模块接收并处理数据流信息中待测包含URL,同时将处理后的待测包含URL自动传输到信息存储模块进行更新,当需要对信息存储模块中新增的待测包含URL进行测试时,通过信息处理模块提取信息存储模块中新增的待测包含URL并将其手动逐一分发到各个渗透测试模块或指定的单个渗透测试模块,然后进入步骤5;

步骤5、当渗透测试模块接收到从信息处理模块传递来的待测包含URL后,执行特定渗透测试动作,最后输出测试结果并发送到云端进行更新和显示;若执行特定渗透测试动作后,云端未更新和显示测试结果,则进入步骤1。

实施例4

在实施例1中的基于被动扫描的半自动化渗透测试系统的基础上,特定参数的数据信息依然以URL为例进行说明。基于被动扫描的半自动化渗透测试方法,应用于基于被动扫描的半自动化渗透测试系统,包括以下步骤:

步骤1、建立客户端与云端之间的连接,客户端至少为一个;

步骤2、通过客户端中的信息监听模块对待测目标站点的相关接口报文数据进行监视,对网络上的信息传输进行管理以及抓取待测目标站点的数据流信息,数据流信息抓取完毕后,进入步骤3;

步骤3、通过信息识别模块判断抓取的数据流信息是否存在待测包含URL以及是否满足URL测试接口规范,若存在待测包含URL并且满足URL测试接口规范,则将该数据流信息传递给信息处理模块,并进入步骤4,否则不动作;

步骤4、信息处理模块接收并处理数据流信息中待测包含URL,同时将处理后的待测包含URL自动传输到信息存储模块进行更新,当需要对信息存储模块中新增的待测包含URL进行测试时,通过信息处理模块提取信息存储模块中新增的待测包含URL并将其自动分发到各个渗透测试模块或指定的单个渗透测试模块,然后进入步骤5;

步骤5、当渗透测试模块接收到从信息处理模块传递来的待测包含URL后,执行特定渗透测试动作,最后输出测试结果并发送到云端进行更新和显示;若执行特定渗透测试动作后,云端未更新和显示测试结果,则进入步骤1。

根据上述四个实施例,本申请提出的基于被动扫描的半自动化渗透测试系统系统及方法中,特定参数的数据信息还可以ip地址和/或接口链接等,其方法步骤与原理与本申请提出的四个实施例相类似,本申请不再以单独的实施例对其他特定参数的数据信息进行详细说明;并且,为了更符合本领域的常规操作习惯,客户端以SDK的形式安装或集成在终端目标上,当然,还可以以单独的软件形式存在;其中,特定渗透测试动作可以包括web应用漏洞检测和/或服务器漏洞检测;web应用漏洞检测优选的可以包括SQL注入检测、跨站攻击脚本XSS检测、越权检测、任意文件读取检测和弱口令爆破检测等;服务器漏洞检测优选的可以包括心脏滴血漏洞检测、Bash远程命令执行漏洞检测、Strust2远程命令执行漏洞检测和Weblogic反序列化远程代码执行漏洞检测等。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号