WO2008080324A1 - A method and apparatus for preventing igmp message attack - Google Patents
A method and apparatus for preventing igmp message attack Download PDFInfo
- Publication number
- WO2008080324A1 WO2008080324A1 PCT/CN2007/070894 CN2007070894W WO2008080324A1 WO 2008080324 A1 WO2008080324 A1 WO 2008080324A1 CN 2007070894 W CN2007070894 W CN 2007070894W WO 2008080324 A1 WO2008080324 A1 WO 2008080324A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- igmp
- unit
- address
- attack
- rate
- 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.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1863—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast comprising mechanisms for improved reliability, e.g. status reports
- H04L12/1877—Measures taken prior to transmission
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1458—Denial of Service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
Definitions
- the present invention relates to the field of network communication technologies, and in particular, to a method and apparatus for preventing IGMP packet attacks.
- IGMP Internet Group Management Protocol
- the structure is also relatively easy.
- the network hacker can send large-traffic IGMP messages to the device through the IGMP packet sending tool (the packet sending tool is relatively easy to obtain).
- the processing of IGMP messages is often handled by the Central Processing Unit (CPU) rather than the forwarding engine.
- CPU Central Processing Unit
- the processing power of the CPU is often not strong.
- a large number of attack packets can cause the CPU to be busy and cannot process other protocol packets, causing network anomalies.
- the forwarding engine on the interface board is more capable. Sending these IGMP messages to the interface board or the CPU on the main control board for processing also causes the CPU to be busy and cannot process other protocol packets.
- the IGMP Snooping function is becoming a mature technology. Its function is to listen to IGMP messages on the switch and learn the port information. The learning functions are processed by the CPU. Because of this, the impact of IGMP packet attacks on Layer 2 switches is increasing.
- IGMP packets are cached through the packet queue. Packets that exceed the queue length are discarded. The length of the control queue can be reduced by d and IGMP packets.
- the packet sent by the forwarding engine is often controlled by the token bucket.
- the token bucket can be imagined as a container with a fixed capacity, which can be configured according to the specified speed (this speed can be configured).
- the token is stored in the token bucket. If there is a sufficient token, the packet will be sent evenly at the specified rate. Otherwise, the packet will be discarded. Through the token bucket, you can limit the rate at which packets are sent.
- the anti-IGMP packet attack solution in the prior art has the same disadvantages: packets or messages (which can be collectively referred to as IGMP messages) having the same network address information that are abundant in a short period of time cannot be identified, for these messages or The address information of the message is rate-controlled without distinction, so that packets or messages with the same network address information (often these messages are viruses or hackers) are processed and normal at a high rate (that is, a large amount of time emerges in a short time). The packet or message is processed in the same way. As a result, normal packets or messages are discarded or squeezed out, and the purpose of preventing attacks is not achieved.
- the embodiment of the invention provides a method and a device for preventing an IGMP attack, and performs a hierarchical anti-attack against the source address of the IGMP and the IP address of the multicast group, thereby effectively solving the malicious IGMP.
- a method for preventing IGMP spoofing attacks including the steps of secondary attack prevention:
- the IGMP packet source IP address attack defense uses the source IP address of the IGMP packet to filter the IGMP packet attack defense.
- the IGMP packet multicast group IP address defense attack uses the port number Port, the virtual LAN VLAN, and the multicast group IP address to filter IGMP packets.
- the present invention also discloses an apparatus for preventing IGMP packet attacks, including a secondary attack defense unit:
- the source IP address anti-attack unit of the IGMP packet is used to filter IGMP packets against the source IP address of the IGMP packet.
- IGMP packet-based multicast group IP address attack defense unit is used to filter IGMP anti-attack attacks by port number, virtual LAN VLAN, and multicast group IP address.
- a hierarchical anti-attack is implemented for the source address and the multicast group IP of the IGMP, and the network abnormality caused by a large number of malicious IGMPs in a short period of time is effectively and accurately solved.
- FIG. 1 is a flowchart of a method for preventing an IGMP packet attack according to an embodiment of the present invention
- FIG. 2 is a first-level flowchart of the source IP attack defense against IGMP packets according to the present invention
- FIG. 3 is a block diagram of an apparatus for preventing an IGMP packet attack according to the first embodiment of the present invention
- FIG. 4 is a partial flowchart of a method for preventing an IGMP packet attack according to a first embodiment of the present invention
- FIG. 5 is a block diagram of an apparatus for preventing an IGMP packet attack according to a second embodiment of the present invention
- FIG. 6 is a partial flowchart of a method for preventing an IGMP packet attack according to a second embodiment of the present invention
- FIG. 7 is a structural diagram of an apparatus for preventing an IGMP packet attack according to an embodiment of the present invention.
- the method for preventing an IGMP packet attack in the embodiment of the present invention includes the following steps: 800: Start;
- the first level is based on an IGMP packet source IP address to prevent attacks
- the second level is based on the IGMP packet multicast group IP attack defense
- the first-level attack defense when the number of users accessing the device is large, or the attacker changes the source IP attack, the CPU resources of the device are also occupied in large quantities, which affects the processing of normal services. To solve this problem, you need to suppress the IP address of the multicast group in the IGMP packet to achieve the purpose of attack defense.
- the same multicast group IP If the same multicast group IP generates a large number of IGMP messages in a short period of time, it is also considered to be a virus. Or hacking, discarding the IGMP message; otherwise, the IGMP message is allowed to pass, and the process proceeds to step 820.
- the embodiment of the present invention discloses an apparatus for preventing IGMP packet attacks.
- the method includes: a first level based on an IGMP packet source IP address attack defense unit 701 and a second level based on IGMP.
- step 810 is based on the IGMP4 source IP address
- step 820 is based on Port + VLAN + multicast group IP). The same, as shown in Figure 2.
- Embodiment 1 is a diagrammatic representation of Embodiment 1:
- the module 500 includes a statistic unit 510, a first judging unit 520 connected to the statistic unit 510, and the first judging unit.
- the pass unit 530 and the discard unit 540 are connected, and further include a configuration unit 550 connected to the first judging unit 520.
- the method for attacking the second-level anti-IGMP packet provided by the embodiment of the present invention is as shown in FIG. 2 .
- the method shown in Fig. 2 can be implemented by the module 500 shown in Fig. 3. Therefore, the description of Fig. 2 is an explanation of the functions of the units in Fig. 3.
- Step 100 is performed by the statistics unit 510.
- the address information is the source IP address of the IGMP message.
- the address information is the multicast group IP address of the IGMP message.
- Step 200 Determine whether the arrival rate is greater than the limit rate, and if yes, go to step 400, otherwise go to step 300;
- This step is performed by the first judging unit 520.
- the rate limit can be configured in advance through the configuration unit 550, and a determination can be made by comparing the arrival rate with the rate limit. It should be noted that this step can also have many variations, for example, comparing the reciprocal of the arrival rate with the reciprocal of the rate limit, but these variations are all circumvention means that those skilled in the art can obtain without creative labor. It is of course also included within the scope of the invention.
- Step 300 After the IGMP message is allowed to pass, the process proceeds to the end step.
- This step is performed by the passing unit 530 related to the negative judgment of the first judging unit 520. Row. Because the arrival rate is less than or equal to the rate limit, the network information is not a virus or hacker that floods in a short time. It should be a normal message, so it is allowed to pass.
- Step 400 After the IGMP message is discarded, the process proceeds to the end step.
- This step is performed by the discarding unit 540 associated with the affirmative judgment of the first judging unit 520. Because the arrival rate is greater than the limit rate, the network information is a virus or hacker that floods in a short period of time, so discarding it avoids the performance degradation caused by the CPU of the device processing the virus network information.
- the network is smooth.
- the IP address of the packet can be alarmed, so that the user can directly find the attacker.
- This step is performed by the alert unit 560, and accordingly, the alert unit 560 is also optional.
- the statistic unit 510 includes an obtaining unit 511, a second judging unit 512 connected to the obtaining unit 511, and a determining unit 513 and a setting unit 514 connected to the second judging unit 512.
- Step 100 of FIG. 2 will be described in detail next, and the function of each subunit will be described in conjunction with the statistical unit 510 in FIG.
- the method includes the following steps: Step 110: Take out address information of the IGMP message;
- step 810 the address information is the source IP address of the IGMP message; in step 820, the address information is the multicast group IP address of the IGMP message.
- Step 111 Determine whether the IGMP message is the first arrival, if yes, go to step 112; if not, go to step 113;
- This step is performed by the second judging unit 512.
- the purpose is to determine whether the IGMP message from the IP address is the first time to enter the module 500, so that the corresponding parameters and monitoring can be established for the IP address, that is, the subsequent process.
- Step 112 The IGMP message initializes a historical timestamp and an accumulator corresponding to the IP address by using its IP address information, that is, records the historical timestamp as the current time of the system and sets the accumulator
- This step is to initialize the corresponding information of a certain IP address, and is executed by the setting unit 514.
- To count the rate of arrival of IGMP messages related to an IP address you must create the IP address for that IP address.
- the relevant parameters are set, for example, the historical time stamp and the accumulator in this embodiment. It is worth noting that each IP address has its own historical timestamp and accumulator, so different IP addresses have different historical timestamps and accumulators. But the current time of the system has a unique value at a point in time. Therefore, the current time of the system is a constant at a certain point in time. Therefore, this step is to assign its associated historical timestamp and accumulator value to a first-time IP address.
- Step 113 to step 117 i.e., the step of determining the arrival rate based on the historical time stamp, the current time of the system, and the value of the accumulator, is performed by the determining unit 513. specifically:
- Step 113 Determine whether the difference between the current time and the historical time stamp of the system is within a specified time, if yes, go to step 114; otherwise, go to step 116;
- the specified time in this step can be configured by the configuration unit 550, and is a denominator for calculating the arrival rate. For example, it can be set to 1 second, indicating that the number of IGMP messages arriving at the same address within one second is to be counted.
- Step 114 Clear the historical timestamp and the accumulator, specifically, record the historical timestamp as the current time of the system, and set the accumulator to 0;
- the time interval between the arrival of the IGMP message and the previous IGMP message from the IP address exceeds the specified time, indicating that the arrival rate must be less than the limit rate.
- the historical time stamp and accumulator associated with the IP address need to be cleared for subsequent statistics.
- Step 115 The arrival rate is assigned a value lower than the limit rate, and is used to prepare for determining whether the arrival rate is greater than the limit rate in the next step; of course, this step may be omitted, or directly, the arrival rate is less than the limit rate. A message is passed to the next step. In short, there are many ways to achieve this in your implementation.
- Step 116 Add 1 to the accumulator
- Step 117 Calculate the arrival rate using the accumulator and the specified time.
- the limit rate is 8 per second
- the first 8 IGMP messages are specified. Since the ratio of the value of the accumulator to the value of the specified time, that is, the arrival rate is less than the rate limit, the eight IGMP texts are executed to step 300, which is allowed to pass. The 9th and later arrivals in this 1 second will be discarded due to exceeding the limit rate. Since each IGMP message passes through the module 500 quickly, the IGMP message does not stay in the module 500. But at the same time, for this reason, the phenomenon of leakage is caused, for example, the first eight of the above are allowed to pass.
- Embodiment 2 is a diagrammatic representation of Embodiment 1:
- FIG. 5 Another block diagram of the anti-IGMP packet attack provided by the embodiment of the present invention is shown in FIG. 5.
- the module 600 includes a statistic unit 610, a first judging unit 620 connected to the statistic unit 610, a pass unit 630 and a discarding unit 640 connected to the first judging unit 620, and the discarding unit 640
- the alarm unit 660 further includes a configuration unit 650 connected to the first determining unit 620. .
- the functions of each unit are the same as those of module 500, and the difference from module 500 is that the implementation of the statistical unit is different.
- the statistics unit 610 includes an obtaining unit 611, a second determining unit 612, an initiating unit 614, and an accumulating unit 616 connected to the acquiring unit 611, and a third judging unit 613 connected to the second judging unit 612.
- the starting unit 614 is a determining unit 615 and an accumulating unit 616 connected to the third determining unit 613. .
- Steps 120 and 121 are the same as steps 110 and 111, respectively, and are respectively determined by the obtaining unit 611 and the second step.
- the unit 612 performs, and reference may be made to the descriptions of the steps 110 and 111 above, and details are not described herein again.
- Step 122 Start a timer related to the IP address information of the IGMP message, and set an accumulator associated with the IP address information of the IGMP message to 1 and return to step 120.
- This step is initialization.
- the corresponding information of a certain IP address is executed by the starting unit 614.
- it is necessary to establish related parameters for the IP address such as the timer and the accumulator in this embodiment. It is worth noting that each IP address has its own timer and accumulator, so different IP addresses have different timers and accumulators.
- This step is to set the timer and accumulator to 1 for a first-time IP address. Of course, the specific value is not critical.
- Step 123 Determine whether the timer ends, if yes, go to step 124; otherwise, go to step 125, and execute by the third determining unit 613;
- Step 124 Calculate the arrival rate. Specifically, the ratio of the corresponding accumulator to the corresponding timer may be used to represent the arrival rate, which is performed by the determining unit 615.
- Step 125 Add 1 to the corresponding accumulator and return to step 120 to continue to take off a network information processing, which is performed by the accumulating unit 616.
- the IGMP message is stuck in module 600. This is because, for each IP address, there is a timer in the module 600 corresponding to the IP address, and the IGMP message related to the IP address is retained in the module 600 within the specified time of the timer. After waiting for the timer to finish, the arrival rate is calculated to determine whether to allow these IGMP messages to pass or discard. However, in this case, there will be no leakage. For an IP address, if there is a lot of network information arriving at the module 600 within the timer time, it will be completely discarded because the arrival rate exceeds the limit rate. Therefore, there will be no leakage.
- the method and module provided by the embodiments of the present invention may be implemented in the form of software, hardware or firmware, and may be implemented as a firewall device/software or anti-virus device/software. If implemented by hardware, such as an ASIC (dedicated chip), it will have the advantage of being fast.
- ASIC application specific integrated circuit
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
一种防 IGMP报文攻击的方法和装置
本申请要求于 2006 年 12 月 31 日提交中国专利局、 申请号为 200610063750.9. 发明名称为"一种防 IGMP 4艮文攻击的方法和装置,,的中国专 利申请的优先权, 其全部内容通过引用结合在本申请中。
技术领域
本发明涉及网络通信技术领域,尤其涉及一种防 IGMP报文攻击的方法和 装置。
背景技术
因特网组管理协议 IGMP ( Internet Group Management Protocol )是应用在 路由器和主机之间的通信协议,其主要功能是维护路由器和主机之间的组播组 信息, 以实现用户组播流量的接收。 随着网络的发展, 组播业务也逐渐成为 Internet网络的一个热点业务。
但是由于 IGMP报文比较简单, 构造也比较容易, 网络黑客通过 IGMP报文 发送工具(报文发送工具比较容易获取 )快速发送大流量的 IGMP报文给设备, 对于接收报文的路由器或者交换机, IGMP报文的处理往往是通过中央处理器 CPU ( Central Processing Unit )而不是转发引擎进行处理的。 对于集中式设备, CPU处理能力往往不强, 大量的攻击报文会导致 CPU繁忙而不能正常处理其他 协议报文而引起网络异常; 对于分布式设备, 接口板上的转发引擎能力较强, 会把这些 IGMP报文上送到接口板或者是主控板上的 CPU进行处理, 同样会引 起 CPU繁忙而不能正常处理其他协议报文。
目前, IGMP Snooping功能也正在成为一项成熟的技术, 其功能主要是在 交换机上监听 IGMP报文, 学习出端口信息, 其学习功能都是通过 CPU来处理 的。 正因为如此, IGMP报文攻击对于二层交换机的影响也越来越大。
目前普遍采用的防 IGMP>¾文攻击的手段如下:
对于集中式设备, IGMP协议报文往往是通过报文队列緩存的, 对于超过 队列长度的报文会被丟弃掉, 通过控制队列的长度可以减 d、 IGMP报文攻击。
对于分布式设备, 转发引擎上送报文往往通过令牌桶进行控制,令牌桶可 以想象成是一个容量固定的容器, 按照规定的速度(这个速度可以配置)向桶
中存放令牌, 报文通过的时候需要看令牌桶中有没有令牌, 如果有足够的令牌 时, 则按规定的速率均匀地向外发送报文, 否则丟弃报文。 通过令牌桶, 可以 限制上送报文的速率。
但是, 已有技术中防 IGMP报文攻击方案具有同样的缺点: 对于短时间内 大量涌现的具有同一网络地址信息的报文或消息 (可以通称为 IGMP报文)无 法辨识,对于这些报文或消息的地址信息不加以区别就进行速率控制, 使得高 速率(即短时间内大量涌现)的具有同一网络地址信息的报文或消息(往往这 些报文是病毒或黑客攻击)的处理与正常的报文或消息的处理方法一样, 因此 导致正常报文或消息被丢弃或被挤掉, 而达不到防止攻击的目的。
发明内容
本发明实施例提供一种防 IGMP"^文攻击的方法和装置, 通过针对 IGMP •艮文的源地址和组播组 IP, 进行分级的防攻击, 有效解决恶意 IGMP^艮文短时 间内大量涌现而导致的网络异常问题。
本发明通过以下技术方案实现:
一种防 IGMP艮文攻击的方法, 包括二级防攻击的步骤:
基于 IGMP报文源 IP地址防攻击 , 所述基于 IGMP报文源 IP地址防攻击以 IGMP报文源 IP地址过滤 IGMP报文防攻击;
基于 IGMP报文组播组 IP地址防攻击, 所述基于 IGMP报文组播组 IP地址防 攻击以端口号 Port、 虚拟局域网 VLAN、 组播组 IP地址过滤 IGMP报文防攻击。
此外, 本发明还公开了一种防止 IGMP报文攻击的装置, 包括二级防攻击 单元:
基于 IGMP报文源 IP地址防攻击单元, 用于以 IGMP报文源 IP地址过滤 IGMP报文防攻击;
基于 IGMP报文组播组 IP地址防攻击单元,用于以端口号 Port、虚拟局域网 VLAN、 组播组 IP地址过滤 IGMP艮文防攻击。
本发明实施例通过针对 IGMP■ ^文的源地址和组播组 IP, 进行分级的防 攻击,有效、 准确地解决恶意 IGMP 4艮文短时间内大量涌现而导致的网络异常 问题。
附图说明
图 1为本发明实施例的防 IGMP报文攻击的方法流程图;
图 2为本发明对 IGMP报文源 IP防攻击的一级流程图;
图 3为本发明第一实施例的防 IGMP报文攻击的设备的框图;
图 4为本发明第一实施例的防 IGMP报文攻击的方法的部分流程图; 图 5为本发明第二实施例的防 IGMP报文攻击的设备的框图;
图 6为本发明第二实施例的防 IGMP报文攻击的方法的部分流程图; 图 7为本发明实施例的防 IGMP报文攻击的装置结构图。
具体实施方式
贯穿说明书,示出的该优选实施例和示例应被看作本发明的范例而不受限 制。
如图 1所示, 本发明实施例防 IGMP报文攻击的方法包括如下步骤: 800: 开始;
810: 第一级基于 IGMP报文源 IP地址防攻击;
以 IGMP报文源 IP地址过滤, 防止同一个源 IP在短时间内产生大量的 IGMP 报文。 如果同一个源 IP在短时间内产生大量的 IGMP报文, 则认为是病毒或黑 客攻击, 丟弃 IGMP报文, 跳转到步骤 830; 否则, 允许所述 IGMP报文通过, 进入步骤 820。
820: 第二级基于 IGMP报文组播组 IP防攻击;
对于第一级防攻击, 当设备接入用户数目很多, 或者攻击者变化源 IP攻击 的情况下, 同样会造成设备的 CPU资源被大量占用, 影响正常业务的处理。 为 解决该情况, 需要针对 IGMP报文中的组播组 IP进行抑制, 以达到防攻击的目 的。
以端口号 Port +虚拟局域网 VLAN ID +组播组 IP过滤,对于连接用户 PC机 或者源设备的路由器或者交换机, 需要维护对应端口 + VLAN的组播组信息。 而在实际应用中, 只要本端口 + VLAN有组播组存在, 就能够保证组播业务的 正常应用, 而无论该端口 + VLAN下接入多少个用户, 同时也无需关心用户的 源 IP。 所以, 可以针对 Port + VLAN +组播组 IP进行抑制, 单位时间内只有少 量的 IGMP报文允许通过, 其余报文丢弃。 这样可以达到防攻击的目的。
如果同一个组播组 IP在短时间内产生大量的 IGMP报文, 则也认为是病毒
或黑客攻击, 丟弃 IGMP报文; 否则, 允许所述 IGMP报文通过, 进入步骤 820。
830: 结束。
与上述方法相对应, 本发明实施例公开了一种防 IGMP报文攻击的装置, 如图 7所示, 包括: 第一级基于 IGMP报文源 IP地址防攻击单元 701和第二级基 于 IGMP报文组播组 IP防攻击单元 702。
上述图 1中, 步骤 810和 820除了判断的标准不同 (步骤 810以 IGMP4艮文源 IP地址为标准, 步骤 820以 Port + VLAN +组播组 IP为标准)之外, 每级防攻击 的原理相同, 具体如图 2所示。
实施例一:
本发明实施例提供的一种防 IGMP报文攻击的模块框图, 如图 3所示 ,模 块 500包括统计单元 510、 与该统计单元 510藕接的第一判断单元 520、 与该 第一判断单元 520藕接的通过单元 530和丟弃单元 540, 此外, 还包括与所述 第一判断单元 520藕接的配置单元 550。
本发明实施例提供的二级防 IGMP报文攻击的方法, 每一级的流程如图 2 所示。 图 2所示的方法可以通过图 3所示的模块 500来实现, 因此, 对于图 2 的说明即是对图 3中各单元功能的说明。参考图 2,所述方法开始步骤后进入: 步骤 100: 统计接收到的具有同一地址信息的 IGMP报文的到达速率; 步骤 100由所述统计单元 510执行。 值得说明的是, 对于步骤 810, 该地 址信息即 IGMP报文的源 IP地址; 对于步骤 820, 该地址信息即 IGMP报文 的组播组 IP地址。
步骤 200: 判断所述到达速率是否大于限制速率, 如果是, 则转步骤 400, 否则转步骤 300;
此步骤由所述第一判断单元 520执行。限制速率可以事先通过所述配置单 元 550完成配置,通过比较到达速率和限制速率可以做出判断。值得说明的是, 这一步骤还可以有很多变形, 例如, 比较到达速率的倒数和限制速率的倒数, 但这些变形都属于本领域普通技术人员不用付出创造性劳动就能够得到的规 避手段, 因此, 也当然包括在本发明的限定范围内。
步骤 300: 允许所述 IGMP报文通过后进入结束步骤。
此步骤由与所述第一判断单元 520 的否定性判断相关的通过单元 530执
行。 因为到达速率小于等于限制速率, 说明所述网络信息不是短时间大量涌入 的病毒或黑客攻击, 应该是正常报文, 因此允许其通过。
步骤 400: 丢弃所述 IGMP报文后进入结束步骤。
此步骤由与所述第一判断单元 520 的肯定性判断相关的丢弃单元 540执 行。 因为到达速率大于限制速率, 说明所述网络信息是短时间大量涌入的病毒 或黑客攻击, 因此将其丟弃, 就避免了因设备的 CPU处理该类病毒网络信息 而导致的性能下降进而影响网络的顺畅。
可选的, 当丟弃的报文数目超过告警门限时, 可以对报文的 IP地址进行 告警, 方便用户直接查找到攻击者。 此步骤由告警单元 560来执行, 相应地, 告警单元 560也是可选的。
具体地,如图 3所示,统计单元 510包括获取单元 511 ,与该获取单元 511 藕接的第二判断单元 512 , 与该第二判断单元 512藕接的确定单元 513和设置 单元 514。
为了使本发明实施例更加清晰, 接下来将对图 2中的步骤 100详细说明, 同时结合图 3中的统计单元 510说明各子单元的功能。 如图 4所示, 包括: 步骤 110: 取出所述 IGMP报文的地址信息;
这一步骤由所述获取单元 511来执行。 值得说明的是, 对于步骤 810 , 该 地址信息即 IGMP报文的源 IP地址; 对于步骤 820, 该地址信息即 IGMP报 文的组播组 IP地址。
步骤 111 : 判断所述 IGMP报文是否是首次到达, 如果是, 则转步骤 112; 如果不是, 则转步骤 113;
这一步骤由所述第二判断单元 512来执行。 其目的是判断来自该 IP地址 的 IGMP报文是否是第一次进入所述模块 500 , 以便能为该 IP地址建立相应 的参数和进行监视, 也就是后续的流程。
步骤 112: 所述 IGMP 4艮文通过其 IP地址信息初始化与该 IP地址相对应 的历史时间戳和累加器,即将该历史时间戳记录为系统当前时间并将累加器置
1 ;
这一步骤是初始化某一 IP地址相应信息的, 由所述设置单元 514来执行。 为了统计和某一 IP地址相关的 IGMP报文的到达速率, 就必须为该 IP地址建
立相关的参数, 例如, 本实施例中历史时间戳和累加器。 值得说明的是, 每个 IP地址都具有自己的历史时间戳和累加器, 因此, 不同 IP地址拥有不同的历 史时间戳和累加器。 但系统当前时间在一个时间点拥有唯一的值。 因此, 系统 当前时间在某个确定的时间点时是个常数, 因此, 这一步骤也就是为某个首次 到达的 IP地址赋予其相关的历史时间戳和累加器的值。
步骤 113至步骤 117即根据历史时间戳、系统当前时间和累加器的值确定 到达速率的步骤, 由所述确定单元 513来执行。 具体地:
步骤 113: 判断系统当前时间和历史时间戳的差是否在规定时间内, 如果 是, 则转步骤 114; 否则, 转步骤 116;
这一步骤中的规定时间可以通过所述配置单元 550配置,是计算所述到达 速率的分母,例如,可以设定为 1秒,表示要统计 1秒内同一地址到达的 IGMP 报文的数目。
步骤 114: 将所述历史时间戳和累加器清除, 具体地, 将历史时间戳记录 为系统当前时间, 将累加器置 0;
运行到此步骤时, 证明这个 IP地址到达的后一个 IGMP 文和前一个自 该 IP地址到达的 IGMP报文的时间间隔超过了规定时间 , 表明到达速率必定 小于限制速率。 而此时则需要对与该 IP地址相关的历史时间戳和累加器清除 了, 以便后续统计。
步骤 115: 将到达速率赋值为比限制速率低的值, 用于为下个步骤中判断 到达速率是否大于限制速率做准备; 当然, 这个步骤是可以省略的, 或者直接 把到达速率小于限制速率这一信息传送到下一步骤。 总之, 在实现中有很多方 法可以实现这一目标。
步骤 116: 累加器加 1 ;
运行到此步骤时,证明在确定时间内又一个具有同一 IP地址信息的 IGMP 报文到达了, 自然与该 IP地址相对应的累加器要累加, 至于加多少, 可以根 据到达速率和限制速率的规定灵活设置, 此处给出的仅是一个优选的值。
步骤 117: 利用累加器和规定时间计算到达速率。
具体说明: 对于在规定时间内 (例如 1 秒钟)频繁到来的具有同一源 IP 地址的 IGMP报文, 如果规定了限制速率为每秒 8个, 那么前 8个 IGMP报文
由于其到来时累加器的值和规定时间的值的比值即到达速率还小于限制速率, 这 8个 IGMP 文会执行到步骤 300, 即被允许通过。 而在这 1秒内第 9个及 以后到来的则会由于超过限制速率而被丢弃掉。由于每个 IGMP报文都会很快 通过模块 500, 因此, 不会引起 IGMP报文在模块 500中滞留的现象。 但同时 也由于这个原因, 导致漏丢的现象, 例如前述的那前 8个就允许通过了。
实施例二:
本发明实施例提供的另一种防 IGMP报文攻击的模块框图如图 5所示。同 时参考图 3,模块 600与模块 500的区别之处在于:统计单元的实现方式不同, 其它都相同。 具体地, 模块 600包括统计单元 610, 与该统计单元 610藕接的 第一判断单元 620, 与该第一判断单元 620藕接的通过单元 630 和丢弃单元 640, 与丟弃单元 640藕接的告警单元 660, 此外, 还包括与所述第一判断单 元 620藕接的配置单元 650。。 各单元的功能同模块 500的功能相同, 与模块 500不同之处在于统计单元的实现方式不同。 具体地, 所述统计单元 610包括 获取单元 611, 与该获取单元 611藕接的第二判断单元 612、 启动单元 614和 累加单元 616, 与第二判断单元 612藕接的第三判断单元 613、 启动单元 614, 与第三判断单元 613藕接的确定单元 615和累加单元 616。。
本发明实施例提供的对图 2中步骤 100的另一种实施方式, 如图 6所示: 步骤 120和步骤 121分别与步骤 110和步驟 111相同,分别由所述获取单 元 611和第二判断单元 612执行,可以参考上文中关于步骤 110和 111的说明, 在此不再赘述。
步骤 122: 启动与所述 IGMP 4艮文的 IP地址信息相关的定时器, 同时将 与所述 IGMP报文的 IP地址信息相关的累加器置 1 , 并且返回到步骤 120; 这一步骤是初始化某一 IP地址相应信息的, 由所述启动单元 614来执行。 为了统计和某一 IP地址相关的 IGMP报文的到达速率, 就必须为该 IP地址建 立相关的参数, 例如本实施例中定时器和累加器。 值得说明的是, 每个 IP地 址都具有自己的定时器和累加器, 因此, 不同 IP地址拥有不同的定时器和累 加器。, 这一步骤是为某个首次到达的 IP地址赋启动其定时器和累加器置 1 , 当然具体数值并不是关键。初始化后立即返回步骤 120继续取下一条 IGMP报 文进^"处理。
步骤 123: 判断定时器是否结束, 如果是则转步骤 124; 否则转步骤 125, 由所述第三判断单元 613执行;
步骤 124: 计算到达速率, 具体地可以用对应的累加器与对应的定时器的 比值代表到达速率, 由所述确定单元 615执行。
步骤 125: 将对应的累加器加 1后返回步骤 120, 继续取下一条网络信息 处理, 由所述累加单元 616执行。
可以看出, 在这个具体实施例中, IGMP报文在模块 600中有滞留。 这是 因为对于每个 IP地址而言,与这个 IP地址相对应的在模块 600中有个定时器, 在定时器的规定时间内,与该 IP地址相关的 IGMP报文会滞留在模块 600中, 只有等到该定时器结束,计算出到达速率后才会决定是否允许这些 IGMP报文 通过还是丟弃。 但如此一来, 就不会有漏丢的现象发生了, 对于某个 IP地址, 如果在定时器时间内有很多网络信息到达模块 600 , 就会因为到达速率超过限 制速率而遭到全部丟弃, 因此不会有漏丟现象。
值得说明的是, 本发明实施例提供的这种方法和模块可以以软件、硬件或 固件的形式实施, 可以实施为防火墙设备 /软件或杀毒设备 /软件。 如果通过硬 件, 例如 ASIC (专用芯片) 实施, 会具有处理速度快等优点。
以上所揭露的仅为本发明的优选实施例而已,当然不能以此来限定本发明 之权利范围, 因此依本发明申请专利范围所作的等同变化, 仍属本发明所涵盖 的范围。
Claims
1、 一种防 IGMP^艮文攻击的方法, 其特征在于, 包括二级防攻击的步骤: 基于 IGMP报文源 IP地址防攻击, 所述基于 IGMP报文源 IP地址防攻击以
IGMP报文源 IP地址过滤 IGMP报文防攻击;
基于 IGMP报文组播组 IP地址防攻击, 所述基于 IGMP报文组播组 IP地址防 攻击以端口号 Port、 虚拟局域网 VLAN、 组播组 IP地址过滤 IGMP报文防攻击。
2、根据权利要求 1所述的方法,其特征在于,每级防攻击的步骤具体包括: 统计接收到的具有同一地址信息的 IGMP报文的到达速率;
判断所述到达速率是否大于限制速率, 如果是, 则
丢弃所述 IGMP 艮文; 否则
允许所述 艮文通过。
3、 根据权利要求 2所述的方法, 其特征在于: 所述统计接收到的具有同一 地址信息的 IGMP报文的到达速率包括:
取出所述 IGMP 艮文的地址信息;
判断该地址是否为首次到达, 如果是, 则
将历史时间戳记录为系统当前时间并将累加器置 1 ; 否则
利用所述历史时间戳、 系统当前时间和累加器确定到达速率。
4、 根据权利要求 2所述的方法, 其特征在于:所述统计接收到的具有同一 地址信息的 IGMP报文的到达速率包括:
取出所述 IGMP才艮文的地址信息;
判断该地址是否为首次到达, 如果是, 则
启动定时器,并将累加器置 1后返回取出所述 IGMP报文的地址信息步骤; 否则
判断定时器是否结束, 如果是, 贝' J
根据定时器和累加器确定到达速率; 否则
累加器累加 1 , 返回取出所述 IGMP报文的地址信息步骤。
5、 根据权利要求 2至 4任意一项所述的方法, 其特征在于, 还包括配置限 制速率。
6、 根据权利要求 5所述的方法, 其特征在于, 所述丢弃所述 IGMP报文之
后还包括: 当丟弃的报文数目超过告警门限时, 对所述 IGMP报文的 IP地址进 行告警。
7、 一种防止 IGMP报文攻击的装置, 其特征在于, 包括二级防攻击单元: 基于 IGMP报文源 IP地址防攻击单元, 用于以 IGMP报文源 IP地址过滤 IGMP艮文防攻击;
基于 艮文组播组 IP地址防攻击单元, 用于以端口号 Port、虚拟局域网 VLAN、 组播组 IP地址过滤 IGMP报文防攻击。
8、 根据权利要求 7所述的防 IGMP报文攻击的装置, 其特征在于, 所述每 级防攻击单元包括:
统计单元,用于统计接收到的具有同一地址信息的 IGMP报文的到达速率; 与所述统计单元藕接的第一判断单元,用于判断所述统计单元统计的到达 速率是否大于限制速率, 产生肯定结果或否定结果;
与所述第一判断单元藕接的与所述肯定结果相关的丢弃单元,用于丟弃所 述 IGMP报文;
与所述第一判断单元藕接的与所述否定结果相关的通过单元,用于允许所 述 IGMP 艮文通过。
9、 根据权利要求 8所述的装置, 其特征在于: 所述统计单元包括: 获取单元, 用于取出所述 IGMP报文的地址信息;
与所述获取单元藕接的第二判断单元,用于判断所述获取单元取出的地址 是否为首次到达, 产生第二肯定结果或第二否定结果;
与所述第二判断单元藕接的与所述第二肯定结果相关的设置单元,用于将 历史时间戳记录为系统当前时间并将累加器置 1 ;
与所述第二判断单元藕接的与所述第二否定结果相关的确定单元,用于利 用历史时间戳、 系统当前时间和累加器确定到达速率。
10、 根据权利要求 8所述的装置, 其特征在于: 所述统计单元包括: 获取单元, 用于取出所述 IGMP报文的地址信息;
与所述获取单元藕接的第二判断单元,用于判断所述获取单元取出的地址 是否为首次到达, 产生第二肯定结果或第二否定结果;
与所述第二判断单元藕接的与所述第二肯定结果相关的启动单元,用于启
动定时器, 并将累加器置 1后返回所述获取单元;
与所述第二判断单元藕接的与所述第二否定结果相关的第三判断单元,用 于判断定时器是否结束, 产生第三肯定结果或第三否定结果;
与所述第三判断单元藕接的与所述第三肯定结果相关的确定单元,用于根 据定时器和累加器确定到达速率;
与所述第三判断单元藕接的与所述第三否定结果相关的累加单元,用于使 累加器累加 1 , 并返回所述获取单元。
11、 根据权利要求 8至 10任意一项所述的装置, 其特征在于, 还包括与所 述判断单元藕接的配置单元, 用于配置所述限制速率。
12. 根据权利要求 11 所述的装置, 其特征在于, 还包括与所述丢弃单元 藕接的告警单元, 当丟弃的报文数目超过告警门限时,对所述 IGMP报文的 IP 地址进行告警。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| EP07817085A EP2073457A4 (en) | 2006-12-31 | 2007-10-15 | METHOD AND APPARATUS FOR PREVENTING IGMP MESSAGE ATTACK |
| US12/478,399 US20090240804A1 (en) | 2006-12-31 | 2009-06-04 | Method and apparatus for preventing igmp packet attack |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CNA2006100637509A CN101001249A (zh) | 2006-12-31 | 2006-12-31 | 一种防igmp报文攻击的方法和装置 |
| CN200610063750.9 | 2006-12-31 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US12/478,399 Continuation US20090240804A1 (en) | 2006-12-31 | 2009-06-04 | Method and apparatus for preventing igmp packet attack |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2008080324A1 true WO2008080324A1 (en) | 2008-07-10 |
Family
ID=38693057
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2007/070894 Ceased WO2008080324A1 (en) | 2006-12-31 | 2007-10-15 | A method and apparatus for preventing igmp message attack |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US20090240804A1 (zh) |
| EP (1) | EP2073457A4 (zh) |
| CN (1) | CN101001249A (zh) |
| WO (1) | WO2008080324A1 (zh) |
Families Citing this family (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8689326B2 (en) * | 2006-01-16 | 2014-04-01 | Cyber Solutions Inc. | Device for analyzing and diagnosing network traffic, a system for analyzing and diagnosing network traffic, and a system for tracing network traffic |
| CN101478542B (zh) * | 2009-01-14 | 2012-05-30 | 华为技术有限公司 | 一种处理报文的方法和装置 |
| US8849989B2 (en) * | 2010-10-22 | 2014-09-30 | Telefonaktiebolaget L M Ericsson (Publ) | Mechanism for tracking host participation in multicast groups |
| CN102546666B (zh) * | 2012-02-28 | 2016-04-27 | 神州数码网络(北京)有限公司 | 防止igmp欺骗和攻击的方法及装置 |
| CN106302188A (zh) * | 2015-05-18 | 2017-01-04 | 中兴通讯股份有限公司 | 一种交换机设备的组播报文转发控制方法及装置 |
| CN105262757A (zh) * | 2015-10-29 | 2016-01-20 | 武汉光迅科技股份有限公司 | 一种基于ip保护的数据访问方法 |
| EP3377153B1 (en) | 2015-11-20 | 2020-02-19 | SHL Medical AG | Needle shield mechanism and a medicament delivery device comprising the needle shield mechanism |
| JP6470201B2 (ja) * | 2016-02-16 | 2019-02-13 | 日本電信電話株式会社 | 攻撃検知装置、攻撃検知システムおよび攻撃検知方法 |
| CN105871846A (zh) * | 2016-03-31 | 2016-08-17 | 杭州华三通信技术有限公司 | 一种组播组的管理方法及装置 |
| US10853499B2 (en) * | 2017-12-06 | 2020-12-01 | Cisco Technology, Inc. | Key threat prediction |
| US11218506B2 (en) | 2018-12-17 | 2022-01-04 | Microsoft Technology Licensing, Llc | Session maturity model with trusted sources |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20040215976A1 (en) * | 2003-04-22 | 2004-10-28 | Jain Hemant Kumar | Method and apparatus for rate based denial of service attack detection and prevention |
| CN1567839A (zh) * | 2003-06-24 | 2005-01-19 | 华为技术有限公司 | 基于端口的网络访问控制方法 |
| CN1697397A (zh) * | 2004-05-13 | 2005-11-16 | 华为技术有限公司 | 一种实现网络设备防攻击的方法 |
| CN1716868A (zh) * | 2004-06-29 | 2006-01-04 | 华为技术有限公司 | 一种抵御拒绝服务攻击的方法 |
| CN1725732A (zh) * | 2005-06-08 | 2006-01-25 | 杭州华为三康技术有限公司 | 一种报文限速方法 |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6880090B1 (en) * | 2000-04-17 | 2005-04-12 | Charles Byron Alexander Shawcross | Method and system for protection of internet sites against denial of service attacks through use of an IP multicast address hopping technique |
| US7835276B2 (en) * | 2004-12-30 | 2010-11-16 | Cisco Technology, Inc. | Admission control mechanism for multicast receivers |
-
2006
- 2006-12-31 CN CNA2006100637509A patent/CN101001249A/zh active Pending
-
2007
- 2007-10-15 WO PCT/CN2007/070894 patent/WO2008080324A1/zh not_active Ceased
- 2007-10-15 EP EP07817085A patent/EP2073457A4/en not_active Withdrawn
-
2009
- 2009-06-04 US US12/478,399 patent/US20090240804A1/en not_active Abandoned
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20040215976A1 (en) * | 2003-04-22 | 2004-10-28 | Jain Hemant Kumar | Method and apparatus for rate based denial of service attack detection and prevention |
| CN1567839A (zh) * | 2003-06-24 | 2005-01-19 | 华为技术有限公司 | 基于端口的网络访问控制方法 |
| CN1697397A (zh) * | 2004-05-13 | 2005-11-16 | 华为技术有限公司 | 一种实现网络设备防攻击的方法 |
| CN1716868A (zh) * | 2004-06-29 | 2006-01-04 | 华为技术有限公司 | 一种抵御拒绝服务攻击的方法 |
| CN1725732A (zh) * | 2005-06-08 | 2006-01-25 | 杭州华为三康技术有限公司 | 一种报文限速方法 |
Non-Patent Citations (1)
| Title |
|---|
| See also references of EP2073457A4 * |
Also Published As
| Publication number | Publication date |
|---|---|
| EP2073457A1 (en) | 2009-06-24 |
| US20090240804A1 (en) | 2009-09-24 |
| CN101001249A (zh) | 2007-07-18 |
| EP2073457A4 (en) | 2009-12-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2008080324A1 (en) | A method and apparatus for preventing igmp message attack | |
| CN112615818B (zh) | 基于sdn的ddos攻击防护方法、装置及系统 | |
| CN103200123B (zh) | 一种交换机端口安全控制方法 | |
| US8576866B2 (en) | Hierarchical rate limiting of control packets | |
| US20040215976A1 (en) | Method and apparatus for rate based denial of service attack detection and prevention | |
| CN108737447B (zh) | 用户数据报协议流量过滤方法、装置、服务器及存储介质 | |
| CN105681313B (zh) | 一种针对虚拟化环境的流量检测系统及方法 | |
| CN101478539B (zh) | 一种防止网络攻击的方法和网络设备 | |
| Huang et al. | Countering denial-of-service attacks using congestion triggered packet sampling and filtering | |
| You et al. | Packet in message based DDoS attack detection in SDN network using OpenFlow | |
| WO2009059504A1 (en) | Method and system for defending against tcp attack | |
| CN106330951B (zh) | 一种网络防护方法、装置和系统 | |
| CN101547187A (zh) | 宽带接入设备的网络攻击防护方法 | |
| CN101465855A (zh) | 一种同步泛洪攻击的过滤方法及系统 | |
| CN107016284A (zh) | 一种数据通信设备cpu前端动态防护方法及系统 | |
| CN101426014A (zh) | 防止组播源攻击的方法及系统 | |
| CN101272254B (zh) | 生成攻击特征库的方法、防范网络攻击的方法以及装置 | |
| WO2009121253A1 (zh) | 防止攻击的网络的配置方法、防止攻击的方法和装置 | |
| US7818795B1 (en) | Per-port protection against denial-of-service and distributed denial-of-service attacks | |
| CN111526064A (zh) | 一种数据流处理方法、装置、电子设备及存储介质 | |
| CN101883054B (zh) | 组播报文处理方法、装置和设备 | |
| CN101106518B (zh) | 为中央处理器提供负载保护的拒绝服务方法 | |
| CN100454895C (zh) | 一种通过报文处理提高网络安全性的方法 | |
| CN107612937A (zh) | 一种sdn网络下对dhcp泛洪攻击的检测与防御方法 | |
| CN102045302A (zh) | 网络攻击的防范方法、业务控制节点及接入节点 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 07817085 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2007817085 Country of ref document: EP |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |