一种抵御mac地址欺骗攻击的方法及设备的制作方法

文档序号:7713044阅读:179来源:国知局

专利名称::一种抵御mac地址欺骗攻击的方法及设备的制作方法
技术领域
:本发明涉及通信领域,尤其涉及一种抵推卩MAC地址#夂骗攻击的方法及设备。
背景技术
:目前,二层交换过程中,交换机对接收的报文的转发过程如图1所示,包括获取报文中以太网帧的二层信息,即以太网帧的目的MAC地址,并根据获取到的目的MAC地址查找交换机中存储的MAC转发表,即L2FDB,根据该MAC转发表中存储的与MAC地址相应的端口转发接收的报文;如果交换机在MAC转发表中查找不到目的MAC地址以及与目的MAC地址相应的端口,则将该报文通过广播的方式向所有端口转发;同时,该报文的源MAC地址将被学习到接收该报文的端口上,即建立该报文的源MAC地址与接收该报文的端口之间的对应关系。当后续交换机接收到目的地址为上述源MAC地址的报文时,根据建立的对应关系,通过与源MAC地址相应的端口转发该报文。现有技术中,交换机对报文的转发过程中,对"^艮文的合法性有一个初步的检查,例如报文的源MAC地址为非法MAC地址的4企查,包括源MAC地址为全0地址、组播MAC地址或者广播MAC地址的情况;报文的目的MAC地址为非法MAC地址的检查。交换机通过检查发现报文的源MAC地址或者目的MAC地址非法时,丢弃该报文。如果检查结果为MAC地址合法,则交换机对该报文进行正常转发,不再进行进一步的^f企查。由于交换机对MAC地址合法的报文没有进行进一步的检查,例如该报文络用户进行攻击。下面以图2所示对非法用户的攻击方式进行介绍,其中B设备为服务器,MAC地址为0-0-1,通过交换机的端口B与交换机连接,为5交换机下挂的用户提供服务;交换机中的MAC地址表中存储的MAC地址与端口的对应关系为MAC0-0-l——端口B;Ai殳备为一个非法用户,发送的报文源MAC地址也是0-0-1,交换机通过端口A接收该报文。此时,如果交换机根据A设备发送的报文重新学习MAC地址,将会在MAC转发表中更新MAC地址与端口的对应关系,更新结果为MAC0-0-1——端口A。这样将会导致所有去往B设备的报文都被交换机向A设备转发,导致转发出现异常;通常,碰到这种情况都会配置静态MAC地址,解决MAC地址迁移的问题。但是,这样存在两个问题一是交换机依然接收非法用户A发送的攻击l艮文并转发该报文,导致网络内的其他用户遭受攻击;二是当服务器通过多个端口接入此交换机时,配置静态MAC地址无法实现,如图3所示,由于交换机中的MAC转发表中存储的B设备的MAC地址对应关系为MAC0-0-1——PORT(端口)1,或者MACO-0-1——PORT(端口)2,以第一种情况为例,当交换机与B设备之间的连接由PORT1切换到PORT2时,所有正常报文都无法通过PORT2发送而被丟弃。所以,现有技术中没有提供一种有效解决非法用户利用MAC地址进行报文攻击的方法。
发明内容本发明提供了一种抵御MAC地址欺骗攻击的方法及设备,以使网络中的重要设备避免遭受源MAC地址欺骗攻击。本发明提供一种抵御MAC地址欺骗攻击的方法,应用于根据MAC地址进行报文转发的交换系统中,交换设备中配置MAC地址与端口组的绑定关系,所述端口组中包括与MAC地址相应的信任端口和非信任端口,包括所述交换设备获取接收到的报文的源MAC地址,并判断所述源MAC地址是否配置绑定关系;如果所述判断结果为是,所述交换设备进一步判断所述报文的入端口属于与所述源MAC地址相应的信任端口或者非信任端口;当所述判断结果为信任端口时,所述交换设备转发所述报文,并根据所述报文学习所述源MAC地址;当所述判断结果为非信任端口时,所述交换i殳备丟弃所述:R文。所述判断所述源MAC地址是否配置绑定关系具体为所述交换设备在预先配置的MAC地址绑定列表中查找所述源MAC地址;如果没有找到所述源MAC地址,则判断所述源MAC地址没有配置绑定关系;否则,判断所述源MAC地址配置有绑定关系。所述判断所述源MAC地址是否配置绑定关系具体为所述交换设备查找是否存在与所述源MAC地址相应的端口,如果存在,则判断所述源MAC地址配置有绑定关系,否则,判断所述源MAC地址没有配置绑定关系。所述判断所述源MAC地址是否配置绑定关系之后,还包括如果所述判断结果为否,所述交换设备转发所述4艮文。所述交换设备进一步判断所述报文的入端口属于与所述源MAC地址相应的信任端口或者非信任端口之后,还包括当所述判断结果为信任端口,且所述源MAC地址具有静态标志位时,所述交换设备转发所述报文。所述判断所述源MAC地址是否配置绑定关系之前,还包括当所述获取的源MAC地址具有静态标志位时,所述交换设备直接转发所述报文;当所述获取的源MAC地址不具有静态标志位时,继续下一步操作。本发明提供一种抵御MAC地址欺骗攻击的装置,作为交换设备的一部分或者交换设备应用于根据MAC地址进行报文转发的交换系统中,所述装置中配置MAC地址与端口组的绑定关系,所述端口组中包括与MAC地址相应的信任端口和非信任端口,包括地址获取单元,用于获取接收到的报文的源MAC地址,并判断所述源MAC地址是否配置绑定关系;信任判断单元,与所述地址获取单元连接,用于当所述地址获取单元的7判断结果为是时,判断所述报文的入端口属于与所述源MAC地址相应的信任端口或者非信任端口;报文转发单元,与所述信任判断单元连接,用于当所述信任判断单元的判断结杲为信任端口时,转发所述报文,并根据所述报文学习所述源MAC地址;报文丢弃单元,与所述信任判断单元连接,用于当所述信任判断单元的判断结果为非信任端口时,丢弃所述"^艮文。所述地址获取单元具体用于在预先配置的MAC地址绑定列表中查找所述源MAC地址;如果没有找到所述源MAC地址,则判断所述源MAC地址没有配置绑定关系;否则,判断所述源MAC地址配置有绑定关系。所述地址获取单元具体用于查找是否存在与所述源MAC地址相应的端口;如杲存在,则判断所述源MAC地址配置有绑定关系;否则,判断所述源MAC地址没有配置绑定关系。所述报文转发单元还用于当所述地址获取单元的判断结果为否时,转发所述报文。所述报文转发单元还用于当所述判断结果为信任端口,且所述源MAC地址具有静态标志位时,转发所述报文。所述报文转发单元还用于当所述地址获取单元获取的源MAC地址具有静态标志位时,直接转发所述报文。与现有技术相比,本发明至少具有以下优点交换"i殳备中配置MAC地址与端口组的绑定关系,该端口组中包括与MAC地址相应的信任端口和非信任端口;交换设备4艮据通过信任端口接收的报文进行MAC地址学习,丢弃通过非信任端口接收的报文;在接收到非法用户发送的报文时,交换设备判断该报文的入端口为非信任端口,丟弃非法用户发送的报文,从而起到防止非法用户报文攻击的效果。图1是现有技术中交换机对接收的报文的转发过程示意图;图2是现有技术中非法用户的攻击方式示意图;图3是现有技术中多端口接入示意图;图4是本发明提供的抵御MAC地址欺骗攻击的方法的流程示意图;图5是本应用场景提供的抵御MAC地址欺骗攻击的方法的流程示意图;图6是本发明提供的抵御MAC地址欺骗攻击的装置的结构示意图。具体实施方式现有技术中非法用户利用与重要设备源MAC地址相同的报文进行网络攻击,该种攻击方式基于交换设备对非法报文携带的MAC地址的学习,本发明提供的方法解决了交换设备对非法用户发送的报文的MAC地址的学习问题,其核心思想为对于重要设备的MAC地址,在交换设备上配置该MAC地址与端口组的绑定关系,该端口组中包括与MAC地址相应的信任端口和非信任端口;当交换设备接收到报文后,首先查找该I艮文的源MAC地址是否建立了与端口组的绑定关系;如果查找结果为否,则按照正常流程转发该报文;如果查找结果为是,则交换设备进一步判断该报文的入端口为具有绑定关系的端口组中的信任端口或者非信任端口,当判断结果为信任端口时,交换设备根据该MAC地址更新消息更新存储的MAC转发表,并转发该报文;当判断结果为非信任端口时,交换设备丢弃该报文。具体的,本发明提供一种抵御MAC地址欺骗攻击的方法,应用于根据MAC地址进行报文转发的交换系统中,交换设备中配置MAC地址与端口组的绑定关系,所述端口组中包括与MAC地址相应的'信任端口和非信任端口,如图4所示,包括以下步骤步骤40L所述交换设备获取接收到的报文的源MAC地址,并判断所述源MAC地址是否配置绑定关系;判断结果为是时执行步骤402;否则正常转发该4艮文。9步骤402,所述交换设备进一步判断所述才艮文的入端口属于与所述源MAC地址相应的信任端口或者非信任端口;判断结果为信任端口时,执行步骤403;否则,执行步骤404。步骤403,所述交换设备转发所述报文,并根据所述报文学习所述源MAC地址。步骤404,所述交换设备丟弃所述报文。下面结合具体应用场景详细介绍本发明提供的抵御MAC地址欺骗攻击的方法,如图5所示,包括以下步骤步骤501,交换设备接收MAC地址的绑定关系配置。具体的,首先介绍两个概念MAC地址的信任端口和非信任端口;其中,信任端口指的是能够进行源MAC地址学习的端口,指定MAC地址可以在信任端口之间进行切换;非信任端口指的是不能够进行源MAC地址学习的端口,交换设备通过这些端口收到源MAC地址为指定MAC地址的报文时,默认该报文为非法用户发送的攻击报文,对该报文不进行源MAC地址的学习,也不进行正常转发,而是丢弃该报文。其中,对应不同的MAC地址,分别配置相应的信任端口和非信任端口。本应用场景中,交换设备配置部分重要MAC地址的绑定关系,对于没有配置绑定关系的MAC地址,交换i殳备对以这些MAC地址为源MAC地址的报文进行正常转发。所谓重要MAC地址可以为一些重要设备的MAC地址,例如服务器的MAC地址。该MAC地址的绑定关系可以由用户直接在交换设备上配置,或者由用户在其他设备上配置好该绑定关系后下发到交换设备,交换设备接收并存储该绑定关系。交换设备中对绑定关系的存储可以为交换i殳备中专门建立MAC地址绑定列表,如表1所示,用于存储MAC地址与信任端口的对应关系,该MAC地址绑定列表中没有存储的端口即为MAC地址的非信任端口;当然交换设备也可以在MAC地址绑定列表中将MAC地址相应的4言任端口与非信任端口共同列出,如表2a或者表2b所示,两者为本应用场景提供的可选的两种表格方式。可选的,交换设备中对于绑定关系的存储也可以如表3所示在交换设备的MAC转发表中增加字段,用于存储与MACi也址相应的信任端口或者非信任端口。其中,表1、表2a、表2b以及表3均是结合图3进行的举例说明。表1<table>tableseeoriginaldocumentpage11</column></row><table>表2a<table>tableseeoriginaldocumentpage11</column></row><table>表2b<table>tableseeoriginaldocumentpage11</column></row><table>表3<table>tableseeoriginaldocumentpage11</column></row><table>步骤502,交换设备接收报文,根据该报文的源MAC地址判断该MAC地址是否配置绑定关系;如果存在,执行步骤503;否则,执行步骤504。具体的,交换设备接收的报文中携带该报文的目的MAC地址和源MAC地址,交换设备根据报文的源MAC地址在预先配置的MAC地址绑定列表中查找是否存在该MAC地址,如果存在,则交换i更备判断该MAC地址配置有绑定关系,如果不存在,则交换设备判断该MAC地址没有配置绑定关系。与步骤501中相应,交换设备也可以通过查找是否存在与源MAC地址相应的端口判断源MAC地址是否配置了绑定关系,如果查找结果为存在,则交换设备判断源MAC地址配置有绑定关系,否则,交换i殳备判断源MAC地址没有配置绑定关系。步骤503,交换设备判断报文的入端口是否为信任端口,如果是,执行步骤504;如果不是,执行步骤505。具体的,交换设备接收报文后,记录该报文的入端口。当判断该报文的源MAC地址配置绑定关系后,交换设备进一步查询该入端口为信任端口或者非信任端口。步骤504,交换设备转发该报文,并根据该报文进行源MAC地址的学习。步骤505,交换设备丢弃该报文。文进行丢弃处理。本应用场景中,交换设备对报文的转发通常通过转发芯片实现,上述对报文的处理过程由转发芯片实现,如果交换设备中的转发芯片无法支持信任端口与非信任端口的划分,则交换设备可以通过CPU判断MAC地址的信任端口与非信任端口。具体的,交换设备在内存中存储MAC地址与信任端口或者非信任端口的对应关系,交换设备通过转发芯片接收到报文后,通过CPU查找内存中存储的对应关系,判断该报文的入端口为信任端口或者非信任端口,如果是信任端口,则通过转发芯片转发该报文,并更新内存中存储的该MAC地址的对应关系;如果判断结果为非信任端口,则直接丟弃该报文。本应用场景中,可选的,交换设备还可以为MAC地址配置静态标志位,标识该MAC地址不需要进行源MAC地址学习。具体的,该静态标志位可以配置在MAC地址的绑定关系中,或者配置在MAC转发表中。交换设备接收12MAC地址是否配置了绑定关系时,如果获取到该MAC地址的静态标识位,则可以直"l妄拒绝根据该报文的源MAC地址进行地址学习;并且,可选的,交换设备直接转发该报文,或者交换设备根据该源MAC为信任端口或者非信任端口,转发或者丢弃该报文。通过采用本发明提供的方法,交换设备中配置MAC地址与端口组的绑定关系,该端口组中包括与MAC地址相应的信任端口和非信任端口;交换设备根据通过信任端口接收的报文进行MAC地址学习,丟弃通过非信任端口接收的报文;在接收到非法用户发送的报文时,交换设备判断该报文的入端口为非信任端口,丢弃非法用户发送的报文,从而起到防止非法用户报文攻击的效果。本发明提供一种抵御MAC地址欺骗攻击的装置,作为交换设备的一部分配置MAC地址与端口组的绑定关系,所述端口组中包括与MAC地址相应的信任端口和非信任端口,如图6所示,包括地址获取单元11,用于获取接收到的报文的源MAC地址,并判断所述源MAC地址是否配置绑定关系。具体的,所述地址获取单元11在预先配置的MAC地址绑定列表中查找所述源MAC地址;如果没有找到所述源MAC地址,则判断所述源MAC地址没有配置绑定关系;否则,判断所述源MAC地址配置有绑定关系;或者,地址获取单元11在预先配置的MAC地址绑定列表中查找是否存在与所述源MAC地址相应的端口;如果存在,则判断所述源MAC地址配置有绑定关系;否则,判断所述源MAC地址没有配置绑定关系。信任判断单元12,与所述地址获取单元11连接,用于当所述地址获取单元11的判断结果为是时,判断所述报文的入端口属于与所述源MAC地址相应的信任端口或者非信任端口。信任端口指的是能够进行源MAC地址学习的端口,指定MAC地址可以在信任端口之间进行切换;非信任端口指的是不能够进行源MAC地址学习的端口13默认该报文为非法用户发送的攻击报文,对该报文不进行源MAC地址的学习,也不进行正常转发,而是丢弃该报文。其中,对应不同的MAC地址,分别配置相应的信任端口和非信任端口。交换设备中专门建立MAC地址绑定列表,存储MAC地址与信任端口的对应关系,信任判断单元12通过查表可以判断报文的入端口为与源MAC地址相应的信任端口或者非信任端口。报文转发单元13,与所述信任判断单元12连接,用于当所述信任判断单元U的判断结果为信任端口时,转发所述报文,并根据所述报文学习所述源MAC地址;当所述地址获取单元的判断结果为否时,转发所述报文。报文丢弃单元14,与所述信任判断单元12连接,用于当所述信任判断单元12的判断结果为非信任端口时,丟弃所述报文。本应用场景中,交换设备还可以为MAC地址配置静态标志位,标识该MAC地址不需要进行源MAC地址学习。相应的,所述报文转发单元13还可以用于当所述信任判断单元12的判断结果为信任端口,且所述源MAC地址具有静态标志位时,转发所述报文;或者当所述地址获取单元11获取的源MAC地址具有静态标志位时,直接转发所述报文。通过采用本发明提供的设备,交换设备中配置MAC地址与端口组的绑定关系,该端口组中包括与MAC地址相应的信任端口和非信任端口;交换设备根据通过信任端口接收的报文进行MAC地址学习,丟弃通过非信任端口接收的报文;在接收到非法用户发送的报文时,交换设备判断该报文的入端口为非信任端口,丢弃非法用户发送的报文,从而起到防止非法用户报文攻击的效果。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行14本发明各个实施例所述的方法。本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。本领域技术人员可以理解实施例中的装置中的;f莫块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。权利要求1、一种抵御MAC地址欺骗攻击的方法,应用于根据MAC地址进行报文转发的交换系统中,其特征在于,交换设备中配置MAC地址与端口组的绑定关系,所述端口组中包括与MAC地址相应的信任端口和非信任端口,包括所述交换设备获取接收到的报文的源MAC地址,并判断所述源MAC地址是否配置绑定关系;如果所述判断结果为是,所述交换设备进一步判断所述报文的入端口属于与所述源MAC地址相应的信任端口或者非信任端口;当所述判断结果为信任端口时,所述交换设备转发所述报文,并根据所述报文学习所述源MAC地址;当所述判断结果为非信任端口时,所述交换设备丢弃所述报文。2、如权利要求1所述的方法,其特征在于,所述判断所述源MAC地址是否配置绑定关系具体为所述交换设备在预先配置的MAC地址绑定列表中查找所述源MAC地址;如果没有找到所述源MAC地址,则判断所述源MAC地址没有配置绑定关系;否则,判断所述源MAC地址配置有绑定关系。3、如权利要求1所述的方法,其特征在于,所述判断所述源MAC地址是否配置绑定关系具体为所述交换设备查找是否存在与所述源MAC地址相应的端口,如果存在,则判断所述源MAC地址配置有绑定关系,否则,判断所述源MAC地址没有配置绑定关系。4、如权利要求1所述的方法,其特征在于,所述判断所述源MAC地址是否配置绑定关系之后,还包括如果所述判断结果为否,所述交换设备转发所述^R文。5、如权利要求1-4中任一项所述的方法,其特征在于,所述交换设备进一步判断所述"t艮文的入端口属于与所述源MAC地址相应的信任端口或者非信任端口之后,还包括当所述判断结果为信任端口,且所述源MAC地址具有静态标志位时,所述交换设备转发所述报文。6、如权利要求1-4中任一项所述的方法,其特征在于,所述判断所述源MAC地址是否配置绑定关系之前,还包括当所述获取的源MAC地址具有静态标志位时,所述交换设备直接转发所述报文;当所述获取的源MAC地址不具有静态标志位时,继续下一步操作。7、一种抵御MAC地址欺骗攻击的装置,作为交换设备的一部分或者交换设备应用于根据MAC地址进行报文转发的交换系统中,其特征在于,所述装置中配置MAC地址与端口组的绑定关系,所述端口组中包括与MAC地址相应的信任端口和非信任端口,包括地址获取单元,用于获取接收到的报文的源MAC地址,并判断所述源MAC地址是否配置绑定关系;信任判断单元,与所述地址获取单元连接,用于当所述地址获取单元的判断结果为是时,判断所述报文的入端口属于与所述源MAC地址相应的信任端口或者非信任端口;报文转发单元,与所述信任判断单元连接,用于当所述信任判断单元的判断结果为信任端口时,转发所述报文,并根据所述报文学习所述源MAC地址;报文丢弃单元,与所述信任判断单元连接,用于当所述信任判断单元的判断结果为非信任端口时,丢弃所述报文。8、如权利要求7所述的装置,其特征在于,所述地址获取单元具体用于在预先配置的MAC地址绑定列表中查找所述源MAC地址;如果没有找到所述源MAC地址,则判断所述源MAC地址没有配置绑定关系;否则,判断所述源MAC地址配置有绑定关系。9、如权利要求7所述的装置,其特征在于,所述地址获取单元具体用于查找是否存在与所述源MAC地址相应的端口;如果存在,则判断所述源MAC地址配置有绑定关系;否则,判断所述源MAC地址没有配置绑定关系。10、如权利要求7所述的装置,其特征在于,所述报文转发单元还用于当所述地址获取单元的判断结果为否时,转发所述报文。11、如权利要求7-10中任一项所述的装置,其特征在于,所述报文转发单元还用于当所述判断结果为信任端口,且所述源MAC地址具有静态标志位时,转发所述报文。12、如权利要求7-10中任一项所述的装置,其特征在于,所述才艮文转发单元还用于当所述地址获取单元获取的源MAC地址具有静态标志位时,直接转发所述报文。全文摘要本发明公开了一种抵御MAC地址欺骗攻击的方法和装置,该方法包括所述交换设备获取接收到的报文的源MAC地址,并判断所述源MAC地址是否配置绑定关系;如果所述判断结果为是,所述交换设备进一步判断所述报文的入端口属于与所述源MAC地址相应的信任端口或者非信任端口;当所述判断结果为信任端口时,所述交换设备转发所述报文,并根据所述报文学习所述源MAC地址;当所述判断结果为非信任端口时,所述交换设备丢弃所述报文。本发明提供的方法使网络中的重要设备避免遭受源MAC地址欺骗攻击。文档编号H04L29/06GK101635731SQ20091017208公开日2010年1月27日申请日期2009年8月31日优先权日2009年8月31日发明者汪洪远申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1