攻击防护方法和装置与流程

文档序号:12917398阅读:229来源:国知局
攻击防护方法和装置与流程

本申请涉及服务器安全领域,具体而言,涉及一种攻击防护方法和装置。



背景技术:

redis数据库的使用场景绝大部分是在沙盒化的环境中,因此它的安全模型是只将redis数据库部署在私有网络中,并不允许不受信用的客户接触到。在缺省情况下(即默认设置的情况下),redis数据库会绑定6379端口侦听任意ip的访问,且没有开启认证,如果没有采用防火墙规则等相关策略来避免非信任来源的ip访问,会使redis服务器直接暴露在公网上,导致攻击者可以直接访问redis服务器并进行相关的操作。

由于redis服务器使用明文传输,攻击者只需要连接上目标redis服务器后,将自己的公钥通过明文发送给redis服务器,再通过“configsetdir”命令切换redis服务器的持久化目录到/root/.ssh,最后使用“configsetdbfilename”命令将公钥存储到目标redis服务器的/root/.ssh/authorized_keys文件中,从而可以使用自己的私钥登录目标redis服务器,以实现对目标redis服务器的控制。

现有技术中采用的防护redis服务器被入侵攻击的方案为:由用户修改redis服务缺省配置,以及使用相关安全策略来禁止非信任ip的访问。

而上述方案存在两方面的缺点:一方面,云计算数据中心中用户及服务器数量庞大,查找受影响的服务器并通知用户修改缺省配置工作量繁重,且实施防护措施受限于用户安全意识以及技术能力;另一方面,无法实时的检测并阻断攻击者的入侵。

针对现有的攻击者对云计算数据中心中redis服务器的入侵攻击的方案处理效率低的问题,目前尚未提出有效的解决方案。



技术实现要素:

本申请实施例提供了一种攻击防护方法和装置,以至少解决攻击者对云计算数据中心中redis服务器的入侵攻击的方案处理效率低的技术问题。

根据本申请实施例的一个方面,提供了一种攻击防护方法,该方法包括:获取报 文镜像;基于报文镜像,检测是否发生预设事件;在检测出发生预设事件的情况下,阻断预设事件的目的端与源端的连接。

根据本申请实施例的另一方面,还提供了一种攻击防护系统,该系统包括:镜像装置,用于采集报文镜像;第一服务器,用于基于所述报文镜像,检测是否发生预设事件,还用于在检测出发生所述预设事件的情况下,阻断所述报文的目的端和源端之间的连接。

根据本申请实施例的另一方面,还提供了一种攻击防护装置,该装置包括:获取单元,用于获取报文镜像;检测单元,用于基于所述报文镜像,检测是否发生预设事件;防护单元,用于在检测出发生所述预设事件的情况下,阻断所述报文的目的端和源端之间的连接。

在本申请实施例中,将数据中心的数据报文镜像为报文镜像,基于报文镜像,可以检测出数据中心是否发生源端对redis服务器的入侵攻击事件(即预设事件),若检测出有入侵攻击事件,则阻断入侵预设事件的目的端与源端的连接。通过上述实施例,由于产生的报文镜像是实时的,且基于报文镜像确定数据中心是否发生预设事件,从而可以实时确定数据中心发生的入侵攻击事件,因此,基于对产生的报文镜像进行分析的方式,可以实时检测出攻击者对云计算数据中心中redis服务器的入侵攻击事件,并可以实时的进行阻断拦截,从而可以提高处理效率,解决了现有技术中攻击者对云计算数据中心中redis服务器的入侵攻击的方案处理效率低的问题。

附图说明

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

图1是根据本申请实施例的一种攻击防护方法的计算机终端的硬件结构框图;

图2是根据本申请实施例的一种攻击防护方法的流程图;

图3是根据本申请实施例的一种可选的攻击防护系统的示意图;

图4是根据本申请实施例的一种可选的攻击防护方法的流程图;

图5是根据本申请实施例的一种可选的阻断报文的格式的示意图;

图6是根据本申请实施例的另一种可选的阻断报文的格式的示意图;

图7是根据本申请实施例的又一种可选的阻断报文的格式的示意图;

图8是根据本申请实施例的一种攻击防护系统的示意图;

图9是根据本申请实施例的一种攻击防护装置的示意图;

图10是根据本申请实施例的一种可选的攻击防护装置的示意图;

图11是根据本申请实施例的一种计算机终端的结构框图。

具体实施方式

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。

需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

首先,对本申请涉及到的名词解释如下:

redis:是一个开源的使用ansic语言编写的key-value数据库,其具有支持网络、可以支持内存也可以持久化、以及高性能、丰富的数据类型、原子性等特点,在特定领域具有一定的不可替代性。

镜像流量:通过交换机或路由器,将一个或多个端口的数据流量转发到某一个特定端口,可以在不影响原始业务的情况下实现对网络行为的监听。

公钥、私钥:通过一种特定算法生成的一对秘钥,其中公开的部分为公钥,非公开的部分为私钥。公钥通常用于数据加密和验证数据,私钥通常用于数据解密。

云计算数据中心:一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需提供给计算机和其他设备。

攻击事件:是指通过网络或其他技术手段,利用信息系统的配置缺陷、协议缺陷、程序缺陷或者使用暴力攻击对信息系统事实攻击,并造成信息系统异常或对信息系统 当前运行造成潜在危险的信息安全事件。

实施例1

根据本申请实施例,还提供了一种攻击防护方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是根据本申请实施例的一种攻击防护方法的计算机终端的硬件结构框图。如图1所示,计算机终端10可以包括一个或多个(图中仅示出一个)处理器102(处理器102可以包括但不限于微处理器mcu或可编程逻辑器件fpga等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。

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

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

上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

在上述运行环境下,本申请提供了一种攻击防护方法。图2是根据本申请实施例的一种攻击防护方法的流程图。如图2所示,该方法可以包括如下步骤:

步骤s202:获取报文镜像。

步骤s204:基于报文镜像,检测是否发生预设事件。

步骤s206:在检测出发生预设事件的情况下,阻断预设事件的目的端与源端的连接。

采用本申请实施例,将数据中心的数据报文镜像为报文镜像,基于报文镜像,可以检测出数据中心是否发生源端对redis服务器的入侵攻击事件(即上述的预设事件),若检测出有入侵攻击事件,则阻断入侵预设事件的目的端与源端的连接。通过上述实施例,由于产生的报文镜像是实时的,且基于报文镜像确定数据中心是否发生预设事件,从而可以实时确定数据中心发生的入侵攻击事件,因此,基于对产生的报文镜像进行分析的方式,可以实时检测出攻击者对云计算数据中心中redis服务器的入侵预设事件,并可以实时的进行阻断拦截,从而可以提高处理效率,解决了现有技术中攻击者对云计算数据中心中redis服务器的入侵攻击的方案处理效率低的问题。

在上述实施例中,无需修改缺省配置即可实现实时地防护redis服务器,从而可以解决在规模庞大的云计算数据中心中实时的发现、阻隔基于redis的入侵攻击,并能将结果实时同步给受影响的用户,帮助用户及时采取防护措施。

上述实施例中的预设事件为攻击事件,目的端为攻击事件的被攻击方,源端为攻击事件的攻击方。

上述实施例中的步骤s202:获取镜像数据中心的数据报文而产生的报文镜像,可以通过镜像装置,如交换机或者路由器,来实现。该报文镜像中可以包括一份报文,也可以包括多份报文。

例如,将交换机或者路由器部署在数据中心的入口,将进入数据中心和从数据中心出去的报文流量全部镜像一份,得到上述的报文镜像。在该实施例中,报文镜像为报文镜像流量。

通过上述步骤可以实时获取数据中心的报文数据。

在交换机或者路由器获取报文镜像之后,将报文镜像发送至第一服务器,该第一服务器可以位于分析集群(即analyse集群,即analyse服务器群),该analyse集群中可以包括多个第一服务器。

具体地,analyse集群上的第一服务器接收到报文镜像,并逐一分析报文镜像中的报文内容,以确定数据中心是否发生预设事件。由于非对称路由导致同一条攻击/应答报文可能会被多台analyse集群中的第一服务器检测,所以每台analyse服务器 检测到预设事件,可以将涉及预设事件的报文转发给第二服务器,第二服务器对其进行汇总分析,并确定阻断的所述目的端和源端,以阻断所述目的端和源端。

其中,第二服务器可以为汇总服务器(如summary服务器),该服务器用于统一分析决策。源端可以为位于计算机网络集群中的一个或多个计算机终端,目的端可以为位于数据中心的redis服务器。

第二服务器接收到analyse集群的所有涉及预设事件的报文数据之后,将数据进行组合汇总,分析入侵攻击结果以及攻击源后,通知analyse服务器使用向受攻击的redis服务器以及攻击者发送tcpreset报文的方式阻断其连接,并且将受攻击的服务器反馈给用户。

通过上述实施例,可以通过镜像数据中心的数据报文,以实时检测攻击者对云计算中心redis服务器的入侵攻击事件,实时的进行阻断拦截。

具体地,基于报文镜像,检测是否发生预设事件包括:检测报文镜像中是否存在具有攻击特征的攻击报文;在检测出报文镜像中存在攻击报文的情况下,确定检测出数据中心发生预设事件。

终端通过访问请求的方式访问服务器,访问请求携带在访问报文中,对访问报文进行封装得到数据包,将数据包发送至数据中心的目标访问服务器,该数据包流经数据中心的入口时就会被交换机/路由器镜像下来,得到报文镜像。也即,报文镜像中携带有多个数据报文,通过检测报文镜像中是否存在具有攻击特征的攻击报文,可以检测数据中心是否发生预设事件。

进一步地,若在报文镜像中检测出具有攻击特征的攻击报文,则检测出数据中心发生了预设事件;若在报文镜像中未检测出具有攻击特征的攻击报文,则检测出数据中心未发生预设事件。

具体地,analyse集群上的第一服务器接收到报文镜像,并逐一分析报文镜像中的报文内容,以确定数据中心是否发生预设事件。由于非对称路由导致同一条攻击/应答报文可能会被多台analyse集群中的第一服务器检测,所以每台analyse服务器检测到redis入侵攻击的攻击报文后,可以将攻击报文转发给第二服务器,第二服务器对其进行汇总分析。

其中,第二服务器可以为汇总服务器(如summary服务器),该服务器用于统一分析决策。

第二服务器接收到analyse集群的攻击报文之后,将攻击报文进行组合汇总,分 析入侵攻击结果以及攻击源(即上述的源端)后,通知第一服务器(即analyse服务器)使用向受攻击的redis服务器以及攻击者发送tcpreset报文的方式阻断其连接,并且将受攻击的服务器反馈给用户。

具体地,阻断预设事件的目的端与源端的连接包括:利用攻击报文中的源ip和目的ip,合并攻击报文,得到请求应答信息;确定请求应答信息所指示的所述目的端和源端;发送阻断报文,其中,阻断报文用于阻断目的端与源端的连接。

可选地,发送阻断报文包括:分别向目的端和源端发送阻断报文;或向目的端发送阻断报文。

终端与redis服务器进行信息交互的数据包中,可以记录有源ip地址、目的ip地址、源端口和目的端口,通过这些信息可以确定数据包中的报文为请求报文还是应答报文。

终端与redis服务器进行信息交互时,终端生成请求报文,将请求报文通过数据中心的入口输入对应的redis服务器,redis服务器生成响应的应答报文,在交换机或路由器镜像数据中心的数据报文得到报文镜像之后,该报文镜像中包含大量的请求报文和应答报文,将对应的请求报文和应答报文组合起来得到的请求应答信息,可以更加准确地判断数据中心是否发生预设事件。

下面结合图3和图4详述本申请实施例,如图3所示,该实施例由机房入口流量镜像交换机/路由器31、数据的analyse采集分析集群33和summary汇总服务器35来实现。如图4所示该实施例可以通过如下步骤实现:

步骤s402:获取镜像数据中心的数据报文而产生的报文镜像。

具体地,交换机/路由器部署于数据中心入口,将进入数据中心和从数据中心出去的报文流量全部镜像一份发送给analyse分析集群。

步骤s404:检测报文镜像中是否存在具有攻击特征的攻击报文。

在检测出报文镜像中存在攻击报文的情况下,确定检测出数据中心发生预设事件;在报文镜像中不存在攻击报文的情况下,确定数据中心为发生预设事件。

analyse集群中的第一服务器接收到镜像流量之后,逐一分析流量中的报文内容。由于非对称路由导致同一条攻击/应答报文可能会被多台analyse服务器检测,所以每台analyse服务器检测到redis入侵攻击相关报文后就将其转发给summary服务器统一分析决策。

步骤s406:利用攻击报文中的源ip和目的ip,合并攻击报文,得到请求应答信息。

步骤s408:确定请求应答信息所指示的目的端和源端。

步骤s410:通过分析集群中的服务器分别向目的端与源端发送阻断报文。

汇总服务器接收analyse集群的所有入侵攻击报文数据,并将数据进行组合汇总,分析入侵攻击结果以及攻击源后,通知analyse服务器使用向受攻击的redis服务器以及攻击者发送tcpreset报文的方式阻断其连接,并且将受攻击的服务器反馈给用户。

需要进一步说明的是,在确定请求应答信息所指示的目的端和源端之后,方法还可以包括:根据请求应答信息确定目的端是否设置有安全认证机制;在确定目的端未设置安全认证机制的情况下,生成反馈信息,其中,反馈信息用于提示设置目的端的安全认证机制。

具体地,根据请求应答信息确定目的端是否设置有安全认证机制包括:

在请求应答信息指示检测到的请求报文为入侵报文、且应答报文包含确认信息的情况下,确定目的端未设置安全认证机制;在请求应答信息指示检测到的请求报文为入侵报文、且应答报文包含认证请求信息的情况下,确定目的端设置有安全认证机制,其中,请求应答信息包括请求报文和应答报文。

进一步地,在请求应答信息指示在第一时长内检测到的请求报文为入侵报文、且应答报文包含确认信息的情况下,确定目的端未设置安全认证机制;在请求应答信息指示在第一时长内检测到的请求报文为入侵报文、且应答报文包含认证请求信息的情况下,确定目的端设置有安全认证机制,其中,请求应答信息包括请求报文和应答报文。

其中,第一时长可以为5秒。

上述的包含确认信息的应答报文可以为包含“ok”等信息的应答报文;包含认证请求信息的应答报文可以为包括“请提供认证信息”的报文。

根据本申请的上述实施例,在确定请求应答信息所指示的目的端和源端之后,方法还可以包括:若检测到的多个请求应答信息具有相同的源端,则确定源端为恶意源端;阻断恶意源端与数据中心的任意一个服务器建立连接。

在上述实施例中,若在第二时长内检测到一个源端对多个目的端发起进攻,则可以确定该源端为恶意源端,则阻断该恶意源端与数据中心中的所有服务器的连接,以 避免数据中心的服务器再次遭受该恶意源端的攻击。

上述实施例中的所述目的端和源端通过ip地址标识。

在上述实施例中,检测报文镜像中是否存在具有攻击特征的攻击报文可以包括:从报文镜像中,获取具有预置端口的数据包;检测数据包是否包含预设字符串;若检测出数据包包含预设字符串,则确定检测到攻击报文。

具有预置端口的数据包可以为源端口为预置端口或目的端口为预置端口的数据包。

该预置端口可以为redis服务器的6379端口。

进一步地,在确定检测到攻击报文之后,根据数据包的端口信息和预设字符串的类型确定攻击报文的类型。

具体地,根据数据包的端口信息和预设字符串的类型确定攻击报文的类型包括:

若数据包的目的端口为预置端口,在检测出数据包中包含第一字符串的情况下,确定攻击报文为入侵报文,其中,第一字符串中包含配置集目录命令,端口信息包括目的端口;

若数据包的源端口为预置端口,在检测出数据包中包含第二字符串的情况下,确定攻击报文为包含确认信息的应答报文,其中,第二字符串中包含确认信息,端口信息包括源端口;

若数据包的源端口为预置端口,在检测出数据包中包含第三字符串的情况下,确定攻击报文为包含认证请求信息的应答报文,其中,第三字符串中包含认证请求信息,端口信息为源端口。

下面结合图3,以redis服务器为例,详述本申请实施例。

analyse集群中的第一服务器对所有源端口或者目的端口为redis服务器缺省端口6379(即上述实施例中的预置端口)的tcp报文进行分析,判断tcp报文是否为攻击报文。

若检测到目的端口为6379的tcp数据包中包含第一字符串(如“configsetdir/root/.ssh”)时,则确定该数据包中携带的请求报文具有攻击特征,该攻击报文为具有配置集目录命令的报文,将报文的源ip地址、源端口、目的ip地址、目的端口以及tcp报文内容上报到汇总服务器summary服务器。

若检测到源端口为6379的tcp数据包中包含第二字符串(如“ok”字符串)时,则确定该数据包中携带的报文为具有攻击特征,该攻击报文为具有确认信息的应答报 文,将报文源ip地址、源端口、目的ip地址、目的端口以及tcp报文内容上报到summary服务器。

若检测到源端口为6379的tcp数据包中包含第三字符串(如“-noauthauthenticationrequired”)字符串时,则确定该数据包中携带的报文为具有攻击特征,该攻击报文为具有认证请求息的应答报文,将报文源ip地址、源端口、目的ip地址、目的端口以及tcp报文内容上报到summary服务器。

通过上述分析集群中的第一服务器可以检测出三类攻击报文:第一类为具有配置集目录命令的请求报文;第二类为包含确认信息的应答报文,第三类为包含认证请求信息的应答报文。summary服务器对所有analyse集群上报的报文实时的以源ip、目的ip进行合并,组合成一对ip地址之间的数据通信的请求应答信息,并对请求应答信息进行分析。

具体地,当在检测到上述的第一类报文时,则认定为对目的服务器的redis入侵攻击,记录此攻击,并向analyse集群下发命令,由analyse服务器向攻击源ip以及被攻击服务器发送tcpreset报文,阻断该攻击源ip的tcp连接。

在该种场景下的阻断报文的格式如图5所示,该中场景下向攻击者发送的阻断报文中包括:源ip:被入侵的服务器ip;目的ip:攻击者ip;报文长度:40字节(ip头产度+tcp头长度,无tcp载荷);tcp源端口号:6379;tcp目的端口号:攻击者发送tcp报文中携带的tcp源端口;tcp序列号:攻击者发送的tcp报文中的确认序列号;以及tcp应答序列号:攻击者发送的tcp报文中的序列号+tcp负载长度。

当在一段时间以内(如5s)检测到一对ip地址之间第一步中的第一类和第二类报文后,认定该目的服务器遭受攻击,且没有设置redis安全认证机制,向analyse集群下发命令,由analyse服务器向被攻击服务器发送tcpreset报文,阻断该攻击的tcp连接,此外,记录该入侵事件并报告用户。

在该种场景下的阻断报文的格式如图6所示,该中场景下向攻击者发送的阻断报文中包括:源ip:攻击者ip;目的ip:被入侵的服务器ip;报文长度:40字节(ip头产度+tcp头长度,无tcp载荷);tcp源端口号:被攻击者发送的tcp报文的目的tcp端口;tcp目的端口号:被攻击者发送tcp报文中携带的tcp源端口;tcp序列号:被攻击者发送的tcp报文中的确认序列号;tcp应答序列号:被攻击者发送的tcp报文中的序列号+tcp负载长度。

当在一段时间以内(如5s)检测到一对ip地址之间第一步中的第一类和第三类报文后,认定该目的服务器遭受攻击,但因为设置了认证机制并没有被成功入侵,记 录此次攻击,并向analyse集群下发命令,由analyse服务器向被攻击的服务器发送tcpreset报文,阻断该攻击源ip的tcp连接。

在该种场景下的阻断报文的格式如图7所示,该中场景下向攻击者发送的阻断报文中包括:源ip:攻击者ip;目的ip:被入侵的服务器ip;报文长度:40字节(ip头产度+tcp头长度,无tcp载荷);tcp源端口号:被访问的服务器发送的tcpsyn-ack报文的目的tcp端口;tcp目的端口号:被访问的服务器发送的tcpsyn-ack报文中携带的tcp源端口;tcp序列号:被访问的服务器发送的tcpsyn-ack报文中的确认序列号;tcp应答序列号:被访问的服务器发送的tcpsyn-ack报文中的序列号+1。

需要说明的是,当在一段时间以内(3分钟)检测到一个源ip(即源端)向多个(如大于5个)目的服务器发送第一类的报文后,认定该源ip为恶意攻击者,向analyse集群下发命令,一段时间内(2小时)对于该攻击源ip到数据中心的任何tcpsyn报文,在收到被访问服务器的tcpsyn-ack报文后,向被访问服务器发送tcpreset报文,阻止攻击者其向数据中心建立任何连接。

summary服务器将所有攻击事件(即上述的预设时间)记录,对于没有设置redis安全认证机制的服务器,反馈到用户中心,提示用户及时修复。

通过本申请上述实施例,可以实时检测攻击者对云计算数据中心中redis服务器的入侵攻击事件,实时的进行阻断拦截,并能将未设置安全认证的redis服务器识别出来,及时通知提醒用户修复。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。

实施例2

根据本申请实施例,还提供了一种用于实施上述攻击防护方法的攻击防护系统,如图8所示,该系统包括:

镜像装置81,用于采集报文镜像;

第一服务器83,用于基于报文镜像,检测是否发生预设事件,并在检测出发生预设事件的情况下,阻断预设事件的目的端与源端的连接。

通过上述实施例,将数据中心的数据报文镜像为报文镜像,基于报文镜像,可以检测出数据中心是否发生源端对redis服务器的入侵攻击事件,若检测出有入侵攻击事件,则阻断入侵预设事件的目的端与源端的连接。通过上述实施例,由于产生的报文镜像是实时的,且基于报文镜像确定数据中心是否发生预设事件,从而可以实时确定数据中心发生的入侵攻击事件,因此,基于对产生的报文镜像进行分析的方式,可以实时检测出攻击者对云计算数据中心中redis服务器的入侵攻击事件,并可以实时的进行阻断拦截,从而可以提高处理效率,解决了现有技术中攻击者对云计算数据中心中redis服务器的入侵攻击的方案处理效率低的问题。

在上述实施例中,无需修改缺省配置即可实现实时地防护redis服务器,从而可以解决在规模庞大的云计算数据中心中实时的发现、阻隔基于redis的入侵攻击,并能将结果实时同步给受影响的用户,帮助用户及时采取防护措施。

上述实施例中的获取镜像数据中心的数据报文而产生的报文镜像,可以通过镜像装置,如交换机或者路由器,来实现。

具体地,将交换机或者路由器部署在数据中心的入口,将进入数据中心和从数据中心出去的报文流量全部镜像一份,得到上述的报文镜像。

通过上述实施例可以实时获取数据中心的报文数据。

在交换机或者路由器获取报文镜像之后,将报文镜像发送至第一服务器,该第一服务器可以位于分析集群(即analyse集群),该analyse集群中可以包括多个第一服务器。

具体地,analyse集群上的第一服务器接收到报文镜像,并逐一分析报文镜像中的报文内容,以确定数据中心是否发生预设事件。由于非对称路由导致同一条攻击/应答报文可能会被多台analyse集群中的第一服务器检测,所以每台analyse服务器检测到预设事件,可以将涉及预设事件的报文转发给第二服务器,第二服务器对其进行汇总分析,并确定阻断的所述目的端和源端,以阻断所述目的端和源端。

其中,第二服务器可以为汇总服务器(如summary服务器),该服务器用于统一分 析决策。源端可以为位于计算机网络集群中的一个或多个计算机终端,目的端可以为位于数据中心的redis服务器。

第二服务器接收到analyse集群的所有涉及预设事件的报文数据之后,将数据进行组合汇总,分析入侵攻击结果以及攻击源后,通知analyse服务器使用向受攻击的redis服务器以及攻击者发送tcpreset报文的方式阻断其连接,并且将受攻击的服务器反馈给用户。

通过上述实施例,可以通过镜像数据中心的数据报文,以实时检测攻击者对云计算中心redis服务器的入侵攻击事件,实时的进行阻断拦截。

上述实施例中的,第一服务器具体用于检测报文镜像中是否存在具有攻击特征的攻击报文,并在检测出报文镜像中存在攻击报文的情况下,确定检测出数据中心发生预设事件,并将攻击报文转发至第二服务器85。

可选地,第二服务器具体用于利用攻击报文中的源ip和目的ip,合并攻击报文,得到请求应答信息;确定请求应答信息所指示的目的端和源端。

在第二服务器确定目的端和源端之后,通知第一服务器分别向目的端与源端发送阻断报文,其中,阻断报文用于阻断目的端与源端的连接。

可选地,第二服务器还用于:在确定请求应答信息所指示的目的端和源端之后,根据请求应答信息确定目的端是否设置有安全认证机制;在确定目的端未设置安全认证机制的情况下,生成反馈信息,其中,反馈信息用于提示设置目的端的安全认证机制。

本实施例中所提供的服务器、装置与方法实施例对应步骤所提供的使用方法相同、应用场景也可以相同。当然,需要注意的是,上述系统涉及的方案可以不限于上述实施例中的内容和场景。

实施例3

根据本申请实施例,还提供了一种用于实施上述攻击防护方法的攻击防护装置,如图9所示,该装置包括:

获取单元91,用于获取报文镜像;

检测单元93,用于基于报文镜像,检测是否发生预设事件;

防护单元95,用于在检测出发生预设事件的情况下,阻断预设事件的目的端与源端的连接。

采用本申请实施例,将数据中心的数据报文镜像为报文镜像,基于报文镜像,可以检测出数据中心是否发生源端对redis服务器的入侵预设事件,若检测出有入侵预设事件,则阻断入侵预设事件的目的端与源端的连接。通过上述实施例,由于产生的报文镜像是实时的,且基于报文镜像确定数据中心是否发生预设事件,从而可以实时确定数据中心发生的入侵预设事件,因此,基于对产生的报文镜像进行分析的方式,可以实时检测出攻击者对云计算数据中心中redis服务器的入侵预设事件,并可以实时的进行阻断拦截,从而可以提高处理效率,解决了现有技术中攻击者对云计算数据中心中redis服务器的入侵攻击的方案处理效率低的问题。

在上述实施例中,无需修改缺省配置即可实现实时地防护redis服务器,从而可以解决在规模庞大的云计算数据中心中实时的发现、阻隔基于redis的入侵攻击,并能将结果实时同步给受影响的用户,帮助用户及时采取防护措施。

上述获取镜像数据中心的数据报文而产生的报文镜像,可以通过镜像装置,如交换机或者路由器,来实现。

具体地,将交换机或者路由器部署在数据中心的入口,将进入数据中心和从数据中心出去的报文流量全部镜像一份,得到上述的报文镜像。

通过上述实施例可以实时获取数据中心的报文数据。

在交换机或者路由器获取报文镜像之后,将报文镜像发送至第一服务器,该第一服务器可以位于分析集群(即analyse集群),该analyse集群中可以包括多个第一服务器。

具体地,analyse集群上的第一服务器接收到报文镜像,并逐一分析报文镜像中的报文内容,以确定数据中心是否发生预设事件。由于非对称路由导致同一条攻击/应答报文可能会被多台analyse集群中的第一服务器检测,所以每台analyse服务器检测到预设事件,可以将涉及预设事件的报文转发给第二服务器,第二服务器对其进行汇总分析,并确定阻断的目的端和源端,以阻断目的端和源端。

其中,第二服务器可以为汇总服务器(如summary服务器),该服务器用于统一分析决策。源端可以为位于计算机网络集群中的一个或多个计算机终端,目的端可以为位于数据中心的redis服务器。

第二服务器接收到analyse集群的所有涉及预设事件的报文数据之后,将数据进行组合汇总,分析入侵攻击结果以及攻击源后,通知analyse服务器使用向受攻击的redis服务器以及攻击者发送tcpreset报文的方式阻断其连接,并且将受攻击的服务器反馈给用户。

通过上述实施例,可以通过镜像数据中心的数据报文,以实时检测攻击者对云计算中心redis服务器的入侵预设事件,实时的进行阻断拦截。

可选地,检测单元可以包括:检测模块,用于检测报文镜像中是否存在具有攻击特征的攻击报文;第一确定模块,用于在检测出报文镜像中存在攻击报文的情况下,确定检测出数据中心发生预设事件。

可选地,防护单元可以包括:合并模块,用于利用攻击报文中的源ip和目的ip,合并攻击报文,得到请求应答信息;第二确定模块,用于确定请求应答信息所指示的目的端和源端;发送模块,用于分别向目的端与源端发送阻断报文,其中,阻断报文用于阻断目的端与源端的连接。

进一步地,装置还可以包括如图10所示:判断单元1001,用于在确定请求应答信息所指示的目的端和源端之后,根据请求应答信息确定目的端是否设置有安全认证机制;生成单元1003,用于在确定目的端未设置安全认证机制的情况下,生成反馈信息,其中,反馈信息用于提示设置目的端的安全认证机制。

根据本申请的上述实施例,判断单元可以包括:第一判断模块,用于在请求应答信息指示检测到的请求报文为入侵报文、且应答报文包含确认信息的情况下,确定目的端未设置安全认证机制;第二判断模块,用于在请求应答信息指示检测到的请求报文为入侵报文、且应答报文包含认证请求信息的情况下,确定目的端设置有安全认证机制,其中,请求应答信息包括请求报文和应答报文。

进一步地,该装置还可以包括:第一确定单元,用于在确定请求应答信息所指示的目的端和源端之后,若检测到的多个请求应答信息具有相同的源端,则确定源端为恶意源端;阻断单元,用于阻断恶意源端与数据中心的任意一个服务器建立连接。

上述实施例中的检测模块可以包括:获取子模块,用于从报文镜像中,获取具有预置端口的数据包;检测子模块,用于检测数据包是否包含预设字符串;确定子模块,用于若检测出数据包包含预设字符串,则确定检测到攻击报文。

需要进一步说明的是,方法还可以包括:第二确定单元,用于在确定检测到攻击报文之后,根据数据包的端口信息和预设字符串的类型确定攻击报文的类型。

具体地,第二确定单元包括:第三确定模块,用于若数据包的目的端口为预置端口,在检测出数据包中包含第一字符串的情况下,确定攻击报文为入侵报文,其中,第一字符串中包含配置集目录命令,端口信息包括目的端口;第四确定模块,用于若数据包的源端口为预置端口,在检测出数据包中包含第二字符串的情况下,确定攻击报文为包含确认信息的应答报文,其中,第二字符串中包含确认信息,端口信息包括 源端口;第五确定模块,用于若数据包的源端口为预置端口,在检测出数据包中包含第三字符串的情况下,确定攻击报文为包含认证请求信息的应答报文,其中,第三字符串中包含认证请求信息,端口信息为源端口。

本实施例中所提供的各个模块与方法实施例对应步骤所提供的使用方法相同、应用场景也可以相同。当然,需要注意的是,上述模块涉及的方案可以不限于上述实施例中的内容和场景,且上述模块可以运行在计算机终端或移动终端,可以通过软件或硬件实现。

实施例4

本申请的实施例可以提供一种计算机终端,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。

可选地,在本实施例中,上述计算机终端可以位于计算机网络的多个网络设备中的至少一个网络设备。

在本实施例中,上述计算机终端可以执行攻击防护方法中以下步骤的程序代码:

步骤s2:获取报文镜像。

步骤s4:基于报文镜像,检测是否发生预设事件。

步骤s6:在检测出发生预设事件的情况下,阻断预设事件的目的端与源端的连接。

可选地,图11是根据本申请实施例的一种计算机终端的结构框图。如图11所示,该计算机终端a可以包括:一个或多个(图中仅示出一个)处理器、存储器、以及传输装置。

其中,存储器可用于存储软件程序以及模块,如本申请实施例中的攻击防护方法和装置对应的程序指令/模块,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的攻击防护方法。存储器可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至终端a。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

可选的,上述处理器还可以执行如下步骤的程序代码:检测报文镜像中是否存在具有攻击特征的攻击报文;在检测出报文镜像中存在攻击报文的情况下,确定检测出 数据中心发生预设事件。

可选的,上述处理器还可以执行如下步骤的程序代码:利用攻击报文中的源ip和目的ip,合并攻击报文,得到请求应答信息;确定请求应答信息所指示的所述目的端和源端;分别向目的端与源端发送阻断报文,其中,阻断报文用于阻断目的端与源端的连接。

可选的,上述处理器还可以执行如下步骤的程序代码:根据请求应答信息确定目的端是否设置有安全认证机制;在确定目的端未设置安全认证机制的情况下,生成反馈信息,其中,反馈信息用于提示设置目的端的安全认证机制。

可选的,上述处理器还可以执行如下步骤的程序代码:在请求应答信息指示检测到的请求报文为入侵报文、且应答报文包含确认信息的情况下,确定目的端未设置安全认证机制;在请求应答信息指示检测到的请求报文为入侵报文、且应答报文包含认证请求信息的情况下,确定目的端设置有安全认证机制,其中,请求应答报文对请求应答信息包括请求报文和应答报文。

可选的,上述处理器还可以执行如下步骤的程序代码:若检测到的多个请求应答信息具有相同的源端,则确定源端为恶意源端;阻断恶意源端与数据中心的任意一个服务器建立连接。

可选的,上述处理器还可以执行如下步骤的程序代码:从报文镜像中,获取具有预置端口的数据包;检测数据包是否包含预设字符串;若检测出数据包包含预设字符串,则确定检测到攻击报文。

可选的,上述处理器还可以执行如下步骤的程序代码:根据数据包的端口信息和预设字符串的类型确定攻击报文的类型。

可选的,上述处理器还可以执行如下步骤的程序代码:若数据包的目的端口为预置端口,在检测出数据包中包含第一字符串的情况下,确定攻击报文为入侵报文,其中,第一字符串中包含配置集目录命令,端口信息包括目的端口;若数据包的源端口为预置端口,在检测出数据包中包含第二字符串的情况下,确定攻击报文为包含确认信息的应答报文,其中,第二字符串中包含确认信息,端口信息包括源端口;若数据包的源端口为预置端口,在检测出数据包中包含第三字符串的情况下,确定攻击报文为包含认证请求信息的应答报文,其中,第三字符串中包含认证请求信息,端口信息为源端口。

通过上述实施例,由于产生的报文镜像是实时的,且基于报文镜像确定数据中心是否发生预设事件,从而可以实时确定数据中心发生的入侵预设事件,因此,基于对 产生的报文镜像进行分析的方式,可以实时检测出攻击者对云计算数据中心中redis服务器的入侵预设事件,并可以实时的进行阻断拦截,从而可以提高处理效率,解决了现有技术中攻击者对云计算数据中心中redis服务器的入侵攻击的方案处理效率低的问题。

本领域普通技术人员可以理解,图11所示的结构仅为示意,计算机终端也可以是智能手机(如android手机、ios手机等)、平板电脑、掌声电脑以及移动互联网设备(mobileinternetdevices,mid)、pad等终端设备。图11其并不对上述电子装置的结构造成限定。例如,计算机终端10还可包括比图11中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图11所示不同的配置。

本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(read-onlymemory,rom)、随机存取器(randomaccessmemory,ram)、磁盘或光盘等。

实施例5

本申请的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例一所提供的攻击防护方法所执行的程序代码。

可选地,在本实施例中,上述存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。

可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:

步骤s1:获取报文镜像。

步骤s3:基于报文镜像,检测是否发生预设事件。

步骤s5:在检测出发生预设事件的情况下,阻断预设事件的目的端与源端的连接。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:检测报文镜像中是否存在具有攻击特征的攻击报文;在检测出报文镜像中存在攻击报文的情况下,确定检测出数据中心发生预设事件。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:利用攻击报文中的源ip和目的ip,合并攻击报文,得到请求应答信息;确定请求应答信息所指示的所述目的端和源端;分别向目的端与源端发送阻断报文,其中,阻断报文用于阻断目的端与源端的连接。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:根据请求应答信息确定目的端是否设置有安全认证机制;在确定目的端未设置安全认证机制的情况下,生成反馈信息,其中,反馈信息用于提示设置目的端的安全认证机制。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:在请求应答信息指示检测到的请求报文为入侵报文、且应答报文包含确认信息的情况下,确定目的端未设置安全认证机制;在请求应答信息指示检测到的请求报文为入侵报文、且应答报文包含认证请求信息的情况下,确定目的端设置有安全认证机制,其中,请求应答报文对请求应答信息包括请求报文和应答报文。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:若检测到的多个请求应答信息具有相同的源端,则确定源端为恶意源端;阻断恶意源端与数据中心的任意一个服务器建立连接。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:从报文镜像中,获取具有预置端口的数据包;检测数据包是否包含预设字符串;若检测出数据包包含预设字符串,则确定检测到攻击报文。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:根据数据包的端口信息和预设字符串的类型确定攻击报文的类型。

可选地,存储介质还被设置为存储用于执行以下步骤的程序代码:若数据包的目的端口为预置端口,在检测出数据包中包含第一字符串的情况下,确定攻击报文为入侵报文,其中,第一字符串中包含配置集目录命令,端口信息包括目的端口;若数据包的源端口为预置端口,在检测出数据包中包含第二字符串的情况下,确定攻击报文为包含确认信息的应答报文,其中,第二字符串中包含确认信息,端口信息包括源端口;若数据包的源端口为预置端口,在检测出数据包中包含第三字符串的情况下,确定攻击报文为包含认证请求信息的应答报文,其中,第三字符串中包含认证请求信息,端口信息为源端口。

通过上述实施例,由于产生的报文镜像是实时的,且基于报文镜像确定数据中心是否发生预设事件,从而可以实时确定数据中心发生的入侵攻击事件,因此,基于对产生的报文镜像进行分析的方式,可以实时检测出攻击者对云计算数据中心中redis服务器的入侵攻击事件,并可以实时的进行阻断拦截,从而可以提高处理效率,解决了现有技术中攻击者对云计算数据中心中redis服务器的入侵攻击的方案处理效率低的问题。

上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。

在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。

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