一种模拟客户串联部署环境的测试方法和装置与流程

文档序号:23505615发布日期:2021-01-01 18:15阅读:130来源:国知局
一种模拟客户串联部署环境的测试方法和装置与流程

本申请涉及互联网技术领域,特别是涉及一种模拟客户串联部署环境的测试方法、装置、电子装置和存储介质。



背景技术:

网络安全测试一致是信息安全关注的焦点。建立完善的网络安全测试包括对安全功能的研制、开发、测试和部署一整套流程。

在用户的使用环境中,安全防护设备的部署主要分为旁路和串联两种部署模式。旁路模式一般是指通过交换机等网络设备的“端口镜像”功能来实现监控,在此模式下,监控设备只需要连接到交换机的指定镜像端口,所以形象的称之为“旁路监控”;而串联模式一般是通过网关或者网桥的模式来进行监控,由于监控设备作为网关或者网桥串联在网络中,所以称之为“串联监控模式”。在串联模式中,由于客户现场环境各式各样,很难完全模拟出相同的测试环境,因此在对客户现场测试时,如果测试不完整,产品环境适用性差,会导致设备运行稳定性差。

目前针对相关技术中,网络测试环境适用性差的问题,尚未提出有效的解决方案。



技术实现要素:

本申请实施例提供了一种模拟客户串联部署环境的测试方法、装置、电子装置和存储介质,以至少解决相关技术中测试环境适用性差的问题。

第一方面,本申请实施例提供了一种模拟客户串联部署环境的测试方法,包括:获取现场受保护主机的流量数据;基于所述流量数据获取所述现场受保护主机与服务器之间的会话数据,并提取所述会话数据中的应用层数据;在本地测试环境中收发所述应用层数据,进行模拟测试。

在其中一些实施例中,所述获取现场受保护主机的流量数据包括:配置所述受保护主机的ip地址和端口,通过镜像方式获取所述受保护主机的所述流量数据。

在其中一些实施例中,所述基于所述流量数据获取所述现场受保护主机与服务器之间的会话数据,并提取所述会话数据中的应用层数据的步骤,包括:对所述流量数据进行筛选,得到所述现场受保护主机与服务器之间的会话数据包;从所述会话数据包中确定至少一个完整的tcp会话;提取所述tcp会话中的所述应用层数据。

在其中一些实施例中,一个完整的所述tcp会话具备会话开始的三次握手和会话结束的四次挥手。

在其中一些实施例中,所述对所述流量数据进行筛选,得到所述现场受保护主机与服务器之间的会话数据包的步骤,包括:对所述流量数据采用wireshark进行规则过滤,得到所述现场受保护主机与服务器之间的会话数据包。

在其中一些实施例中,在所述提取所述tcp会话中的所述应用层数据的步骤,包括:根据所述现场受保护主机与服务器之间的通信协议格式,在网络层查找应用层的数据发送方ip、数据发送方端口、数据接收方ip、以及数据接收方端口;根据查找到的所述数据发送方ip、数据发送方端口、数据接收方ip、以及数据接收方端口,获取所述tcp会话在应用层的数据内容;标注所述tcp会话在应用层的数据内容的分发秩序,得到所述应用层数据。

在其中一些实施例中,所述在所述本地测试环境中收发数据,进行模拟测试的步骤,包括:根据所述分发秩序,将所述应用层数据依次分发给所述本地测试环境中的客户端和服务端;在所述本地测试环境中的数据发送方端口与所述受保护主机的端口一致时,将所述应用层数据分发至所述服务端进行模拟;在所述本地测试环境中的数据接收方端口与所述受保护主机的端口一致时,将所述应用层数据分发至所述客户端进行模拟。

第二方面,本申请实施例提供了一种模拟客户串联部署环境的测试装置,包括:获取模块、提取数据模块以及模拟测试模块;所述获取模块,用于获取现场受保护主机的流量数据;所述提取数据模块,用于基于所述流量数据获取所述现场受保护主机与服务器之间的会话数据,并提取所述会话数据中的应用层数据;所述模拟测试模块,用于在本地测试环境中收发所述应用层数据,进行模拟测试。

第三方面,本申请实施例提供了一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面所述的一种模拟客户串联部署环境的测试方法。

第四方面,本申请实施例提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面所述的一种模拟客户串联部署环境的测试方法。

相比于相关技术,本申请实施例提供的一种模拟客户串联部署环境的测试方法装置、电子装置和存储介质,通过获取现场受保护主机的流量数据;基于该流量数据获取该现场受保护主机与服务器之间的会话数据,并提取该会话数据中的应用层数据在本地测试环境中收发该应用层数据,进行模拟测试。解决了网络测试环境适用性差的问题,实现了快速部署网络环境的效果。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1是本申请实施例的一种模拟客户串联部署环境的测试方法的应用终端的硬件结构框图;

图2是本申请实施例的一种模拟客户串联部署环境的测试方法的流程图;

图3是本申请实施例的一种模拟客户串联部署环境的测试方法中的模拟测试的流程图;

图4是本申请实施例的一种模拟客户串联部署环境的测试装置的结构框图;

图5是本申请实施例的一种计算机可读存储介质的结构框图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行描述和说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。基于本申请提供的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。此外,还可以理解的是,虽然这种开发过程中所作出的努力可能是复杂并且冗长的,然而对于与本申请公开的内容相关的本领域的普通技术人员而言,在本申请揭露的技术内容的基础上进行的一些设计,制造或者生产等变更只是常规的技术手段,不应当理解为本申请公开的内容不充分。

在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域普通技术人员显式地和隐式地理解的是,本申请所描述的实施例在不冲突的情况下,可以与其它实施例相结合。

除非另作定义,本申请所涉及的技术术语或者科学术语应当为本申请所属技术领域内具有一般技能的人士所理解的通常意义。本申请所涉及的“一”、“一个”、“一种”、“该”等类似词语并不表示数量限制,可表示单数或复数。本申请所涉及的术语“包括”、“包含”、“具有”以及它们任何变形,意图在于覆盖不排他的包含;例如包含了一系列步骤或模块(单元)的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可以还包括没有列出的步骤或单元,或可以还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。本申请所涉及的“连接”、“相连”、“耦接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电气的连接,不管是直接的还是间接的。本申请所涉及的“多个”是指大于或者等于两个。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。本申请所涉及的术语“第一”、“第二”、“第三”等仅仅是区别类似的对象,不代表针对对象的特定排序。

本实施例提供的方法实施例可以在终端、计算机或者类似的运算装置中执行。以运行在终端上为例,图1是本申请实施例的一种模拟客户串联部署环境的测试方法的应用终端的硬件结构框图。如图1所示,终端10可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器mcu或可编程逻辑器件fpga等的处理装置)和用于存储数据的存储器104,可选地,上述终端10还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述终端10的结构造成限定。例如,终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。

存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的一种模拟客户串联部署环境的测试方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括终端10的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(networkinterfacecontroller,简称为nic),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(radiofrequency,简称为rf)模块,其用于通过无线方式与互联网进行通讯。

本实施例提供了一种模拟客户串联部署环境的测试方法,图2是本申请实施例的一种模拟客户串联部署环境的测试方法的流程图,如图2所示,该流程包括如下步骤:

步骤s201,获取现场受保护主机的流量数据;

其中,上述的流量数据是指在现场受保护主机向服务器传输的无数个数据包,主要包含报文和数据两个部分。

具体地,本地服务器通过与现场受保护主机建立连接,通过镜像的方式接收到现场受保护主机的无数个数据包。

步骤s202,基于该流量数据获取该现场受保护主机与服务器之间的会话数据,并提取该会话数据中的应用层数据;

其中,会话数据是指tcp会话数据,一个完整的tcp会话数据包含会话开始的三次握手和会话结束的四次挥手。

具体地,通过镜像方式得到数据包之后,对数据包进行解析,解析出一次完整的tcp会话数据,再进行一次解析,解析出每一次会话中的应用层数据。

步骤s203,在本地测试环境中收发该应用层数据,进行模拟测试。

其中,应用层数据包含数据发送方ip、数据发送方端口、数据接收方ip、以及数据接收方端口以及数据内容等。

具体地,基于提取到的应用层数据,建立本地测试环境,是通过获取到一次完整的tcp会话,通过该tcp会话解析到的源ip地址、源端口、目的ip地址和目的端口,得知发送方和接收方的配置,根据这些配置,就可以建立本地的测试环境,在本地模拟出客户端和服务端,通过将请求数据从客户端发送至服务端,进行模拟测试;将返回数据从服务端发送至客户端,进行模拟测试。

需要更进一步说明的是:如果是返回数据的话,流量数据实际是从数据库服务器发送给客户端的。此时,数据库服务器的端口是作为源端口。

如果是请求数据的话,流量数据实际是从客户端发送给数据库服务器的。此时,客户端的端口是作为源端口。

在相关技术中,在客户端现场的环境中,防护设备主要分为旁路模式与串联模式两种部署模式。在串联模式中,由于受保护现场的环境较为复杂,所以要在服务器端模拟出客户端现场的测试环境十分困难,因此在对客户现场测试时,如果测试不完整,会导致测试失败。

通过上述步骤s201至s203,可以快速地在服务器端模拟出客户现场的环境,在服务器端建立本地测试,解决了网络测试环境适用性差的问题,实现了快速部署网络环境的效果。

在其中一些实施例中,获取现场受保护主机的流量数据包括:配置该受保护主机的ip地址和端口,通过镜像方式获取该受保护主机的该流量数据。

其中,通过镜像的方法获取流量数据能够直接获取到流量数据,不需要添加其他网络设备,十分便捷和快速。同时,当获取数据的客户端出现问题时,对服务器端也不会造成影响。

在其中一些实施例中,该基于该流量数据获取该现场受保护主机与服务器之间的会话数据,并提取该会话数据中的应用层数据的步骤,包括:对该流量数据进行筛选,得到该现场受保护主机与服务器之间的会话数据包;从该会话数据包中确定至少一个完整的tcp会话;提取该tcp会话中的该应用层数据。

具体地,在该流量数据中,抓取一个数据包,从该数据包中确定一个完整的tcp会话,在该tcp会话中提取该应用层数据,该应用层数据包括源ip地址、源端口、目的ip地址和目的端口等。

其中,在开放式系统互联通信参考模型中,tcp会话在传输层,是一个可靠的,连接定向的发送服务,数据分段传送。连接定向意味着在主机交换数据之前建立会话,通过将tcp会话进行解析,可以得到应用层数据,通过应用层数据的内容可以得知客户端具体的配置。从而增加模拟客户端现场环境的准确度。

在其中一些实施例中,一个完整的该tcp会话具备会话开始的三次握手和会话结束的四次挥手。

其中,通过一个完整的tcp会话可以作为一种客户现场的环境,能够更加高效的部署本地测试的环境。

在其中一些实施例中,该对该流量数据进行筛选,得到该现场受保护主机与服务器之间的会话数据包的步骤,包括:

对该流量数据采用wireshark进行规则过滤,得到该现场受保护主机与服务器之间的会话数据包。

其中,采用wireshark抓包工具抓取数据包,可以根据mac地址筛选、ip地址筛选、源ip地址筛选、目的ip地址筛选、端口过滤以及协议筛选等。通过筛选能够快速得到所需的会话数据包,通过会话数据包,确定部署的环境。

其中,只抓取符合条件的包,在wireshark通过winpacp抓包时可以过滤掉不符合条件的包,提高我们的模拟部署环境的效率。

在其中一些实施例中,在该提取该tcp会话中的该应用层数据的步骤,包括:根据该现场受保护主机与服务器之间的通信协议格式,在网络层查找应用层的数据发送方ip、数据发送方端口、数据接收方ip、以及数据接收方端口;根据查找到的该数据发送方ip、数据发送方端口、数据接收方ip、以及数据接收方端口,获取该tcp会话在应用层的数据内容;标注该tcp会话在应用层的数据内容的分发秩序,得到该应用层数据。

其中,标注该tcp会话在应用层数据内容的分发秩序,是通过记录会话数据的收取顺序和发送顺序,可以实现更加准确的模拟出客户端现场的收取顺序和发送顺序,达到快速部署出网络环境的效果。

本实施例还提供了一种模拟客户串联部署环境的测试方法中的模拟测试。图3是本申请实施例的一种模拟客户串联部署环境的测试方法中的模拟测试的流程图,如图3所示,在该本地测试环境中收发数据,进行模拟测试的步骤包括:

步骤s301,根据该分发秩序,将该应用层数据依次分发给该本地测试环境中的客户端和服务端;

步骤s302,在该本地测试环境中的数据发送方端口与该受保护主机的端口一致时,将该应用层数据分发至该服务端进行模拟;在该本地测试环境中的数据接收方端口与该受保护主机的端口一致时,将该应用层数据分发至该客户端进行模拟。

需要说明的是,需要确定该应用层数据的类型,属于请求数据还是返回数据,请求数据一定是从客户端发送至服务端,返回数据一定是从服务端发送至客户端。在模拟测试中,应该区分清楚,数据应该放在客户端还是服务端进行发送。通过上述步骤,能够更加准确地在本地模拟出现场的测试环境,提升模拟串联部署环境的准确性。

在相关技术中,在客户端现场的环境中,防护设备主要分为旁路模式与串联模式两种部署模式。在串联模式中,由于受保护现场的环境较为复杂,所以要在服务器端模拟出客户端现场的测试环境十分困难,因此在对客户现场测试时,如果测试不完整,会导致测试失败。

本实施例还提供了一种模拟客户串联部署环境的测试装置,图4是本申请实施例的一种模拟客户串联部署环境的测试装置的结构框图,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

该模拟客户串联部署环境的测试装置包括:获取模块40、提取数据模块42以及模拟测试模块44;

该获取模块40,用于获取现场受保护主机的流量数据;

其中,上述的流量数据是指在现场受保护主机向服务器传输的无数个数据包,主要包含报文和数据两个部分。

具体地,本地服务器通过与现场受保护主机建立连接,通过镜像的方式接收到现场受保护主机的无数个数据包。

该提取数据模块42,基于该流量数据获取该现场受保护主机与服务器之间的会话数据,并提取该会话数据中的应用层数据;

其中,会话数据是指tcp会话数据,一个完整的tcp会话数据包含会话开始的三次握手和会话结束的四次挥手。

具体地,通过镜像方式得到数据包之后,对数据包进行解析,解析出一次完整的tcp会话数据,再进行一次解析,解析出每一次会话中的应用层数据。

该模拟测试模块44,用于在本地测试环境中收发该应用层数据,进行模拟测试。

其中,应用层数据包含源ip地址、源端口、目的ip地址、目的端口以及数据内容等。

具体地,基于提取到的应用层数据,建立本地测试环境,是通过获取到一次完整的tcp会话,通过该tcp会话解析到的源ip地址、源端口、目的ip地址和目的端口,得知发送方和接收方的配置,根据这些配置,就可以建立本地的测试环境,在本地模拟出客户端和服务端,通过将请求数据从客户端发送至服务端,进行模拟测试;将返回数据从服务端发送至客户端,进行模拟测试。

需要更进一步说明的是:如果是返回数据的话,流量数据实际是从数据库服务器发送给客户端的。此时,数据库服务器的端口是作为源端口。

如果是请求数据的话,流量数据实际是从客户端发送给数据库服务器的。此时,客户端的端口是作为源端口。

通过上述模块的功能,解决了网络测试环境适用性差的问题,实现了快速部署网络环境的效果。

需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。

本实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。一种模拟客户串联部署环境的测试系统,包括:终端设备、传输设备以及服务器设备;其中,该终端设备通过传输设备连接服务器设备;该终端设备,用于获取现场受保护主机的流量数据;该服务器设备,用于基于该流量数据获取该现场受保护主机与服务器之间的会话数据,并提取该会话数据中的应用层数据;基于提取的该应用层数据,建立本地测试环境;在该本地测试环境中收发数据,进行模拟测试。

可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。

可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:

步骤s1,获取现场受保护主机的流量数据;

步骤s2,基于该流量数据获取该现场受保护主机与服务器之间的会话数据,并提取该会话数据中的应用层数据;

步骤s3,在本地测试环境中收发该应用层数据,进行模拟测试。

需要说明的是,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。

另外,结合上述实施例中的一种模拟客户串联部署环境的测试方法,本申请实施例可提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种模拟客户串联部署环境的测试方法。

本领域技术人员可以理解,图5中示出的结构,仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各实施例提供的一种模拟客户串联部署环境的测试方法中的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

本领域的技术人员应该明白,以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1