CN107786679A - 保证arp报文安全性的方法及装置 - Google Patents
保证arp报文安全性的方法及装置 Download PDFInfo
- Publication number
- CN107786679A CN107786679A CN201610724623.2A CN201610724623A CN107786679A CN 107786679 A CN107786679 A CN 107786679A CN 201610724623 A CN201610724623 A CN 201610724623A CN 107786679 A CN107786679 A CN 107786679A
- Authority
- CN
- China
- Prior art keywords
- arp
- message
- messages
- address
- mac
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
- H04L61/103—Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
- Small-Scale Networks (AREA)
Abstract
保证ARP报文安全性的方法及装置,属于网络通信技术领域,为了解决ARP报文安全性的技术问题,技术要点是:包括如下步骤:S1.网络层数据侦听,获取ARP报文,和DHCP Ack报文;S2.安全性检验。效果是:提高了ARP报文安全性。
Description
技术领域
本发明属于网络通信技术领域,尤其涉及一种保证ARP报文安全性的方法。
背景技术
地址解析协议(ARP,Address Resolution Protocol),是根据IP地址获取MAC地址的一个TCP/IP子协议。主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。
OSI模型把网络通信定义为七层,IP地址在OSI模型的第三层,MAC地址在第二层。在通过以太网发送IP数据包时,需要先封装第三层(32位IP地址)、第二层(48位MAC地址)的报头,但由于发送时只知道目标IP地址,不知道其MAC地址,又不能跨第二、三层,所以需要使用ARP地址解析协议。使用ARP地址解析协议,可根据网络层IP数据包头部的IP地址信息解析出目标硬件地址(MAC地址)信息,以保证通信的顺利进行。
ARP地址转换表是依赖于计算机中高速缓冲存储器动态更新的,而高速缓冲存储器的更新是受到更新周期的限制的,只保存最近使用的地址的映射关系表项,这使得恶意用户有了可乘之机,可以在高速缓冲存储器更新表项之前修改地址转换表,实现攻击。ARP请求为广播形式发送的,网络上的主机可以自主发送ARP应答消息,并且当其他主机收到应答报文时不会检测该报文的真实性就将其记录在本地的MAC地址转换表,这样攻击者就可以向目标主机发送伪ARP应答报文,从而篡改本地的MAC地址表。ARP欺骗可以导致目标计算机与网关通信失败,更会导致通信重定向,所有的数据都会通过攻击者的机器,因此存在极大的安全隐患。
发明内容
为了解决ARP报文安全性的技术问题,本发明提出如下技术方案:
一种保证ARP报文安全性的方法,其特征在于,包括如下步骤:
S1.网络层数据侦听,获取ARP报文,和DHCP Ack报文;
S2.安全性检验。
进一步的,所述安全性检验,包括:
第一步,DHCP联动ARP学习;
第二步,ARP报文合法性检查;
第三步,ARP报文内MAC地址一致性检查;
第四步,基于网络设备接口的ARP表项限制。
进一步的,所述DHCP联动ARP学习:当DHCP服务器向用户发送一个包含它所提供的IP地址和其他设置的DHCP Ack报文时,通过该报文获取用户的MAC地址,生成该IP地址对应的ARP表项。
进一步的,所述ARP报文合法性检查:提取DHCP Ack报文中出现过的IP地址信息和MAC地址信息,生成ARP信任列表,当设备每次学习和转发ARP报文时,检查其中的IP地址和MAC地址是否存在于ARP信任列表,若不存在于ARP信任列表,则丢弃该报文,若存在于该ARP信任列表中,则执行第三步。
进一步的,所述ARP报文内MAC地址一致性检查,对ARP报文的以太网数据帧首部中的源MAC地址和ARP报文Data部分的源MAC进行检查,如果该以太网数据帧首部中的源MAC地址和ARP报文Data部分的源MAC不一致,则丢弃此ARP报文,如果该以太网数据帧首部中的源MAC地址和ARP报文Data部分的源MAC一致,则对ARP报文的以太网数据帧首部中的目的MAC地址和ARP报文Data部分的目的MAC进行检查,如果该以太网数据帧首部中的源MAC地址和ARP报文Data部分的源MAC不一致,则丢弃此ARP报文,如果该以太网数据帧首部中的源MAC地址和ARP报文Data部分的源MAC一致,则执行第四步。
进一步的,所述基于网络设备接口的ARP表项限制:在指定接口下配置能够学习到的最大动态ARP表项数目,以及ARP表项的最小老化时间,接口达到最大ARP表项数目后,将不允许新增动态ARP表项。
一种保证ARP报文安全性的装置,包括:
侦听模块,用于网络层数据侦听,获取ARP报文,和DHCP Ack报文;
安全性检验模块,用于安全性检验。
进一步的,所述安全性检验模块的检验方法包括:
第一步,DHCP联动ARP学习;
第二步,ARP报文合法性检查;
第三步,ARP报文内MAC地址一致性检查;
第四步,基于网络设备接口的ARP表项限制。
有益效果:
(1)首先,DHCP联动ARP学习,可以减少网络设备学习用户主机ARP的过程,避免恶意用户对ARP表项的攻击。
(2)ARP报文合法性检查和ARP报文内MAC地址一致性检查,可以避免ARP表项被错误修改,提高了ARP报文的有效性。
(3)最后,基于网络设备接口的ARP表项限制,配置接口能够学习到的最大动态ARP表项数目,可以有效控制网络设备根据ARP miss消息生成大量临时的ARP表项。ARP表项最小老化时间,可以控制ARP miss消息的触发报文,避免ARP表项频繁被修改。
(4)综合以上方法,本发明保证了ARP报文的安全性,显著提高了网络通信环境的效率。
附图说明
图1为本发明中保证ARP报文安全性方法的流程图;
图2为本发明中保证ARP报文安全性装置的组成示意图;
图3为ARP报文的组成示意图。
具体实施方式
实施例1:一种保证ARP报文安全性的方法,包括如下步骤:
S1.网络层数据侦听,获取ARP报文,和DHCP Ack报文;
S2.安全性检验。
步骤S2中所述安全性检验,包括:
第一步,DHCP联动ARP学习,当DHCP服务器向用户发送一个包含它所提供的IP地址和其他设置的DHCP Ack报文时,即DHCP服务器确认所提供IP地址的信息,通过该报文获取用户的MAC地址,生成该IP地址对应的ARP表项;这样可以直接完成网络设备学习ARP的过程。避免恶意用户获取原始的ARP表项信息。
第二步,ARP报文合法性检查,提取DHCP Ack报文中出现过的IP地址信息和MAC地址信息,生成ARP信任列表,即将提取信息存放于信任列表,当设备每次学习和转发ARP报文时,检查其中的IP地址和MAC地址是否存在于ARP信任列表,若不存在于ARP信任列表,则认为ARP报文不合法,丢弃该报文,若存在于该ARP信任列表中,则执行下一步,所述设备包括网络设备,以太网交换机,二层交换机,三层交换机等;
第三步,ARP报文内MAC地址一致性检查,对ARP报文进行以太网数据帧首部中的源MAC地址和ARP报文Data部分的源MAC进行检查,如果两者不一致,则认为此ARP报文不安全,直接丢弃此ARP报文,如果两者一致,则对ARP报文进行以太网数据帧首部中的目的MAC地址和ARP报文Data部分的目的MAC进行检查,如果两者不一致,则认为此ARP报文不安全,直接丢弃此ARP报文,如果两者一致,则执行下一步;
第四步,基于网络设备接口的ARP表项限制,为了防止当一个接口所接入的某一用户主机发起ARP攻击时导致整个设备的ARP表项资源被耗尽,在指定接口下配置能够学习到的最大动态ARP表项数目,以及ARP表项的最小老化时间,接口达到最大ARP表项数目后,将不允许新增动态ARP表项。而且限制ARP表项最小老化时间,避免ARP表项被频繁修改。所述接口包括:二层物理接口、Eth-Trunk接口、VLANIF接口、三层物理子接口和端口组。作为一种优选,在指定接口下配置能够学习到的最大动态ARP表项数目100条,以及ARP表项的最小老化时间1秒。
作为上述方法对应的装置,一种保证ARP报文安全性的装置,包括:侦听模块,用于网络层数据侦听,获取ARP报文,和DHCP Ack报文;安全性检验模块,用于安全性检验。所述安全性检验模块的检验方法包括:
第一步,DHCP联动ARP学习;所述DHCP联动ARP学习:当DHCP服务器向用户发送一个包含它所提供的IP地址和其他设置的DHCP Ack报文时,通过该报文获取用户的MAC地址,生成该IP地址对应的ARP表项。
第二步,ARP报文合法性检查;所述ARP报文合法性检查:提取DHCP Ack报文中出现过的IP地址信息和MAC地址信息,生成ARP信任列表,当设备每次学习和转发ARP报文时,检查其中的IP地址和MAC地址是否存在于ARP信任列表,若不存在于ARP信任列表,则丢弃该报文,若存在于该ARP信任列表中,则执行第三步。
第三步,ARP报文内MAC地址一致性检查;所述ARP报文内MAC地址一致性检查,对ARP报文的以太网数据帧首部中的源MAC地址和ARP报文Data部分的源MAC进行检查,如果该以太网数据帧首部中的源MAC地址和ARP报文Data部分的源MAC不一致,则丢弃此ARP报文,如果该以太网数据帧首部中的源MAC地址和ARP报文Data部分的源MAC一致,则对ARP报文的以太网数据帧首部中的目的MAC地址和ARP报文Data部分的目的MAC进行检查,如果该以太网数据帧首部中的源MAC地址和ARP报文Data部分的源MAC不一致,则丢弃此ARP报文,如果该以太网数据帧首部中的源MAC地址和ARP报文Data部分的源MAC一致,则执行第四步。
第四步,基于网络设备接口的ARP表项限制。所述基于网络设备接口的ARP表项限制:在指定接口下配置能够学习到的最大动态ARP表项数目,以及ARP表项的最小老化时间,接口达到最大ARP表项数目后,将不允许新增动态ARP表项。
实施例2:作为实施例1的补充,或者一种单独的技术方案,一种保证ARP报文安全性的方法,包括:
首先,通过网络层数据侦听,获取ARP报文,和DHCP Ack报文。然后依次进行如下安全性检验。
第一步,DHCP联动ARP学习。当DHCP服务器向用户发送一个包含它所提供的IP地址和其他设置的DHCP Ack报文时,即DHCP服务器确认所提供IP地址的信息,通过此报文获取用户的MAC地址,生成该IP地址对应的ARP表项。这样可以直接完成网络设备学习ARP的过程。避免恶意用户获取原始的ARP表项信息。
第二步,ARP报文合法性检查。提取DHCP Ack报文中出现过的IP地址信息和MAC地址信息,生成可信任列表。当设备每次学习和转发ARP报文时,检查其中的IP地址和MAC地址是否存在于ARP可信任列表。若不存在于ARP可信任列表,则认为ARP报文不合法,则丢弃该报文。
第三步,ARP报文内MAC地址一致性检查。对ARP报文进行以太网数据帧首部中的源MAC地址和ARP报文Data部分的源MAC进行检查,如果两者不一致,则认为此ARP报文不安全,直接丢弃此ARP报文。对ARP报文进行以太网数据帧首部中的目的MAC地址和ARP报文Data部分的目的MAC进行检查,如果两者不一致,则认为此ARP报文不安全,直接丢弃此ARP报文。
第四步,基于网络设备接口的ARP表项限制。为了防止当一个接口(包括:二层物理接口、Eth-Trunk接口、VLANIF接口、三层物理子接口和端口组)所接入的某一用户主机发起ARP攻击时导致整个设备的ARP表项资源被耗尽,在指定接口下配置能够学习到的最大动态ARP表项数目,以及ARP表项的最小老化时间。接口达到最大ARP表项数目后,将不允许新增动态ARP表项。而且限制ARP表项最小老化时间,避免ARP表项被频繁修改。
本发明包括5个模块:
模块一,网络层数据侦听,获取ARP报文,和DHCP Ack报文。
模块二,DHCP联动ARP学习,当DHCP服务器向用户发送一个包含它所提供的IP地址和其他设置的DHCP Ack报文时,即DHCP服务器确认所提供IP地址的信息,通过此报文获取用户的MAC地址,生成该IP地址对应的ARP表项。这样可以直接完成网络设备学习ARP的过程。避免恶意用户获取原始的ARP表项信息。
模块三,ARP报文合法性检查。首先,IP地址检查,检查ARP报文中的源IP地址和目的IP地址,全0、全1或者组播IP地址,有任意一项不合法的即丢弃报文。
模块四,ARP报文内MAC地址一致性检查。对ARP报文进行以太网数据帧首部中的源MAC地址和ARP报文Data部分的源MAC进行检查,如果两者不一致,则认为此ARP报文不安全,直接丢弃此ARP报文。对ARP报文进行以太网数据帧首部中的目的MAC地址和ARP报文Data部分的目的MAC进行检查,如果两者不一致,则认为此ARP报文不安全,直接丢弃此ARP报文。
模块五,基于网络设备接口的ARP表项限制,为了防止当一个接口(包括:二层物理接口、Eth-Trunk接口、VLANIF接口、三层物理子接口和端口组)所接入的某一用户主机发起ARP攻击时导致整个设备的ARP表项资源被耗尽,可以在指定接口下配置接口能够学习到的最大动态ARP表项数目,以及ARP表项最小老化时间。接口达到最大ARP表项数目后,将不允许新增动态ARP表项。而且限制ARP表项最小老化时间,避免ARP表项被频繁修改。
以上所述,仅为本发明创造较佳的具体实施方式,但本发明创造的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明创造披露的技术范围内,根据本发明创造的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明创造的保护范围之内。
Claims (8)
1.一种保证ARP报文安全性的方法,其特征在于,包括如下步骤:
S1.网络层数据侦听,获取ARP报文,和DHCP Ack报文;
S2.安全性检验。
2.如权利要求1所述的保证ARP报文安全性的方法,其特征在于,所述安全性检验,包括:
第一步,DHCP联动ARP学习;
第二步,ARP报文合法性检查;
第三步,ARP报文内MAC地址一致性检查;
第四步,基于网络设备接口的ARP表项限制。
3.如权利要求2所述的保证ARP报文安全性的方法,其特征在于,所述DHCP联动ARP学习:当DHCP服务器向用户发送一个包含它所提供的IP地址和其他设置的DHCP Ack报文时,通过该报文获取用户的MAC地址,生成该IP地址对应的ARP表项。
4.如权利要求2所述的保证ARP报文安全性的方法,其特征在于,所述ARP报文合法性检查:提取DHCP Ack报文中出现过的IP地址信息和MAC地址信息,生成ARP信任列表,当设备每次学习和转发ARP报文时,检查其中的IP地址和MAC地址是否存在于ARP信任列表,若不存在于ARP信任列表,则丢弃该报文,若存在于该ARP信任列表中,则执行第三步。
5.如权利要求2所述的保证ARP报文安全性的方法,其特征在于,所述ARP报文内MAC地址一致性检查,对ARP报文的以太网数据帧首部中的源MAC地址和ARP报文Data部分的源MAC进行检查,如果该以太网数据帧首部中的源MAC地址和ARP报文Data部分的源MAC不一致,则丢弃此ARP报文,如果该以太网数据帧首部中的源MAC地址和ARP报文Data部分的源MAC一致,则对ARP报文的以太网数据帧首部中的目的MAC地址和ARP报文Data部分的目的MAC进行检查,如果该以太网数据帧首部中的源MAC地址和ARP报文Data部分的源MAC不一致,则丢弃此ARP报文,如果该以太网数据帧首部中的源MAC地址和ARP报文Data部分的源MAC一致,则执行第四步。
6.如权利要求2所述的保证ARP报文安全性的方法,其特征在于,所述基于网络设备接口的ARP表项限制:在指定接口下配置能够学习到的最大动态ARP表项数目,以及ARP表项的最小老化时间,接口达到最大ARP表项数目后,将不允许新增动态ARP表项。
7.一种保证ARP报文安全性的装置,其特征在于,包括:
侦听模块,用于网络层数据侦听,获取ARP报文,和DHCP Ack报文;
安全性检验模块,用于安全性检验。
8.如权利要求7所述的保证ARP报文安全性的装置,其特征在于,所述安全性检验模块的检验方法包括:
第一步,DHCP联动ARP学习;
第二步,ARP报文合法性检查;
第三步,ARP报文内MAC地址一致性检查;
第四步,基于网络设备接口的ARP表项限制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610724623.2A CN107786679A (zh) | 2016-08-25 | 2016-08-25 | 保证arp报文安全性的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610724623.2A CN107786679A (zh) | 2016-08-25 | 2016-08-25 | 保证arp报文安全性的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107786679A true CN107786679A (zh) | 2018-03-09 |
Family
ID=61438415
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610724623.2A Pending CN107786679A (zh) | 2016-08-25 | 2016-08-25 | 保证arp报文安全性的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107786679A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101179566A (zh) * | 2007-11-24 | 2008-05-14 | 华为技术有限公司 | 一种防御arp报文攻击的方法和装置 |
CN101834870A (zh) * | 2010-05-13 | 2010-09-15 | 中兴通讯股份有限公司 | 一种防止mac地址欺骗攻击的方法和装置 |
CN101888329A (zh) * | 2010-04-28 | 2010-11-17 | 北京星网锐捷网络技术有限公司 | 地址解析协议报文的处理方法、装置及接入设备 |
CN103595638A (zh) * | 2013-11-04 | 2014-02-19 | 北京星网锐捷网络技术有限公司 | 一种mac地址学习方法及装置 |
-
2016
- 2016-08-25 CN CN201610724623.2A patent/CN107786679A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101179566A (zh) * | 2007-11-24 | 2008-05-14 | 华为技术有限公司 | 一种防御arp报文攻击的方法和装置 |
CN101888329A (zh) * | 2010-04-28 | 2010-11-17 | 北京星网锐捷网络技术有限公司 | 地址解析协议报文的处理方法、装置及接入设备 |
CN101834870A (zh) * | 2010-05-13 | 2010-09-15 | 中兴通讯股份有限公司 | 一种防止mac地址欺骗攻击的方法和装置 |
CN103595638A (zh) * | 2013-11-04 | 2014-02-19 | 北京星网锐捷网络技术有限公司 | 一种mac地址学习方法及装置 |
Non-Patent Citations (2)
Title |
---|
林宏刚,等: ""一种主动检测和防范ARP攻击的算法研究"", 《四川大学学报(工程科学版)》 * |
陈禹航: ""ARP攻击的原理分析及防御方案"", 《电脑知识与技术》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9712559B2 (en) | Identifying frames | |
KR101785760B1 (ko) | 사설 ipv4 도달가능성으로 ds-라이트 향상을 위한 방법 및 네트워크 요소 | |
US20140269702A1 (en) | Interoperability of data plane based overlays and control plane based overlays in a network environment | |
CN102244651B (zh) | 防止非法邻居发现协议报文攻击的方法和接入设备 | |
CN101674306B (zh) | 地址解析协议报文处理方法及交换机 | |
CN102710485B (zh) | 透明代理方法及代理服务器 | |
CN106657035B (zh) | 一种网络报文传输方法及装置 | |
EP2959397A1 (en) | Ip reflection | |
CN100563245C (zh) | 一种针对arp泛滥攻击的防范方法 | |
EP2536099A2 (en) | Method and access node for preventing address conflict | |
CN104168338A (zh) | 一种网络地址转换装置和方法 | |
CN106878259A (zh) | 一种报文转发方法及装置 | |
CN106899711A (zh) | 一种基于Linux的动态域名解析模块及其黑白名单实现方法 | |
CN104683500B (zh) | 一种安全表项生成方法和装置 | |
CN105376338A (zh) | 一种IPv4与IPv6之间的翻译方法及装置 | |
CN103516820B (zh) | 基于mac地址的端口映射方法和装置 | |
CN103095858B (zh) | 地址解析协议arp报文处理的方法、网络设备及系统 | |
CN106685979A (zh) | 基于STiP模型的安全终端标识及认证方法及系统 | |
CN107547691B (zh) | 地址解析协议报文代理方法和装置 | |
Kang et al. | ARP modification for prevention of IP spoofing | |
CN107786499A (zh) | 针对arp网关欺骗攻击的预警方法及装置 | |
CN107786679A (zh) | 保证arp报文安全性的方法及装置 | |
CN104917687B (zh) | 报文分流方法及装置 | |
US20100238930A1 (en) | Router and method of forwarding ipv6 packets | |
CN105635138A (zh) | 一种防止arp攻击的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180309 |
|
RJ01 | Rejection of invention patent application after publication |