一种攻击防御方法及装置与流程

文档序号:19632005发布日期:2020-01-07 11:35阅读:163来源:国知局
一种攻击防御方法及装置与流程
本公开涉及网络安全
技术领域
,特别是涉及一种攻击防御方法及装置。
背景技术
:目前,网络中存在大量的攻击,例如针对服务器的攻击等。bmc(baseboardmanagementcontroller,基板控制器)作为服务器上带外管理的硬件,也会受到攻击,且由于bmc的报文处理能力不足,在受到攻击时bmc很容易挂死,导致失去对服务器健康状态的监控,不能及时向网络管理员反馈服务器状态。技术实现要素:本公开实施例的目的在于提供一种攻击防御方法及装置,以在实现攻击防御的情况下,降低对bmc的冲击,减少丢失的数据信息。具体技术方案如下:第一方面,本公开实施例提供了一种攻击防御方法,应用于服务器的bmc,所述方法包括:若是所述bmc受到攻击,则分别统计第一预设时长内接收的每种特征信息的报文的数量;获取所统计的数量大于第一预设数量的至少一种报文的特征信息;从获取的至少一种特征信息中选择目标特征信息;将所选择的目标特征信息下发给所述服务器的网卡,以使所述网卡丢弃与所选择的目标特征信息匹配的报文。第二方面,本公开实施例提供了一种攻击防御装置,应用于服务器的bmc,所述装置包括:统计单元,用于若所述bmc受到攻击,则分别统计第一预设时长内接收的每种特征信息的报文的数量;获取单元,用于获取所统计的数量大于第一预设数量的至少一种报文的特征信息;选择单元,用于从获取的至少一种特征信息中选择目标特征信息;下发单元,用于将所选择的目标特征信息下发给所述服务器的网卡,以使所述网卡丢弃与所选择的目标特征信息匹配的报文。第三方面,本公开实施例提供了一种bmc,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现上述任一攻击防御方法步骤。第四方面,本公开实施例提供了一种机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现上述任一攻击防御方法步骤。本公开实施例提供的一种攻击防御方法及装置,服务器包括网卡和bmc。在检测到受到攻击后,bmc获取目标特征信息,并将目标特征信息下发给服务器的网卡。网卡丢弃与目标特征信息匹配的报文,实现攻击防御。本公开实施例中,由网卡负责报文的丢弃,而不将报文上送至bmc,降低了对bmc的冲击。另外,目标特征信息为大于第一预设数量的报文的特征信息,也就是目标特征信息最可能是攻击报文的特征信息,网卡丢弃与目标特征信息匹配的报文,转发与目标特征信息不匹配的报文,减少了丢失的数据信息。当然,实施本公开的任一产品或方法必不一定需要同时达到以上所述的所有优点。附图说明为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本公开实施例提供的攻击防御方法的一种流程示意图;图2为本公开实施例提供的攻击防御方法的一种信令示意图;图3为本公开实施例提供的攻击防御装置的一种结构示意图;图4为本公开实施例提供的bmc的一种结构示意图。具体实施方式下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。为保证对服务器健康状态的监控,bmc上开启攻击防御。目前,bmc的攻击防御方式为:在检测到受到攻击时,丢弃后续接收的报文,不再处理后续的报文。这种攻击防御方式,能够避免bmc因受到攻击而挂死。但,在检测到受到攻击时,bmc仍然会处理后续接收的报文,即丢弃后续接收的所有报文,这仍然会对bmc产生一定的冲击。另外,后续接收的报文中可能存在重要报文,这将导致重要报文被丢弃,进而导致数据信息的丢失。为解决上述问题,本公开实施例提供了一种攻击防御方法。该攻击防御方法可以是针对广播报文的攻击防御方法,也可以是针对组播报文的攻击防御方法,还可以是针对广播报文和组播报文的攻击防御方法。该攻击防御方法中,服务器包括网卡和bmc。在检测到受到攻击后,bmc获取目标特征信息,并将目标特征信息下发给服务器的网卡。网卡丢弃与目标特征信息匹配的报文,实现攻击防御。本公开实施例中,由网卡负责报文的丢弃,而不将报文上送至bmc,降低了对bmc的冲击。另外,目标特征信息为大于第一预设数量的报文的特征信息,也就是目标特征信息最可能是攻击报文的特征信息,网卡丢弃与目标特征信息匹配的报文,转发与目标特征信息不匹配的报文,减少了丢失的数据信息。下面通过具体实施例,对本公开实施例提供的攻击防御方法进行详细说明。参考图1,图1为本公开实施例提供的攻击防御方法的一种流程示意图,该方法应用于服务器的bmc。服务器可以包括bmc和网卡。该方法包括如下步骤。步骤101,检测bmc是否受到攻击。若是,则执行步骤102。若否,则重新执行步骤101。一个实施例中,bmc统计第一预设时长内接收的报文的总数量,检测统计的总数量是否大于预设数量阈值。若是,则确定bmc受到攻击,执行步骤102。若否,则确定bmc未受到攻击,重新执行步骤101。其中,第一预设时长和预设数量阈值可以根据实际需求进行设定。例如,第一预设时长为2秒。预设数量阈值为2000。若bmc检测到2秒收的报文的总数量大于2000,则确定bmc受到攻击,执行步骤102。若bmc检测到2秒收的报文的总数量小于等于2000,则确定bmc未受到攻击,执行步骤101。本公开实施例提供的攻击防御方法可以是针对广播报文的攻击防御方法,也可以是针对组播报文的攻击防御方法,还可以是针对广播报文和组播报文的攻击防御方法。若本公开实施例提供的攻击防御方法可以是针对广播报文的攻击防御方法,则在检测bmc是否受到攻击时,bmc统计第一预设时长内接收的广播报文的总数量。若本公开实施例提供的攻击防御方法可以是针对组播报文的攻击防御方法,则在检测bmc是否受到攻击时,bmc统计第一预设时长内接收的组播报文的总数量。若本公开实施例提供的攻击防御方法可以是针对广播报文和组播报文的攻击防御方法,则在检测bmc是否受到攻击时,bmc统计第一预设时长内接收的广播报文和组播报文的总数量。步骤102,分别统计第一预设时长内接收的每种特征信息的报文的数量。例如,bmc在第一预设时长内接收到2500个报文。bmc统计这2500个报文中,具有特征信息1的报文1000个,具有特征信息2的报文800个,具有特征信息3的报文200个,具有特征信息4的报文500个。本公开实施例中,特征信息可以包括源ip(internetprotocol,网络协议)地址和目的ip地址。特征信息也可以包括源ip地址、目的ip地址、源mac(mediaaccesscontrol,媒体访问控制)地址和目的mac地址。特征信息还可以包括源ip地址、目的ip地址、源mac地址、目的mac地址和目的端口号。具体的特征信息包括的内容可以根据实际需求进行设定。以特征信息包括源ip地址、目的ip地址、源mac地址、目的mac地址和目的端口号为例。特征信息1为源ip地址为1.1.1.1、目的ip地址为255.255.255.255、源mac地址为1-1-1、目的mac地址ffff-ffff-ffff-ffff、目的端口号为8080;特征信息2为源ip地址为1.1.1.2、目的ip地址为224.0.0.1、源mac地址为1-1-2、目的mac地址0100-005e-0001、目的端口号为8080;特征信息3为源ip地址为1.1.1.3、目的ip地址为255.255.255.255、源mac地址为1-1-3、目的mac地址ffff-ffff-ffff-ffff、目的端口号为8080;特征信息4为源ip地址为1.1.1.4、目的ip地址为224.0.0.1、源mac地址为1-1-4、目的mac地址0100-005e-0001、目的端口号为8080。此时,统计的预设时长内接收的每种特征信息的报文的数量如表1所示。表1源ip目的ip端口号源mac目的mac报文个数特征信息11.1.1.1.255.255.255.25580801-1-1ffff-ffff-ffff1000特征信息21.1.1.2224.0.0.180801-1-20100-005e-0001800特征信息31.1.1.3255.255.255.25580801-1-3ffff-ffff-ffff200特征信息41.1.1.4224.0.0.180801-1-40100-005e-0001500步骤103,获取所统计的数量大于第一预设数量的至少一种报文的特征信息。对于每种特征信息的报文,bmc均统计得到了该种特征信息的报文在第一预设时长内所接收到的数量。bmc从多种特征信息的报文中获取所统计的数量大于第一预设数量的至少一种报文,进而从获取的报文中获取到至少一种特征信息。本公开实施例中,第一预设数量可以根据实际需求进行设定。一个示例中,第一预设数量可以为固定数值,如500、600等。另一个示例中,第一预设数量可以基于预设比值和第一预设时长内接收的报文的总数量确定。例如预设比值为10%,若第一预设时长内接收的报文的总数量为2000,则第一预设数量为2000*10%=200。预设比值还可以为其他值,如20%、40%等,本公开实施例对此不进行设定。仍以表1为例进行说明。若第一预设数量为400。基于表1可确定:特征信息1的报文的数量1000>400,特征信息2的报文的数量800>400,基于特征信息4的报文的数量500>400。因此,bmc获取特征信息1、特征信息2和特征信息4。步骤104,从获取的至少一种特征信息中选择目标特征信息。其中,目标特征信息可以为一个或多个。bmc可将获取的至少一种特征信息均作为目标特征信息,也可以将从获取的至少一种特征信息中选择部分特征信息作为目标特征信息。步骤105,将所选择的目标特征信息下发给服务器的网卡。网卡丢弃与所选择的目标特征信息匹配的报文。bmc在确定目标特征信息后,可通过ncsi(networkcontrollersidebandinterface,网卡芯片边带接口)通道,将目标特征信息下发给服务器的网卡。网卡将目标特征信息记录在网卡mac层。之后,当接收到报文后,若报文与网卡mac层记录的目标特征信息匹配,即报文与目标特征信息相同,则网卡丢弃该报文。例如,bmc确定的目标特征信息有特征信息1、特征信息2。bmc特征信息1、特征信息2下发给服务器的网卡。网卡接收到报文的特征信息为特征信息1的报文,或接收到报文的特征信息为特征信息2的报文,则丢弃该报文。本公开实施例中,在bmc受到攻击时,由网卡负责报文的丢弃,这在硬件层面丢弃报文,实现了软件主动防御。另外,在实现攻击防御时报文并未上送至bmc,降低了对bmc的冲击。另外,目标特征信息为大于第一预设数量的报文的特征信息,也就是目标特征信息最可能是攻击报文的特征信息,网卡丢弃与目标特征信息匹配的报文,转发与目标特征信息不匹配的报文,减少了丢失的数据信息。在本公开的一个实施例中,上述步骤104可以为:bmc将所获取的至少一个特征信息均确定为目标特征信息。仍以步骤103中的例子为例进行说明。bmc获取到特征信息1、特征信息2和特征信息4,则将特征信息1、特征信息2和特征信息4均确定为目标特征信息。在本公开的另一个实施例中,上述步骤104可以为:bmc从所获取的至少一种特征信息中,选择所统计的数量最大的第二预设数量的报文的特征信息,作为目标特征信息。其中,第二预设数量可以根据实际需求进行设定,如第二预设数量为1、2等。仍以步骤103中的例子为例进行说明。假设第二预设数量为2。bmc获取到特征信息1、特征信息2和特征信息4。其中,特征信息1的报文的数量1000,特征信息2的报文的数量800,基于特征信息4的报文的数量500,1000>800>500,即特征信息1、特征信息2和特征信息4中,数量最大的2种特征信息为特征信息1和特征信息2。bmc选择特征信息1和特征信息2作为目标特征信息。本公开实施例中,若所获取的至少一种特征信息的数量大于第二预设数量,则bmc可从大于第一预设数量的报文的特征信息中,选择最大的第二预设数量的报文的特征信息,作为目标特征信息。若所获取的至少一种特征信息的数量小于等于第二预设数量,则bmc将大于第一预设数量的报文的特征信息均作为目标特征信息。本公开实施例中,大于第一预设数量的报文的特征信息为最可能是攻击报文的特征信息,bmc从大于第一预设数量的报文的特征信息中,选择最大的第二预设数量的报文的特征信息,作为目标特征信息。进而网卡丢弃与目标特征信息匹配的报文。这在实现攻击防御的情况下,进一步减少了丢失的数据信息。在本公开的一个实施例中,bmc在所选择的目标特征信息后,对于所选择的每种目标特征信息,生成包括该目标特征信息的拒绝规则。该拒绝规则的匹配项为该目标特征信息,该拒绝规则的动作项为报文丢弃。bmc将生成的拒绝规则下发给服务器的网卡。网卡将生成的拒绝规则分别记录在网卡mac层。之后,当接收到报文后,若该报文与网卡mac层记录的一拒绝规则包括的目标特征信息匹配,网卡基于该拒绝规则包括的动作项丢弃该报文。本公开实施例中,为便于拒绝规则的生成和下发,bmc上可设置安全模块,bmc将目标特征信息下发给安全模块。安全模块通过高级acl(accesscontrollist,访问控制列表)方式,生成包括目标特征信息的拒绝规则,并通过ncsi通道,将拒绝规则下发给网卡。在本公开的一个实施例中,为拒绝规则配置老化时长为第二预设时长。网卡在获取到一拒绝规则的第二预设时长后,删除该拒绝规则。这样,网卡又可以正常的将报文上送至bmc,保证报文的正常处理。其中,第二预设时长可以根据实际需求进行设定。例如,第二预设时长为30分钟、40分钟等。在本公开的一个实施例中,hdm(hardwaredevicemanagement,硬件设备管理)系统页面可以增加防御使能页签。当使能该防御使能页签时,服务器执行步骤101-105,进行攻击防御。若未使能该防御使能页签,则不执行步骤101-105,可以按照现有攻击防御方法进行攻击防御,如在检测到受到攻击时,丢弃后续接收的报文。通过这种方式,提高了攻击防御执行的灵活性。另外,通过hdm系统页面还可以设置第一预设时长、第二预设时长、第一预设数量、第二预设数量和预设比值等。本公开实施例对此不进行设定。本公开实施例中,通过hdm系统页面还可以设置一个或多个口生效。例如,通过hdm系统页面设置网卡向bmc发送报文的接口生效,这样,当网卡接收到向bmc发送的报文时,依据步骤101-105进行攻击防御。再例如,通过hdm系统页面设置网卡向bmc和os(operatingsystems,操作系统)发送报文的接口生效,这样,当网卡接收到向bmc和os发送的报文时,依据步骤101-105进行攻击防御。此时,可以协助bmc和os进行攻击防御,提高了服务器的安全性。下面结合图2所示的攻击防御的信令图,对本公开实施例提供的攻击防御方法进行说明。步骤201,bmc检测bmc是否受到攻击。若是,则执行步骤202。若否,则重新执行步骤201。步骤202,bmc分别统计第一预设时长内接收的每种特征信息的报文的数量。步骤203,bmc获取所统计的数量大于第一预设数量的至少一种报文的特征信息。步骤204,bmc检测所获取的至少一种特征信息的数量是否大于第二预设数量。若是,则执行步骤205。若否,则执行步骤206。步骤205,bmc从获取的至少一种特征信息中选择目标特征信息,执行步骤207。步骤206,bmc将所获取的至少一种特征信息均作为目标特征信息,执行步骤207。步骤207,bmc将所选择的目标特征信息下发给安全模块。步骤208,安全模块通过高级acl方式,分别生成包括所选择的每种目标特征信息的拒绝规则。步骤209,安全模块通过ncsi通道,将生成的拒绝规则分别下发给网卡。步骤210,网卡丢弃与拒绝规则包括的目标特征信息匹配的报文。步骤211,网卡在获取到拒绝规则的第二预设时长后,删除拒绝规则。上述步骤201-211部分描述相对简单,具体可参考图1实施例部分的相关描述。与上述攻击防御方法实施例对应,本公开实施例还提供了一种攻击防御装置。参考图3,图3为本公开实施例提供的攻击防御装置的一种结构示意图。该装置应用于服务器的bmc,包括:统计单元301、获取单元302、选择单元303和下发单元304。其中,统计单元301,用于若bmc受到攻击,则分别统计第一预设时长内接收的每种特征信息的报文的数量。获取单元302,用于获取所统计的数量大于第一预设数量的至少一种报文的特征信息。选择单元303,用于从获取的至少一种特征信息中选择目标特征信息下发单元304,用于将所选择的目标特征信息下发给服务器的网卡,以使网卡丢弃与所选择的目标特征信息匹配的报文。在本公开的一个实施例中,选择单元303,具体可以用于:从所获取的至少一种特征信息中,选择所统计的数量最大的第二预设数量的报文的特征信息,作为目标特征信息。在本公开的一个实施例中,下发单元304,具体可以用于:分别生成包括所选择的每种目标特征信息的拒绝规则;将生成的拒绝规则分别下发给服务器的网卡,以使网卡丢弃与拒绝规则包括的目标特征信息匹配的报文。在本公开的一个实施例中,拒绝规则的老化时长为第二预设时长,以使网卡在获取到拒绝规则的第二预设时长后,删除拒绝规则。在本公开的一个实施例中,特征信息可以包括源ip地址和目的ip地址;或特征信息可以包括源ip地址、目的ip地址、源mac地址和目的mac地址;或特征信息可以包括源ip地址、目的ip地址、源mac地址、目的mac地址和目的端口号。本公开实施例提供的攻击防御装置中,由网卡负责报文的丢弃,而不将报文上送至bmc,降低了对bmc的冲击。另外,目标特征信息为大于第一预设数量的报文的特征信息,也就是目标特征信息最可能是攻击报文的特征信息,网卡丢弃与目标特征信息匹配的报文,转发与目标特征信息不匹配的报文,减少了丢失的数据信息。基于相同的发明构思,根据上述攻击防御方法,本公开实施例还提供了一种bmc,如图4所示,包括处理器401和机器可读存储介质402,机器可读存储介质402存储有能够被处理器401执行的机器可执行指令。处理器701被机器可执行指令促使实现上述攻击防御方法的任一步骤。一个可选的实施例中,如图4所示,bmc还可以包括:通信接口403和通信总线404;其中,处理器401、机器可读存储介质402、通信接口403通过通信总线404完成相互间的通信,通信接口403用于上述bmc与其他设备或模块之间的通信。基于相同的发明构思,根据上述攻击防御方法,本公开实施例还提供了一种机器可读存储介质,机器可读存储介质存储有能够被处理器执行的机器可执行指令。处理器被机器可执行指令促使实现上述攻击防御方法的任一步骤。上述通信总线可以是pci(peripheralcomponentinterconnect,外设部件互连标准)总线或eisa(extendedindustrystandardarchitecture,扩展工业标准结构)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。上述机器可读存储介质可以包括ram(randomaccessmemory,随机存取存储器),也可以包括nvm(non-volatilememory,非易失性存储器),例如至少一个磁盘存储器。另外,机器可读存储介质还可以是至少一个位于远离前述处理器的存储装置。上述处理器可以是通用处理器,包括cpu(centralprocessingunit,中央处理器)、np(networkprocessor,网络处理器)等;还可以是dsp(digitalsignalprocessing,数字信号处理器)、asic(applicationspecificintegratedcircuit,专用集成电路)、fpga(field-programmablegatearray,现场可编程门阵列)或其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于攻击防御装置、bmc、机器可读存储介质实施例而言,由于其基本相似于攻击防御方法实施例,所以描述的比较简单,相关之处参见攻击防御方法实施例的部分说明即可。以上所述仅为本公开的较佳实施例而已,并非用于限定本公开的保护范围。凡在本公开的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本公开的保护范围内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1