Nothing Special   »   [go: up one dir, main page]

RU2580808C2 - Method for dynamic filtration of internet protocol datagrams - Google Patents

Method for dynamic filtration of internet protocol datagrams Download PDF

Info

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
Application number
RU2013113595/08A
Other languages
Russian (ru)
Other versions
RU2013113595A (en
Inventor
Евгений Иванович Ларкин
Александр Александрович Слышев
Александр Викторович Кутузов
Юрий Борисович Иванов
Олег Олегович Басов
Original Assignee
Государственное казенное образовательное учреждение высшего профессионального образования Академия Федеральной службы охраны Российской Федерации (Академия ФСО России)
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Государственное казенное образовательное учреждение высшего профессионального образования Академия Федеральной службы охраны Российской Федерации (Академия ФСО России) filed Critical Государственное казенное образовательное учреждение высшего профессионального образования Академия Федеральной службы охраны Российской Федерации (Академия ФСО России)
Priority to RU2013113595/08A priority Critical patent/RU2580808C2/en
Publication of RU2013113595A publication Critical patent/RU2013113595A/en
Application granted granted Critical
Publication of RU2580808C2 publication Critical patent/RU2580808C2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/14Charging, metering or billing arrangements for data wireline or wireless communications
    • H04L12/141Indication of costs
    • H04L12/1414Indication of costs in real-time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/14Charging, metering or billing arrangements for data wireline or wireless communications
    • H04L12/1432Metric aspects
    • H04L12/1439Metric aspects time-based
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/166IP fragmentation; TCP segmentation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network 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

FIELD: telecommunications.
SUBSTANCE: invention relates to communication and can be used in data networks for filtration and routing of Internet protocol fragmented datagrams. Said technical result is achieved by using time-varying filtration criterion, which is at least one of following parameters: IP-address of source, IP-address of recipient, subnet mask, source port, recipient port, range of source ports, range of recipient ports, protocol number, type of service for IP of version 4 (IPv4), class of traffic for IP of version 6 (IPv6), mark flow for IPv6, IPSec security parameter index (SPI), total length of IP datagrams or their combination.
EFFECT: technical result consists in improvement of efficiency of protection against DDoS attacks.
1 cl, 5 dwg

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 step 203, then the filtering node determines whether this IP packet is the first received for the datagram (step 206) by:

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 step 206, then the filtering node determines whether the filter result is available for the datagram in the routing table entry for the datagram (step 207). If the filter result exists, then the node processes / forwards the IP packet in accordance with the filter result (step 209) and then proceeds to step 211. Otherwise, if the filter result is not available, the node determines whether all filter parameters for the datagram were received from the current IP packet and whether all IP packets that are also fragments of this datagram have already been received (step 432). If all filtering parameters have not been received, then the node allocates a buffer in the fragment memory for the current IP packet and stores the IP packet in the buffer (step 215). The node then returns to step 201 to process the next IP packet. Otherwise, if all filtering parameters have been obtained, the node applies filters with respect to the filtering parameters, obtains the filtering result for the datagram, and saves the filtering result in the routing table entry created for the datagram (step 210). The node then processes / forwards the current IP packet, as well as all already received IP packets, which are also a fragment of this datagram and stored in the fragment memory, in accordance with the filtering result (step 212). The node then proceeds to step 211.

Для варианта осуществления, показанного на фиг.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 steps 213 and 214, the node returns to step 201 to process the next IP packet.

Использование заявленного способа для организации защиты от 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 port 1024 and the packet length should be 150 bytes. The second rule prohibits all other packets.

На один из портов поступает 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 байт, а вероятность подбора длины пакета злоумышленником P с о в п = n t 576

Figure 00000001
, где nt - количество попыток подбора длины пакета за время t.The probability of matching the length of the received packet with the value specified in the filtering rules is very small. For an Ethernet frame, for example, the value of this parameter can be any in the range from 1 to 576 bytes, and the attacker is likely to select the length of the packet P from about at P = n t 576
Figure 00000001
, where n t is the number of attempts to select the packet length over time t.

При продолжительной атаке и при условии, что 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:

P п о д б д = P п о д б P 1 t 1 P 2 t 2 P k t k

Figure 00000002
, P P about d b d = P P about d b P one t one P 2 t 2 ... P k t k
Figure 00000002
,

где Рподб - вероятность подбора статических параметров фильтрации,where P subb is the probability of selecting static filtering parameters,

P 1 t 1

Figure 00000003
- вероятность подбора динамического параметра 1 за время t1, P one t one
Figure 00000003
- the probability of selecting a dynamic parameter 1 over time t 1 ,

P 2 t 2

Figure 00000004
- вероятность подбора динамического параметра 2 за время t2, P 2 t 2
Figure 00000004
- the probability of selecting a dynamic parameter 2 over time t 2 ,

P k t k

Figure 00000005
- вероятность подбора динамического параметра k за время tk. P k t k
Figure 00000005
is the probability of selecting a dynamic parameter k over time t k .

Защита от 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)

Способ динамической фильтрации дейтаграмм Интернет-протокола, в котором идентифицируют по меньшей мере один параметр фильтрации для дейтаграммы Интернет-протокола (IP), отправленной как множество фрагментов; сохраняют один или более принятых фрагментов дейтаграммы Интернет-протокола (IP) в качестве сохраненных фрагментов; получают упомянутый по меньшей мере один параметр фильтрации из упомянутых одного или более принятых фрагментов; определяют результат фильтрации для дейтаграммы Интернет-протокола (IP) на основе упомянутого по меньшей мере одного параметра фильтрации, причем результат фильтрации определяют до того, как будут приняты все фрагменты дейтаграммы Интернет-протокола (IP); обрабатывают сохраненные фрагменты на основе результата фильтрации; и обрабатывают дополнительные фрагменты, принятые после того, как результат фильтрации определен на основе упомянутого по меньшей мере одного параметра фильтрации, при этом упомянутый по меньшей мере один параметр фильтрации для IP-дейтаграммы содержит IP-адрес источника, IP-адрес получателя, маску подсети, порт источника, порт получателя, диапазон портов источника, диапазон портов получателя, номер протокола, тип обслуживания для IP версии 4 (IPv4), класс трафика для IP версии 6 (IPv6), метку потока для IPv6, индекс параметра безопасности IPSec (SPI) или их комбинацию, отличающийся тем, что упомянутый по меньшей мере один параметр фильтрации для IP-дейтаграммы является функцией от времени и дополнительно содержит общую длину IP-дейтаграммы. A method for dynamically filtering Internet Protocol datagrams in which at least one filtering parameter is identified for an Internet Protocol (IP) datagram 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 an Internet Protocol (IP) datagram based on said at least one filtering parameter, the filtering result being determined before all fragments of the Internet Protocol (IP) datagram are received; process the stored fragments based on the filtering result; and processing additional fragments received after the filtering result is determined based on the at least one filtering parameter, wherein said at least one filtering parameter for the IP datagram contains a source IP address, a recipient IP address, a 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) or them a combination, characterized in that said at least one filter parameter for the IP datagram is a function of time and further comprises the total length of the IP datagram.
RU2013113595/08A 2013-03-26 2013-03-26 Method for dynamic filtration of internet protocol datagrams RU2580808C2 (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (1)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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