RU2580808C2 - Method for dynamic filtration of internet protocol datagrams - Google Patents
Method for dynamic filtration of internet protocol datagrams Download PDFInfo
- Publication number
- RU2580808C2 RU2580808C2 RU2013113595/08A RU2013113595A RU2580808C2 RU 2580808 C2 RU2580808 C2 RU 2580808C2 RU 2013113595/08 A RU2013113595/08 A RU 2013113595/08A RU 2013113595 A RU2013113595 A RU 2013113595A RU 2580808 C2 RU2580808 C2 RU 2580808C2
- Authority
- RU
- Russia
- Prior art keywords
- filtering
- datagram
- fragments
- internet protocol
- packet
- Prior art date
Links
- 238000001914 filtration Methods 0.000 title claims abstract description 84
- 238000000034 method Methods 0.000 title claims description 23
- 239000012634 fragment Substances 0.000 claims description 52
- 230000008569 process Effects 0.000 claims description 9
- 239000000126 substance Substances 0.000 abstract 1
- 230000008859 change Effects 0.000 description 4
- 241001505262 Enterobacteria phage Pol Species 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000002789 length control Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/14—Charging, metering or billing arrangements for data wireline or wireless communications
- H04L12/141—Indication of costs
- H04L12/1414—Indication of costs in real-time
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/14—Charging, metering or billing arrangements for data wireline or wireless communications
- H04L12/1432—Metric aspects
- H04L12/1439—Metric aspects time-based
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/166—IP fragmentation; TCP segmentation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
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)
Abstract
Description
Изобретение относится к области электросвязи и может быть использовано в сетях передачи данных для фильтрации и маршрутизации фрагментированных дейтаграмм Интернет-протокола.The invention relates to the field of telecommunications and can be used in data networks for filtering and routing fragmented datagrams of the Internet Protocol.
Интернет-протокол (IP) является протоколом, который поддерживает передачу блоков данных (пакетов), называемых дейтаграммами, от источников к получателям в сети передачи данных с коммутацией пакетов. Источники и получатели являются хост-компьютерами, которые идентифицируются посредством IР-адресов фиксированной длины. Чтобы передать данные получателю, источник формирует дейтаграмму с IР-заголовком и частью, соответствующей полезной нагрузке. Источник затем отправляет дейтаграмму как IР-пакет по направлению к получателю на основе информации о маршрутизации, которую источник имеет для получателя.Internet Protocol (IP) is a protocol that supports the transfer of blocks of data (packets), called datagrams, from sources to receivers in a packet-switched data network. Sources and recipients are host computers that are identified by fixed-length IP addresses. To transfer data to the recipient, the source generates a datagram with an IP header and a part corresponding to the payload. The source then sends the datagram as an IP packet towards the receiver based on the routing information that the source has for the receiver.
Стандартный фильтр IР-дейтаграмм (узел фильтрации) представляет собой отдельный сетевой узел с работающим на нем программным обеспечением (межсетевой экран, маршрутизатор), который сконфигурирован таким образом, чтобы фильтровать входящие и исходящие блоки данных. Правила настройки IР-фильтров могут быть разрешающие, запрещающие или иные (управление маршрутом, ограничения скорости и др.). Фильтрация IР-трафика осуществляется на основе информации, содержащейся в заголовках пакетов.The standard IP-datagram filter (filtering node) is a separate network node with the software running on it (firewall, router), which is configured to filter incoming and outgoing data blocks. The rules for setting IP filters can be allowing, prohibiting, or others (route control, speed limits, etc.). IP traffic filtering is based on the information contained in the packet headers.
Известны способы фильтрации дейтаграмм Интернет-протокола (Мафтик, С.Механизмы защиты в сетях ЭВМ / С.Мафтик: пер. с англ. - М.: Мир, 1993. - 216 с.; Столингс В. Основы защиты сетей / В. Столингс: пер. с англ. - М.: Издательский дом «Вильямс», 2002. - 304 с.), в которых основным критерием фильтрации являются IР-адреса и номера портов TCPIUDP отправителя и получателя. Использование информации, содержащейся в TCP- и IР-заголовках дейтаграмм на современном этапе, становится все менее эффективным критерием фильтрации, потому как злоумышленник при организации, например, DDoS-атаки может создать заголовок, который удовлетворяет разрешающим правилам фильтрации.Known methods for filtering datagrams of the Internet protocol (Maftik, C. Protection mechanisms in computer networks / S. Maftik: transl. From English. - M .: Mir, 1993. - 216 p .; Stolings V. Fundamentals of network protection / V. Stolings : transl. from English - M.: Williams Publishing House, 2002. - 304 p.), in which the main filtering criteria are IP addresses and TCPIUDP port numbers of the sender and receiver. Using the information contained in the TCP and IP headers of datagrams at the present stage is becoming an increasingly less effective filtering criterion, because an attacker, for example, when organizing a DDoS attack, can create a header that satisfies the resolving filtering rules.
Известен способ классификации фрагментированных IР-дейтаграмм (патент US 2003126272 А1 от 03.07.2003 г.), согласно которому в качестве критерия классификации (фильтрации) кроме информации в заголовках дейтаграмм использованы данные других полей дейтаграмм Интернет-протокола. Однако применение для фильтрации значений времени жизни пакета (TTL) достаточно сложное на практике и ограничено количеством сетевых узлов на маршруте, а данных о типе обслуживания (ToS) является эффективным лишь временно, пока сегменты данного поля не будут корректно заполнены злоумышленником. Параметр ToS занимает один байт, поэтому вероятность его подбора злоумышленником составляет n/28, где n - количество попыток подбора.There is a method for classifying fragmented IP datagrams (patent US 2003126272 A1 dated 07/03/2003), according to which, in addition to information in the headers of the datagrams, data of other fields of the Internet protocol datagrams are used as a classification criterion (filtering). However, the application for filtering packet lifetimes (TTL) is quite difficult in practice and is limited by the number of network nodes on the route, and type of service (ToS) data is only effective temporarily until the segments of this field are correctly filled by the attacker. The ToS parameter occupies one byte, so the probability of its selection by an attacker is n / 2 8 , where n is the number of attempts to match.
Наиболее близким по технической сущности к заявляемому способу и выбранным в качестве прототипа является способ фильтрации и маршрутизации фрагментированных дейтаграмм в сети передачи данных (Патент РФ 2363108 от 29.06.2005), в котором идентифицируют по меньшей мере один параметр фильтрации для дейтаграммы Интернет-протокола (IP), отправленной как множество фрагментов; сохраняют один или более принятых фрагментов дейтаграммы Интернет-протокола (IP) в качестве сохраненных фрагментов; получают упомянутый по меньшей мере один параметр фильтрации из упомянутых одного или более принятых фрагментов; определяют результат фильтрации для дейтаграммы Интернет-протокола (IP) на основе упомянутого по меньшей мере одного параметра фильтрации, причем результат фильтрации определяют до того как будут приняты все фрагменты дейтаграммы Интернет-протокола (IP), обрабатывают сохраненные фрагменты на основе результата фильтрации; и обрабатывают дополнительные фрагменты, принятые после того как результат фильтрации определен на основе упомянутого по меньшей мере одного параметра фильтрации, при этом упомянутый по меньшей мере один параметр фильтрации для IР-дейтаграммы содержит IР-адрес источника, IР-адрес получателя, маску подсети, порт источника, порт получателя, диапазон портов источника, диапазон портов получателя, номер протокола, тип обслуживания для IP версии 4 (IPv4), класс трафика для IP версии 6 (IPv6), метку потока для IPv6, индекс параметра безопасности IPSec (SPI) или их комбинацию.The closest in technical essence to the claimed method and selected as a prototype is a method for filtering and routing fragmented datagrams in a data network (RF Patent 2363108 of 06/29/2005), in which at least one filter parameter for the Internet protocol datagram is identified (IP ) sent as multiple fragments; storing one or more received fragments of the Internet Protocol (IP) datagram as stored fragments; obtaining said at least one filter parameter from said one or more received fragments; determining a filtering result for the Internet Protocol (IP) datagram based on the at least one filtering parameter, the filtering result being determined before all fragments of the Internet Protocol (IP) datagram are received, stored fragments are processed based on the filtering result; and processing additional fragments received after the filtering result is determined based on the at least one filtering parameter, said at least one filtering parameter for the IP datagram containing the IP address of the source, IP address of the recipient, subnet mask, port source, destination port, source port range, destination port range, protocol number, type of service for IP version 4 (IPv4), traffic class for IP version 6 (IPv6), stream label for IPv6, IPSec security parameter index (SPI), or combination.
Использование упомянутых параметров фильтрации на современном этапе становится все менее и менее эффективным критерием, потому как большинство злоумышленников при организации DDOiS'-атаки корректно их воссоздают.Вероятность подбора злоумышленником параметров фильтрации для IPv4, например, составляет:The use of the mentioned filtering parameters at the present stage is becoming less and less effective criterion, because most attackers during the organization of DDOiS' attacks correctly recreate them. The probability of an attacker choosing filtering parameters for IPv4, for example, is:
Pподб=Pадр.ист·Pадр.пол·Pмаск·Pп.ист·Pп.пол·Pдиап.ист·Pдиап.пол·Pпрот·ToS,P = P knocked adr.ist adr.pol · P · P · P masks p.ist p.pol · P · P · P diap.ist diap.pol prot · P · ToS,
где Радр.ист - вероятность подбора IР-адрес источника,where R addr. is the probability of selection of the IP address of the source,
Pадр.пол - вероятность подбора IР-адрес получателя,P addr . Floor - probability of selection IP address of the recipient,
Рмаск - вероятность подбора маски подсети,P masks - the probability of selecting a subnet mask,
Рп.пист - вероятность подбора порта отправителя,P pist - the probability of selecting the sender port,
Рп.пол - вероятность подбора порта получателя,R p.pol - the probability of selecting the port of the recipient,
Pдиап.ист - вероятность подбора диапазона портов источника,P diap.ist - the probability of selecting a range of source ports,
Рдиап.пол - вероятность подбора диапазона портов получателя,P diap.field - the probability of selecting the range of ports of the receiver,
Рпрот - вероятность подбора номера протокола,R prot - the probability of selecting a protocol number,
PToS - вероятность подбора типа обслуживания.P ToS - the probability of selecting the type of service.
Причем если какой-либо параметр фильтрации не определен, то соответствующая ему вероятность подбора равна единице.Moreover, if any filtering parameter is not defined, then the corresponding probability of selection is equal to unity.
DDoS (Distributed Denial of Service - распределенный отказ от обслуживания) - тип сетевой атаки, основанной на небезграничности ресурсов атакуемой службы, к которой организуется масса запросов, с которыми она заведомо не сможет справиться, и будет вынуждена отказать в обслуживании (либо заставить ждать неприемлемо долго).DDoS (Distributed Denial of Service) is a type of network attack based on the unrestricted resources of the attacked service, to which a host of requests will be organized, which it obviously will not be able to handle, and will be forced to refuse service (or make waiting unacceptably long )
Задачей изобретения является разработка способа динамической фильтрации дейтаграмм Интернет-протокола, позволяющего повысить эффективность системы защиты от DDoS-атак за счет снижения вероятности подбора параметров фильтрации злоумышленником.The objective of the invention is to develop a method for dynamic filtering of Internet protocol datagrams, which allows to increase the effectiveness of the protection system against DDoS attacks by reducing the likelihood of an attacker selecting filtering parameters.
В заявленном способе эта задача решается следующим образом. В способе динамической фильтрации дейтаграмм Интернет-протокола идентифицируют по меньшей мере один параметр фильтрации для дейтаграммы Интернет-протокола (IP), отправленной как множество фрагментов. Сохраняют один или более принятых фрагментов дейтаграммы Интернет-протокола (IP) в качестве сохраненных фрагментов. Получают упомянутый по меньшей мере один параметр фильтрации из упомянутых одного или более принятых фрагментов. Определяют результат фильтрации для дейтаграммы Интернет-протокола (IP) на основе упомянутого по меньшей мере одного параметра фильтрации, причем результат фильтрации определяют до того как будут приняты все фрагменты дейтаграммы Интернет-протокола (IP). Обрабатывают сохраненные фрагменты на основе результата фильтрации и обрабатывают дополнительные фрагменты, принятые после того как результат фильтрации определен на основе упомянутого по меньшей мере одного параметра фильтрации. При этом упомянутый по меньшей мере один параметр фильтрации для IP-дейтаграммы содержит IP-адрес источника, IP-адрес получателя, маску подсети, порт источника, порт получателя, диапазон портов источника, диапазон портов получателя, номер протокола, тип обслуживания для IP версии 4 (IPv4), класс трафика для IP версии 6 (IPv6), метку потока для IPv6, индекс параметра безопасности IPSec (SPI), общую длину IP-дейтаграммы или их комбинацию. Упомянутые критерии фильтрации в упомянутом по меньшей мере одном параметре фильтрации для IP-дейтаграммы преобразуются псевдослучайным образом через временные интервалы, изменяющиеся независимо по псевдослучайному закону.In the claimed method, this problem is solved as follows. In the method for dynamically filtering Internet Protocol datagrams, at least one filtering parameter is identified for the Internet Protocol (IP) datagram sent as multiple fragments. Save one or more received fragments of the Internet Protocol (IP) datagram as stored fragments. The at least one filter parameter is obtained from said one or more received fragments. The filtering result for the Internet Protocol (IP) datagram is determined based on the at least one filtering parameter, the filtering result being determined before all fragments of the Internet Protocol (IP) datagram are received. The stored fragments are processed based on the filtering result and the additional fragments received after the filtering result is determined based on the at least one filtering parameter are processed. At the same time, the at least one filtering parameter for the IP datagram contains the source IP address, destination IP address, subnet mask, source port, destination port, source port range, destination port range, protocol number, type of service for IP version 4 (IPv4), traffic class for IP version 6 (IPv6), stream label for IPv6, IPSec security parameter index (SPI), total IP datagram length, or a combination thereof. The mentioned filtering criteria in said at least one filtering parameter for IP datagrams are transformed in a pseudo-random manner at time intervals that vary independently according to the pseudo-random law.
Новая совокупность существенных признаков позволяет достичь указанного технического результата за счет использования псевдослучайных зависимостей критериев параметра фильтрации IP-дейтаграммы совместно с другими параметрами фильтрации (фиг. 1).A new set of essential features allows you to achieve the specified technical result through the use of pseudo-random dependencies of the filtering parameters of the IP datagram in conjunction with other filtering parameters (Fig. 1).
Например, поле «общая длина» IP-дейтаграммы занимает два байта и означает общую длину пакета с учетом заголовка и поля данных. Максимальная длина пакета ограничена разрядностью поля, определяющего эту величину. При передаче по сетям различного типа длина дейтаграммы выбирается с учетом максимальной длины пакета протокола нижнего уровня. Если это кадры Ethernet, то выбираются пакеты с максимальной длиной в 1500 байт, умещающиеся в поле данных кадра Ethernet. В стандарте предусмотрено, что все сетевые узлы должны быть готовы принимать пакеты длиной до 576 байт. При организации и настройке параметров соединения общую длину IP-дейтаграммы устанавливает администратор сети, который может задавать не одно строго определенное значение, а диапазон возможных значений, в пределах которого в соответствии с псевдослучайным алгоритмом управления длина пакета в правилах фильтрации будет изменять свое значение. Аналогичные действия можно определить и для других полей IP-дейтаграммы.For example, the “total length” field of an IP datagram occupies two bytes and means the total packet length, taking into account the header and data field. The maximum packet length is limited by the bit depth of the field determining this value. When transmitting over networks of various types, the length of the datagram is selected taking into account the maximum length of the packet of the lower level protocol. If these are Ethernet frames, then packets with a maximum length of 1500 bytes fit in the data field of the Ethernet frame are selected. The standard provides that all network nodes should be ready to receive packets up to 576 bytes in length. When organizing and configuring the connection parameters, the total length of the IP datagram is set by the network administrator, who can set not only one strictly defined value, but a range of possible values, within which, in accordance with the pseudo-random control algorithm, the packet length in the filtering rules will change its value. Similar actions can be defined for other fields of the IP datagram.
Проведенный анализ уровня техники позволил установить, что аналоги, характеризующиеся совокупностью признаков, тождественных всем признакам заявленного способа динамической фильтрации дейтаграмм Интернет-протокола, отсутствуют. Следовательно, заявленное изобретение соответствует условию патентоспособности «новизна».The analysis of the prior art made it possible to establish that there are no analogues that are characterized by a combination of features identical to all the features of the claimed method for dynamic filtering of Internet protocol datagrams. Therefore, the claimed invention meets the condition of patentability "novelty."
Результаты поиска известных решений в данной и смежных областях техники с целью выявления признаков, совпадающих с отличительными от прототипа признаками заявленного объекта, показали, что они не следуют явным образом из уровня техники. Из уровня техники также не выявлена известность влияния предусматриваемых существенными признаками заявленного изобретения преобразований на достижение указанного технического результата. Следовательно, заявленное изобретение соответствует условию патентоспособности «изобретательский уровень».Search results for known solutions in this and related fields of technology in order to identify features that match the distinctive features of the claimed object from the prototype showed that they do not follow explicitly from the prior art. The prior art also did not reveal the popularity of the impact provided for by the essential features of the claimed invention, the transformations to achieve the specified technical result. Therefore, the claimed invention meets the condition of patentability "inventive step".
Заявленное изобретение поясняется следующими фигурами:The claimed invention is illustrated by the following figures:
фиг.1 - IР-пакет для дейтаграммы;figure 1 - IP packet for the datagram;
фиг.2 - процесс, выполняемый сетевым узлом для фильтрации фрагментированной дейтаграммы и маршрутизации ее фрагментов;figure 2 is a process performed by a network node for filtering a fragmented datagram and routing its fragments;
фиг.3 - функциональная схема организации защиты от DDoS-атак FTW-маршрутизаторов согласно заявленному способу;figure 3 is a functional diagram of the organization of protection against DDoS attacks of FTW routers according to the claimed method;
фиг.4 - набор правил фильтрации по заголовку IР-пакета и длине пакета;4 is a set of filtering rules for the header of the IP packet and the length of the packet;
фиг.5 - функциональная схема динамического фильтра IР-трафика.5 is a functional diagram of a dynamic filter of IP traffic.
Реализация заявленного способа поясняется блок-схемой процесса, выполняемого сетевым узлом для фильтрации фрагментированной дейтаграммы и маршрутизации ее фрагментов. Фрагментированная дейтаграмма составлена из множества фрагментов, и каждый фрагмент отправляется как один IР-пакет (фиг.2). Таким образом, для фрагментированной дейтаграммы фрагменты и IР-пакеты являются терминами-синонимами.The implementation of the claimed method is illustrated by a flowchart of a process performed by a network node for filtering a fragmented datagram and routing its fragments. A fragmented datagram is composed of many fragments, and each fragment is sent as one IP packet (figure 2). Thus, for a fragmented datagram, fragments and IP packets are synonymous terms.
Изначально узел фильтрации принимает IР-пакет (этап 201). Затем определяет, является ли IР-пакет фрагментированной дейтаграммой (этап 203),например, посредством проверки бита MF и поля смещения фрагмента в IР-заголовке IР-пакета. IР-пакет является нефрагментированной дейтаграммой, если поле смещения фрагмента установлено в «0», и бит MF установлен в «0». Если IР-пакет является нефрагментированной дейтаграммой (на этапе 203 получен ответ «нет»), то узел применяет один или более фильтров к IР-пакету и обрабатывает и/или пересылает IР-пакет на основе результата фильтрации (этап 202). Затем узел фильтрации возвращается на этап 201, чтобы обработать следующий IР-пакет.Initially, the filtering node receives the IP packet (step 201). It then determines whether the IP packet is a fragmented datagram (step 203), for example, by checking the MF bit and the fragment offset field in the IP header of the IP packet. An IP packet is an unfragmented datagram if the fragment offset field is set to “0” and the MF bit is set to “0”. If the IP packet is an unfragmented datagram (the answer “no” is received at step 203), then the node applies one or more filters to the IP packet and processes and / or forwards the IP packet based on the filtering result (step 202). Then, the filtering node returns to step 201 to process the next IP packet.
Если текущий IР-пакет является фрагментированной дейтаграммой, как определено на этапе 203, то узел фильтрации определяет, является ли этот IР-пакет первым принятым для дейтаграммы (этап 206), посредством:If the current IP packet is a fragmented datagram, as determined in
1) получения идентификатора дейтаграммы, например, как сцепление значений идентификации, протокола, адреса источника и адреса получателя в IР-заголовке IР-пакета;1) obtaining a datagram identifier, for example, as a concatenation of identification values, protocol, source address and recipient address in the IP header of the IP packet;
2) поиска записей таблицы маршрутизации для идентификатора этой дейтаграммы;2) search for routing table entries for the identifier of this datagram;
3) указания текущего IР-пакета в качестве первого принятого фрагмента, если идентификатор дейтаграммы не найден в каком-либо из элементов таблицы маршрутизации.3) indicate the current IP packet as the first received fragment, if the datagram identifier is not found in any of the elements of the routing table.
Если текущий IР-пакет является первым принятым фрагментом, то узел фильтрации создает новую запись таблицы маршрутизации для дейтаграммы, инициализирует поля новой записи таблицы маршрутизации и запускает таймер для дейтаграммы (этап 205). Запись таблицы маршрутизации для дейтаграммы индексируется по идентификатору дейтаграммы. Запись таблицы маршрутизации включает в себя указатель, который указывает на местоположение памяти фрагментов, используемое для того, чтобы хранить фрагменты дейтаграммы. Узел фильтрации затем переходит на этап 208.If the current IP packet is the first received fragment, then the filtering node creates a new routing table entry for the datagram, initializes the fields of the new routing table entry, and starts the timer for the datagram (step 205). The routing table entry for the datagram is indexed by the datagram identifier. The routing table entry includes a pointer that indicates the location of the fragment memory used to store fragments of the datagram. The filtering node then proceeds to step 208.
Если текущий IР-пакет не является первым принятым фрагментом, как определено на этапе 206, то узел фильтрации определяет, доступен ли результат фильтрации для дейтаграммы в записи таблицы маршрутизации для дейтаграммы (этап 207). Если результат фильтрации существует, то узел обрабатывает/пересылает IР-пакет в соответствии с результатом фильтрации (этап 209) и затем переходит на этап 211. В противном случае, если результат фильтрации недоступен, то узел определяет, были ли получены все параметры фильтрации для дейтаграммы из текущего IР-пакета и приняты ли уже все IР-пакеты, которые также являются фрагментами этой дейтаграммы (этап 432). Если все параметры фильтрации не были получены, то узел выделяет буфер в памяти фрагментов для текущего IР-пакета и сохраняет IР-пакет в буфере (этап 215). Узел затем возвращается на этап 201, чтобы обработать следующий IР-пакет. Иначе, если все параметры фильтрации были получены, то узел применяет фильтры в отношении параметров фильтрации, получает результат фильтрации для дейтаграммы и сохраняет результат фильтрации в записи таблицы маршрутизации, созданной для дейтаграммы (этап 210). Узел затем обрабатывает/пересылает текущий IР-пакет, так же как и все уже принятые IР-пакеты, которые также являются фрагментом этой дейтаграммы и сохранены в памяти фрагментов, в соответствии с результатом фильтрации (этап 212). Узел затем переходит к этапу 211.If the current IP packet is not the first received fragment, as determined at
Для варианта осуществления, показанного на фиг.2, узел фильтрации также отслеживает то, какие фрагменты были приняты для дейтаграммы, и обновляет эту информацию всякий раз, когда для дейтаграммы принимается новый фрагмент (этап 211). Узел может выполнять эту регистрацию на основе смещения фрагмента каждого фрагмента (которое получается из поля смещения фрагмента) и размера полезной нагрузки каждого фрагмента (который получается на основе полей IHL и общей длины). Узел затем определяет, были ли приняты все фрагменты дейтаграммы на основе обновленной информации о фрагменте (этап 213). Целая дейтаграмма принимается, если:For the embodiment shown in FIG. 2, the filtering node also keeps track of which fragments were received for the datagram, and updates this information whenever a new fragment is received for the datagram (step 211). A node can perform this registration based on the fragment offset of each fragment (which is obtained from the fragment offset field) and the payload size of each fragment (which is obtained based on the IHL fields and the total length). The node then determines whether all fragments of the datagram have been received based on the updated fragment information (step 213). An entire datagram is accepted if:
1) был принят последний фрагмент дейтаграммы (последний фрагмент имеет бит MF, установленный в «0»);1) the last fragment of the datagram was received (the last fragment has the MF bit set to "0");
2) все другие фрагменты дейтаграммы были также приняты (что может быть определено на основе смещения фрагмента и размера полезной нагрузки каждого принятого фрагмента).2) all other fragments of the datagram were also accepted (which can be determined based on the fragment offset and the payload size of each received fragment).
Если целая дейтаграмма была принята, то узел удаляет запись таблицы маршрутизации для дейтаграммы и удаляет все фрагменты дейтаграммы из памяти фрагментов (этап 214). С этапов 213 и 214 узел возвращается на этап 201, чтобы обработать следующий IР-пакет.If the whole datagram was accepted, then the node deletes the routing table entry for the datagram and deletes all fragments of the datagram from the fragment memory (step 214). From
Использование заявленного способа для организации защиты от DDoS-атак показано на фиг.3.Using the claimed method for organizing protection against DDoS attacks is shown in figure 3.
Устройство фильтрации, выполненное на основе заявленного способа, располагается перед VРN-маршрутизатором для его непосредственной защиты. В устройстве фильтрации установлены правила, на основе которых будет осуществляться прохождение IР-пакетов через устройство. IР-пакеты, структура которых соответствует установленным правилам, будут проходить через данное устройство, а остальные будут отфильтровываться.A filtering device based on the claimed method is located in front of the VPN router for its immediate protection. The filtering device has established rules based on which IP packets will pass through the device. IP packets whose structure complies with the established rules will go through this device, and the rest will be filtered out.
Для его проверки было осуществлено имитационное моделирование на трех ПЭВМ с использованием среды программирования С#. Первая ПЭВМ имитировала узел отправителя (источник, VPN-маршрутизатор 1), вторая - узел получателя (VPN-маршрутизатор 2). Между данными узлами был настроен PTW-туннель. Третья ПЭВМ реализовывала источник DDoS-атак. Программными средствами на первой и второй ПЭВМ был реализован фильтр дейтаграмм с изменяемыми параметрами фильтрации. При его настройке устанавливались правила, на основе которых осуществлялось прохождение пакетов через данное устройство.To check it, simulation was carried out on three PCs using the C # programming environment. The first PC simulated the sender node (source, VPN router 1), the second - the receiver node (VPN router 2). A PTW tunnel has been configured between these nodes. The third PC implemented a source of DDoS attacks. Software tools on the first and second PCs implemented a datagram filter with variable filtering parameters. When configuring it, rules were established on the basis of which packets passed through this device.
Пример настройки фильтра дейтаграмм представлен на фиг.4.An example of a datagram filter setting is shown in FIG. 4.
Первое правило позволяет пропускать пакеты TCP от источника 129.6.48.254, имеющего любой порт отправителя, к адресу 123.4.5.92, если соединение устанавливается с портом 1024, и длина пакета должна составлять 150 байт. Второе правило запрещает все остальные пакеты.The first rule allows TCP packets from the source 129.6.48.254, which has any sender port, to pass to the address 123.4.5.92 if the connection is established with
На один из портов поступает IР-пакет, обозначим его Pi. Устройство фильтрации осуществляет анализ, т.е. сравнение значений полей пакета со значениями указанными в правилах фильтрации. Вначале проверяется информация, содержащаяся в заголовке пакета Рi IР-адреса отправителя и получателя должны соответствовать IР-адресам указанных в правилах фильтрации (исходя из примера, должны быть 129.6.48.254 и 123.4.5.92), а также должно выполняться условие ni=Nпорт=1024, т.е. значение в поле «порт получателя» пакета Рi равно указанному в правилах значению, исходя из примера - 1024. Даже если эти правила выполняются, нельзя сделать правильный вывод о происхождении пакета (пакет VPN или DDoS-атаки), т.к. злоумышленник с вероятностью Рподб может корректно заполнить заголовок, указав правильные значения IР-адресов и номеров портов отправителя и получателя. Поэтому принятый IР-пакет анализируется согласно следующему критерию, указанному в правилах, по длине пакета. Если выполняется последнее условие, Li=Lп, т.е. длина принятого пакета Рi совпадет со значением длины пакета, указанным в правилах фильтрации, то пакет пропускается через устройство фильтрации. Если же правило не выполняется, то принятый IР-пакет отбрасывается (фиг.5).An IP packet arrives at one of the ports, we denote it by P i . The filtering device performs an analysis, i.e. comparing the values of the package fields with the values specified in the filtering rules. First, the information contained in the packet header Р i is checked. The IP addresses of the sender and recipient must correspond to the IP addresses specified in the filtering rules (based on the example, 129.6.48.254 and 123.4.5.92 must be met), and the condition n i = N port = 1024, i.e. the value in the field “receiver port” of the packet Р i is equal to the value specified in the rules, based on the example - 1024. Even if these rules are followed, it is impossible to draw a correct conclusion about the origin of the packet (VPN packet or DDoS attack), because an attacker with a probability of P sub can correctly fill in the header, indicating the correct values of IP addresses and port numbers of the sender and receiver. Therefore, the received IP packet is analyzed according to the following criteria specified in the rules, according to the length of the packet. If the last condition is satisfied, L i = L p , i.e. the length of the received packet P i coincides with the value of the packet length specified in the filtering rules, then the packet is passed through the filtering device. If the rule is not fulfilled, then the received IP packet is discarded (Fig. 5).
Вероятность совпадения длины принятого пакета со значением, указанным в правилах фильтрации, очень мала. Для кадра Ethernet, например, значение этого параметра может быть любым в промежутке от 1 до 576 байт, а вероятность подбора длины пакета злоумышленником
При продолжительной атаке и при условии, что DDoS-атака является управляемой, злоумышленник, имея значительные ресурсы и соответствующий уровень подготовки, имеет возможность подстроиться под значение длины пакета, которое используется как критерий фильтрации.In case of a prolonged attack and provided that the DDoS attack is manageable, the attacker, having significant resources and an appropriate level of training, is able to adapt to the packet length value, which is used as a filtering criterion.
Для повышения эффективности работы этой системы вводится группа дополнительных правил фильтрации. Например, параметр общая длина пакета становится функцией от времени Lп(t) и может изменять свое значение согласно заранее определенному алгоритму управления длиной пакета. При настройке устройства фильтрации администратор сети может задавать не одно строго определенное значение, а диапазон значений. К примеру, в соответствии с алгоритмом управления длина пакета в правилах фильтрации может изменять свое значение в пределах заданного диапазона через некоторый интервал времени.To increase the efficiency of this system, a group of additional filtering rules is introduced. For example, the parameter total packet length becomes a function of time L p (t) and can change its value according to a predefined packet length control algorithm. When configuring a filtering device, the network administrator can set not only one strictly defined value, but a range of values. For example, in accordance with the control algorithm, the packet length in the filtering rules can change its value within a given range after a certain time interval.
Преимуществами такой системы защиты является то, что злоумышленнику потребуется большое количество ресурсов и времени, чтобы организовать атаку, которая будет отвечать всем правилам фильтрации. К тому же DDoS-атака должна быть управляемой, что демаскирует местонахождение злоумышленника.The advantages of such a protection system is that an attacker will need a large amount of resources and time to organize an attack that will meet all filtering rules. In addition, the DDoS attack must be manageable, which unmasks the location of the attacker.
Недостатком данной системы является сложность практической реализации синхронизации устройств фильтрации. Во избежание этой проблемы алгоритм управления длиной пакета можно реализовать таким образом, что значение длины пакета будет изменяться после того как будет передано и принято определенное в алгоритме количество информации.The disadvantage of this system is the complexity of the practical implementation of the synchronization of filtering devices. To avoid this problem, the packet length control algorithm can be implemented in such a way that the value of the packet length will change after a certain amount of information is transmitted and received in the algorithm.
В качестве динамического критерия фильтрации (т.е. изменяющегося во времени) можно установить не один параметр, а несколько. Например, в качестве изменяющегося во времени критерия можно также использовать номера портов отправителя и получателя, потому как они устанавливаются администратором при настройке виртуальной частной сети. Таким образом, вероятность подбора злоумышленником параметров динамической фильтрации составляет:As a dynamic filtering criterion (i.e., changing over time), it is possible to set not one parameter, but several. For example, as a time-varying criterion, you can also use the port numbers of the sender and receiver, because they are set by the administrator when setting up a virtual private network. Thus, the probability of an attacker selecting dynamic filtering parameters is:
где Рподб - вероятность подбора статических параметров фильтрации,where P subb is the probability of selecting static filtering parameters,
Защита от DDoS-атак, использующая параметр общая длина IP-пакета и другие, значения которых являются динамическими, значительно увеличивает эффективность системы защиты.Protection against DDoS attacks, using the parameter the total length of the IP packet and others whose values are dynamic, significantly increases the effectiveness of the protection system.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2013113595/08A RU2580808C2 (en) | 2013-03-26 | 2013-03-26 | Method for dynamic filtration of internet protocol datagrams |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2013113595/08A RU2580808C2 (en) | 2013-03-26 | 2013-03-26 | Method for dynamic filtration of internet protocol datagrams |
Publications (2)
Publication Number | Publication Date |
---|---|
RU2013113595A RU2013113595A (en) | 2014-10-10 |
RU2580808C2 true RU2580808C2 (en) | 2016-04-10 |
Family
ID=53379662
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2013113595/08A RU2580808C2 (en) | 2013-03-26 | 2013-03-26 | Method for dynamic filtration of internet protocol datagrams |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2580808C2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2649290C1 (en) * | 2017-04-28 | 2018-03-30 | Акционерное общество "Лаборатория Касперского" | SYSTEM AND METHOD OF TRAFFIC FILTRATION AT DDoS-ATTACK DETECTION |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2363108C2 (en) * | 2004-06-29 | 2009-07-27 | Квэлкомм Инкорпорейтед | Filtration and routing of fragmented datagrams in data transfer network |
-
2013
- 2013-03-26 RU RU2013113595/08A patent/RU2580808C2/en not_active IP Right Cessation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2363108C2 (en) * | 2004-06-29 | 2009-07-27 | Квэлкомм Инкорпорейтед | Filtration and routing of fragmented datagrams in data transfer network |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
RU2649290C1 (en) * | 2017-04-28 | 2018-03-30 | Акционерное общество "Лаборатория Касперского" | SYSTEM AND METHOD OF TRAFFIC FILTRATION AT DDoS-ATTACK DETECTION |
Also Published As
Publication number | Publication date |
---|---|
RU2013113595A (en) | 2014-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10084713B2 (en) | Protocol type identification method and apparatus | |
US10148573B2 (en) | Packet processing method, node, and system | |
US7665128B2 (en) | Method and apparatus for reducing firewall rules | |
CN109587167B (en) | Message processing method and device | |
WO2017137004A1 (en) | Method and apparatus for service function forwarding in a service domain | |
US9882904B2 (en) | System and method for filtering network traffic | |
US11411986B2 (en) | Method and data packet cleaning system for screening data packets received at a service infrastructure | |
CN108234473B (en) | Message anti-attack method and device | |
CN107690004B (en) | Method and device for processing address resolution protocol message | |
CN107046506A (en) | A packet processing method, flow classifier and service function example | |
CN107646187A (en) | Application ID cache | |
Yao et al. | VASE: Filtering IP spoofing traffic with agility | |
CN110730143A (en) | Fragment data packet processing method and device | |
WO2017050346A1 (en) | Intrusion prevention | |
CN105847072A (en) | Method and device for detecting transmission path of data stream in software defined network | |
CN106789892B (en) | Universal method for defending distributed denial of service attack for cloud platform | |
CN107306255A (en) | Defend flow attacking method, the presets list generation method, device and cleaning equipment | |
RU2580808C2 (en) | Method for dynamic filtration of internet protocol datagrams | |
EP3073701B1 (en) | Network protection entity and method for protecting a communication network against fraud messages | |
CN110120956B (en) | Message processing method and device based on virtual firewall | |
RU2469390C1 (en) | Method of protecting computer networks from unauthorised scanning and blocking of network services (versions) | |
CN109104437B (en) | Routing domain, method and device for processing IP message in routing domain | |
US7920564B1 (en) | Differential services support for control traffic from privileged nodes in IP networks | |
US20130133060A1 (en) | Communication system, control device and control program | |
Barokar et al. | Identification of the Real Source of DDOS Attack by FDPM in IP Traceback System |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | The patent is invalid due to non-payment of fees |
Effective date: 20160522 |