СПОСОБ ЗАЩИТЫ ВЫЧИСЛИТЕЛЬНЫХ СЕТЕЙ
METHOD OF PROTECTING COMPUTER NETWORKS

Изобретение относится к электросвязи и может быть использовано в системах обнаружения атак с целью оперативного выявления и противодействия несанкционированным воздействиям в вычислительных сетях, в частности, в сети передачи данных типа «Internet», основанных на семействе коммуникационных протоколов TCP/IP {Transmission Control Protocol / Internet Protocol) и описанных в книге Олифер В., Олифер Н. Компьютерные Сети. Принципы, технологии, протоколы: Учебник для вузов. 5-е изд. - СПб.: Питер, 2016. - 992 с.: ил.
Известен «Способ защиты вычислительной сети» по патенту РФ №2422892, класс G06F 21/20 (2006.01), заявл. 13.04.2010. Известный способ включает следующую последовательность действий. Устанавливают в каналах связи защищаемой вычислительной сети шлюз-компьютер с межсетевым экраном. Формируют базу параметров легитимных пакетов и блокируют поступающие из открытой сети пакеты на период установления легитимности. Запоминают адрес получателя, анализируют поступающие из открытой сети пакеты, для чего сравнивают их параметры с заранее сформированной базой параметров легитимных пакетов. После завершения анализа формируют ICMP квитанцию, в которой адрес отправителя заменяют на ранее запомненный адрес получателя. Отправляют ее нелегитимному отправителю.
Недостатком данного способа является относительно низкая защищенность от несанкционированных воздействий, признаками наличия которых являются несанкционированные информационные потоки (ИП). Это обусловлено тем, что при определении факта наличия несанкционированного ИП в вычислительных сетях блокируется передача пакета сообщений, что является недостаточным для защиты вычислительных сетей от несанкционированных воздействий. Реализация указанного подхода к защите вынуждает нарушителя далее воздействовать на вычислительные сети и (или) менять стратегию воздействия.
зад
зад
зад
Известен «Способ (варианты) защиты вычислительных сетей» по патенту РФ №2307392, класс G06F 21/00, опубл. 27.09.2007. Известный способ включает следующую последовательность действий. Предварительно задают N≥1 опорных идентификаторов санкционированных ИП, содержащих адреса отправителей и получателей пакетов сообщений, принимают из канала связи пакет сообщений, выделяют из заголовка принятого пакета сообщений идентификатор ИП, сравнивают выделенный идентификатор с предварительно заданными опорными идентификаторами санкционированных ИП и при их совпадении передают пакет сообщений получателю, а при их несовпадении сравнивают адрес отправителя, указанный в идентификаторе принятого пакета сообщений с адресами отправителей, указанными в опорных идентификаторах санкционированных ИП, задают Р≥1 ложных адресов абонентов вычислительной сети и время задержки отправки пакетов сообщений t. В случае совпадения адреса отправителя в принятом пакете сообщений с одним из адресов отправителей опорных идентификаторов санкционированных ИП сравнивают адрес получателя в принятом пакете сообщений с адресами получателей опорных идентификаторов санкционированных ИП. При несовпадении адреса получателя в принятом пакете сообщений с адресами получателей опорных идентификаторов санкционированных ИП дополнительно сравнивают адрес получателя в принятом пакете сообщений с предварительно заданными ложными адресами абонентов вычислительной сети. В случае несовпадения адреса получателя в принятом пакете сообщений с предварительно заданными ложными адресами абонентов блокируют передачу пакета сообщений. А при несовпадении адреса отправителя в принятом пакете сообщений с одним из адресов отправителей опорных идентификаторов санкционированных ИП или совпадении адреса получателя в принятом пакете сообщений с адресами получателей опорных идентификаторов санкционированных ИП, или его совпадении с предварительно заданными ложными адресами абонентов вычислительной сети формируют ответный пакет сообщений, а затем, через заданное время задержки отправки пакетов сообщений t снижают скорость передачи сформированного пакета сообщений. Передают его отправителю, после чего принимают из канала связи очередной пакет сообщений. Для идентификации протокола взаимодействия выделяют идентификатор типа протокола взаимодействия и сравнивают его с эталонами идентификаторов типа протокола взаимодействия. Для снижения скорости передачи сформированного пакета сообщений фрагментируют пакет сообщений, передают пакет сообщений через заданное время задержки отправки пакетов сообщений t.
Недостатками данного способа являются относительно низкая результативность защиты вычислительных сетей и узкая область применения способа защиты. Низкая результативность защиты обусловлена тем, что в прототипе увеличение интенсивности несанкционированных информационных потоков и сохранение заданного времени задержки отправки ответных пакетов сообщений отправителю приведет к перегрузке вычислительной сети. Узкая область применения обусловлена тем, что для реализации способа защиты скорость информационного обмена с отправителем несанкционированных информационных потоков снижают только со стороны вычислительной сети, то есть в одностороннем порядке, и не учитывают возможность отправителя разорвать соединение.
16
нач
yд
Наиболее близким по своей технической сущности к заявленному, является способ защиты вычислительных сетей, описанный, например, в книге Grimes, R.A. Honeypots for Windows // Apress. 2005. 424 p. на стр. 191-192. Известный способ включает следующую последовательность действий. Подключают сетевые устройства к вычислительной сети. После приема ARP-запросов (от англ. Address Resolution Protocol - протокол определения адреса) к i-ому неиспользуемому IP-адресу сетевого устройства вычислительной сети формируют ответный пакет сообщений с единственным и неизменяемым значением (00:00:0F:FF:FF:FF) (в шестнадцатеричной системе счисления) МАС-адреса (от англ. Media Access Control - управление доступом к среде). Затем записывают в поле «размер окна» ТСР-заголовка ответного пакета сообщений значение W равное десяти байтам и принимают очередной пакет сообщений. Формируют ответный пакет сообщений и устанавливают в поле «размер окна» ТСР-заголовка ответного пакета сообщений значение W равное нулю байт. После этого направляют отправителю сформированные ответные пакеты сообщений, а для блокирования попыток разорвать соединение со стороны отправителя пакетов сообщений игнорируют все входящие пакеты сообщений до истечения тайм-аута соединения.
Известный способ-прототип обеспечивает более высокую защищенность вычислительных сетей от несанкционированных воздействий по сравнению с аналогами за счет введения в заблуждение нарушителя относительно структуры вычислительных сетей путем имитации доступности всего массива IP-адресов вычислительной сети, обеспечивая тем самым максимальную вероятность перенаправления нарушителя на ресурс-ловушку, и за счет удержания в двухстороннем порядке соединения с отправителем пакетов сообщений, обеспечивая тем самым увеличение дискомфорта у нарушителя и выигрыш по времени, необходимый для реализации ответных мер.
16
Недостатком способа-прототипа является относительно низкая результативность защиты, обусловленная высокой вероятностью обнаружения нарушителем факта использования средств защиты вычислительной сети и идентификации их характеристик. Это связано с тем, что в прототипе, при обращении к любому IP-адресу из диапазона IP-адресов вычислительной сети, нарушитель всегда получает ответ о доступности IP-адреса и всех его портов, что демаскирует наличие и возможности средств защиты. Кроме того, при ответах на ARP-запросы к i-ому неиспользуемому IP-адресу сетевого устройства вычислительной сети в прототипе используют единственное и неизменяемое значение (00:00:0F:FF:FF:FF) (в шестнадцатеричной системе счисления) МАС-адреса независимо от реального адреса сетевого адаптера, что позволяет злоумышленнику идентифицировать ложные узлы путем изучения адресов канального уровня.
Целью заявленного технического решения является разработка способа защиты вычислительных сетей, обеспечивающего повышение результативности защиты и введение в заблуждение нарушителя относительно структуры вычислительной сети, за счет снижения вероятности обнаружения нарушителем факта использования средств защиты и идентификации их характеристик, достигаемых путем разделения адресного пространства вычислительной сети и пространства портов на области, обеспечивающие реалистичность функционирования защищаемой вычислительной сети, а также путем формирования множества случайных значений МАС-адресов, соответствующих ложным узлам вычислительной сети.
нач
уд
IP
IP
IP
IP
IP
IP
IP
IP
IP
IP
IP
IP
I
IP
IP
IP
IP
IP
IP
IP
IP
IP
IP
IP
IP
IP
IP
IP
IP
IP
MAC
MAC
IP
MAC
IP
IP
IP
IP
IP
IP
MAC
MAC
MAC
MAC
MAC
IP
MAC
IP
IP
IP
IP
IP
IP
IP
Поставленная цель достигается тем, что в известном способе защиты вычислительных сетей подключают сетевые устройства к вычислительной сети и после приема ARP-запросов к i-ому неиспользуемому IP-адресу сетевого устройства вычислительной сети формируют ответный пакет сообщений. Затем записывают в поле «размер окна» ТСР-заголовка ответного пакета сообщений значение W равное десяти байтам. После этого принимают очередной пакет сообщений и формируют ответный пакет сообщений. Далее устанавливают в поле «размер окна» ТСР-заголовка ответного пакета сообщений значение W равное нулю байт и направляют отправителю сформированные ответные пакеты сообщений. Для блокирования попыток разорвать соединение со стороны отправителя пакетов сообщений игнорируют все входящие пакеты сообщений до истечения тайм-аута соединения. В предварительно заданные исходные данные дополнительно задают множество {M} всех i IP-адресов сетевых устройств вычислительной сети, где i=1, 2, …, n, а n - максимально допустимое значение диапазона IP-адресов для вычислительной сети, множество {A} разрешенных для использования в вычислительной сети IP-адресов сетевых устройств, где {A}∈{M}, множество {D} запрещенных для использования в вычислительной сети IP-адресов сетевых устройств, где {D}={M \ A}={D ∈ M ∧ D ∉ A}, множество {Up} разрешенных и временно неподключенных IP-адресов сетевых устройств в вычислительной сети из множества {A} и множество {R} разрешенных и подключенных IP-адресов сетевых устройств в вычислительной сети из множества {A}, где {U}={A \ R}={U ∈ A ∧ U ∉ R} и {R}={A \ U}={R ∈ A ∧ R ∉ U}. Затем предварительно задают массив памяти S для хранения считанных МАС-адресов сетевых устройств в вычислительной сети, массив памяти G для хранения сформированных МАС-адресов и массив памяти AG для хранения матрицы соответствия i-му разрешенному для использования в вычислительной сети IP-адресу сетевого устройства из множества {A} j-го сформированного МАС-адреса из массива памяти G. Далее предварительно задают множество {Р}={1i, 2i, … Pi} разрешенных для использования программным обеспечением Р номеров портов i IP-адресов сетевых устройств вычислительной сети, а также двумерный массив памяти S для хранения считанных Р разрешенных для использования программным обеспечением номеров портов, используемых каждым i-м IP-адресом сетевых устройств вычислительной сети. Задают множество {H}={1i, 2i, … Hi} запрещенных для использования программным обеспечением Н номеров портов i-х сетевых устройств вычислительной сети и двумерный массив памяти V для хранения Н запрещенных для использования программным обеспечением номеров портов, используемых каждым i-м IP-адресом сетевых устройств вычислительной сети. После этого задают множество {F} = {1i, 2i, … Fi} ложных F номеров портов, используемых каждым i-м IP-адресом сетевых устройств вычислительной сети из множества {U}, а также двумерный массив памяти L для хранения F ложных номеров портов, используемых каждым i-м IP-адресом сетевых устройств вычислительной сети из множества {U}. После подключения сетевых устройств к вычислительной сети считывают Р разрешенных для использования программным обеспечением номеров портов i-x IP-адресов сетевых устройств вычислительной сети и запоминают Р разрешенных для использования программным обеспечением номеров портов i-x IP-адресов сетевых устройств вычислительной сети в двумерном массиве памяти S. Затем запоминают IP-адреса временно неподключенных сетевых устройств в множество {U}. После этого формируют F ложных номеров портов для каждого i-го IP-адреса из множества {U}, для чего считывают из двумерного массива памяти S номера разрешенных для использования программным обеспечением номеров портов для i-x IP-адресов сетевых устройств вычислительной сети из множества { U) и запоминают считанные разрешенные для использования программным обеспечением номера портов для i-х IP-адресов сетевых устройств вычислительной сети из множества {U} в двумерном массиве памяти L. Далее считывают МАС-адреса подключенных сетевых устройств вычислительной сети и запоминают их в массиве памяти S. Затем генерируют случайную последовательность шестнадцатеричных чисел и формируют из нее J значений, где J=1, 2, …, j, МАС-адресов временно неподключенных сетевых устройств вычислительной сети. После этого запоминают сформированные J значений МАС-адресов временно неподключенных сетевых устройств вычислительной сети в массиве памяти G и сравнивают сформированные J значений МАС-адресов временно неподключенных сетевых устройств вычислительной сети из массива памяти G с МАС-адресами временно неподключенных сетевых устройств вычислительной сети из массива памяти S. По результатам сравнения, в случае их совпадения, j-й МАС-адрес удаляют из массива памяти G, а в противном случае, то есть при их несовпадении, запоминают в массиве памяти AG соответствие i-му разрешенному для использования в вычислительной сети IP-адресу сетевого устройства из множества {A} j-го сформированного МАС-адреса из массива памяти G. После этого принимают ARP-запрос к любому i-му IP-адресу сетевого устройства из множества {M} и сравнивают IP-адрес получателя ARP-запроса с IP-адресами сетевых устройств из множества {D} запрещенных для использования в вычислительной сети IP-адресов сетевых устройств. По результатам сравнения, в случае совпадения IP-адреса получателя ARP-запроса с IP-адресами из множества {D} запрещенных для использования в вычислительной сети IP-адресов сетевых устройств, игнорируют ARP-запрос. В противном случае, то есть при несовпадении IP-адреса получателя ARP-запроса с IP-адресами из множества {D}, сравнивают IP-адрес получателя ARP-запроса с IP-адресами сетевых устройств из множества {R} разрешенных и подключенных IP-адресов сетевых устройств, и по результатам сравнения в случае совпадения IP-адреса получателя ARP-запроса с IP-адресами из множества {R} разрешенных и подключенных IP-адресов формируют сообщение о доступности узла получателя пакетов сообщений. В противном случае, то есть при несовпадении IP-адреса получателя ARP-запроса с IP-адресами из множества {R}, сравнивают IP-адрес получателя ARP-запроса с IP-адресами сетевых устройств из множества временно неподключенных IP-адресов, и по результатам сравнения в случае несовпадения IP-адреса получателя
IP
IP
IP
нач
ARP-запроса с IP-адресами из множества {U} временно неподключенных IP-адресов формируют сообщение о доступности узла получателя пакетов сообщений. В противном случае, то есть при совпадении IP-адреса получателя ARP-запроса с IP-адресами из множества {U}, после формирования ответного пакета сообщений, записывают в заголовок ответного пакета сообщений получателя ARP-запроса ложные номера портов для i-x IP-адресов сетевых устройств вычислительной сети из множества {U}, хранящихся в двумерном массиве памяти L. Далее после записывания в поле «размер окна» ТСР-заголовка ответного пакета сообщений значения W равное десяти байтам, записывают в заголовок ответного пакета j-й сгенерированный
MAC
нач
MAC
МАС-адрес для i-го IP-адреса из массива памяти G. После этого направляют отправителю ответный пакет сообщений со значениями W, j-го сгенерированного МАС-адреса для i-го IP-адреса из массива памяти G, ложными F номерами портов.
IP
MAC
Запоминание в массиве памяти AG соответствия i-му разрешенному для использования в вычислительной сети IP-адресу сетевого устройства из множества {A} j-го сформированного МАС-адреса из массива памяти G осуществляют путем записи в ячейку |i,j| массива памяти AG логической единицы.
Количество Р разрешенных и Н запрещенных для использования программным обеспечением номеров портов i-x сетевых устройств вычислительной сети выбирают в диапазоне от 1 до 65535.
Запоминание в двумерном массиве памяти S номеров портов, используемых каждым i-м IP-адресом сетевых устройств вычислительной сети осуществляют путем записи в ячейку |i,p| массива памяти S логической единицы.
Запоминание в двумерном массиве памяти V номеров портов, используемых каждым i-м IP-адресом сетевых устройств вычислительной сети осуществляют путем записи в ячейку |i,h| массива памяти V логической единицы.
Запоминание в двумерном массиве памяти L номеров портов, используемых каждым i-м IP-адресом сетевых устройств вычислительной сети осуществляют путем записи в ячейку |i,f| массива памяти L логической единицы.
Благодаря новой совокупности существенных признаков в заявленном способе обеспечивается повышение результативности защиты и введение в заблуждение нарушителя относительно структуры вычислительной сети за счет снижения вероятности обнаружения нарушителем факта использования и идентификации характеристик средств защиты, достигаемых путем разделения адресного пространства вычислительной сети и пространства портов на области, обеспечивающие реалистичность функционирования защищаемой вычислительной сети, а также путем формирования множества случайных значений МАС-адресов, соответствующих ложным узлам вычислительной сети.
Заявленные объекты изобретения поясняются чертежами, на которых показаны:
фиг. 1 - формат дейтаграммы ARP;
фиг. 2 - пример, иллюстрирующий защиту вычислительной сети с применением сетевой «ловушки» до и после разделения адресного пространства и пространства портов на области;
фиг. 3 - графическая интерпретация разделения адресного пространства вычислительной сети;
фиг. 4 - блок-схема последовательности действий, реализующих заявленный способ защиты вычислительных сетей;
16
фиг. 5 - иллюстрация использования единственного и неизменяемого значения (00:00:0F:FF:FF:FF) МАС-адреса;
фиг. 6 - иллюстрация использования в способе защиты множества случайных значений МАС-адресов.
Реализация заявленного способа объясняется следующим образом. Известно, что в настоящее время достаточно большое количество компьютерных атак носит разведывательный характер с целью получения информации о топологии вычислительной сети, являющейся объектом атаки, а также об используемых средствах защиты вычислительной сети. Одними из средств сетевой защиты, функционирующих с применением обманных сетевых стратегий, направленных на создание у нарушителя иллюзий уязвимых целей или способствующих видимости более сложной инфраструктуры, чем существует на самом деле, являются сетевые «приманки» {honeypots), описанные, например, в книге Provos, N., Holz, Т, Virtual Honeypots: From Botnet Tracking to Intrusion Detection // Addison Wesley, 2007. 480 p. Более совершенные способы сетевого обмана включают в себя не только предоставление противнику правдоподобной цели, но и, так называемые проактивные меры защиты, такие как, например, удержание в двухстороннем порядке соединения с отправителем пакетов сообщений, что вызывает «истощение» ресурсов отправителя пакетов сообщений для поддержания состояния соединения, замедляет процесс автоматического сканирования атакуемой вычислительной сети и, как результат, накладывает ограничение на используемый нарушителем вычислительный ресурс, что приводит к невозможности осуществлять сетевой информационный обмен. Рассмотренные способы проактивной защиты реализованы в виде инструментальных средств сетевого обмана, так называемых сетевых «ловушек» (network tarpits), которые описаны, например, в книге Andres, S., Kenyon, В. Birkolz, Е. Security Sage's Guide to Hardening the Network Infrastructure // Sungress Publishing, 2004. 608 p., на стр. 414-416.
16
В свою очередь, нарушителями информационной безопасности также активно разрабатываются и совершенствуются средства снижения результативности сетевых «ловушек», реализующие следующие способы их компрометации: детектирование уникальных идентификаторов (демаскирующих признаков) сетевых «ловушек»; детальный анализ сетевого трафика поступающего с сетевых «ловушек». Такими демаскирующими признаками сетевой «ловушки», реализованной в способе-прототипе, являются активность любого IP-адреса из диапазона IP-адресов вычислительной сети и доступность всех его портов, а также использование единственного и неизменяемого значения (00:00:0F:FF:FF:FF) (в шестнадцатеричной системе счисления) МАС-адреса независимо от реального адреса сетевого адаптера при ответах на ARP-запросы к i-ому неиспользуемому IP-адресу сетевого устройства вычислительной сети. Когда один прикладной процесс устанавливает соединение с другим прикладным процессом, он указывает адресата связи. Применяемый обычно метод состоит в определении транспортных адресов, к которым процессы могут посылать запросы на установку соединения. В Интернете такие конечные точки называются портами и описаны, например, в книге Таненбаум Э., Уэзеролл Д. Компьютерные сети. 5 изд. - СПб.: Питер, 2017. - 960 с., на стр. 541.
Порт - это натуральное число, записываемое в заголовках протоколов транспортного уровня модели OSI {TCP, UDP, SCTP, DCCP), и используемое для определения процесса-получателя пакета. Эти процессы описаны, например, в Википедии - свободной энциклопедии (см. «Порт» на https://ru.wikipedia.org). Если процессы представляют собой распространенные системные службы, такие как FTP, HTTP, службу электронной почты и т.п., то за ними закрепляются стандартные назначенные номера, называемые также «хорошо известными» {well-known) номерами портов. Эта номера закрепляются и публикуются, например, в технических спецификациях (RFC, Request for Comments) сети Интернет (см., например, https://tools.ietf.org/html/rfc1700, https://tools.ietf.org/html/rfc3232). Так, номер 21 закреплен за серверной частью службы удаленного доступа к файлам FTP (фиг. 2б). В качестве средств компрометации сетевых «ловушек» посредством анализа доступности всех ее портов, однозначно ее идентифицирующих, нарушителем могут применяться различные утилиты такие как, например, nmap и описаны, например, в книге Бирюков А.А. Информационная безопасность: защита и нападение. - М.: ДМК Пресс, 2016. - 484 с., на стр. 180-181.
Протокол разрешения адресов ARP (Address Resolution Protocol) предназначен для определения адреса канального уровня по известному адресу сетевого уровня и описан, например, в RFC (см., например, https://tools.ietf.org/html/rfc826). Формат дейтаграммы ARP представлен на фиг. 1. В локальных сетях протокол ARP использует широковещательные кадры протокола канального уровня для поиска в сети узла с заданным IP-адресом. Узел, которому нужно разрешить отображение (соответствие) IP-адреса на локальный (физический) адрес, формирует ARP-запрос, инкапсулирует его в кадр протокола канального уровня, указывая в нем известный IP-адрес, и рассылает запрос широковещательно. Все узлы локальной сети получают ARP-запрос и сравнивают указанный там IP-адрес с собственным. В случае их совпадения узел формирует ARP-ответ, в котором указывает свой IP-адрес и свой локальный адрес и посылает его уже направленно, так как в ARP-запросе отправитель указывает свой локальный адрес.
В качестве средств компрометации сетевых «ловушек», использующих обнаружение активных IP-адресов в помощью ARP-запросов нарушителем применяются различные утилиты (nmap, ethereal, arping, tethreal и др.), предназначенные для анализа сетевого трафика и топологии вычислительной сети, описанные, например, в книге Андрончик А.Н., Богданов В.В., Домуховский Н.А., Коллеров А.С., Синадский Н.И., Хорьков Д.А., Щербаков М.Ю. Защита информации в компьютерных сетях. Практический курс: учебное пособие / А.Н. Андрончик, В.В. Богданов, Н.А. Домуховский и др.; под редакцией Н.И. Синадского. - Екатеринбург: УГТУ-УПИ, 2008. - 248 с.
Таким образом, возникает противоречие между результативностью защиты вычислительных сетей и возможностями нарушителей по определению структуры вычислительных сетей и идентификации характеристик средств защиты, имеющих демаскирующие признаки. На устранение указанного противоречия направлен заявленный способ.
1
2
3
4
5
n
4
5
n
Заявленный способ реализуют следующим образом. В общем случае (фиг. 2а) вычислительная сеть представляет собой совокупность корреспондентов 1, 2, 6, 7, являющихся источниками и получателями сетевого трафика, периферийного и коммуникационного оборудования 4, 9, ретранслирующего сетевой трафик корреспондентов, объединенного физическими линиями (каналами) связи 3, 10, соединяющих n узлов вычислительной сети в единую инфраструктуру, в том числе с использованием сети передачи данных типа «Internet» 5. При этом пространство IP-адресов сетевых устройств занято корреспондентами вычислительной сети не полностью: корреспонденты K, K, K, выделенные на фиг. 2а в совокупность 1, подключены к вычислительной сети. Тогда как корреспонденты K, K, … K, выделенные на фиг. 2а в совокупность 2 (иконки ПЭВМ на фиг. 2а изображены пунктиром), не подключены к вычислительной сети, то есть IP-адреса корреспондентами K, K, … K не заняты (не используются).
Для защиты вычислительной сети и введения в заблуждение нарушителя относительно структуры вычислительной сети, на одном из выделенных компьютеров 7 вычислительной сети устанавливают сетевую «ловушку», осуществляющую перехват ARP-запросов к i-ому неиспользуемому IP-адресу сетевого устройства 2 вычислительной сети, посредством анализатора пакетов 8. После перехват ARP-запросов осуществляют отправление пакета сообщений с ложным МАС-адресом отправителю пакетов сообщений и последующее удержание с ним соединения в двухстороннем порядке.
IP
IP
I
IP
IP
IP
IP
На фиг. 2б представлена вычислительная сеть с разделением адресного пространства на области, обеспечивающая реалистичность функционирования защищаемой вычислительной сети при ее сканировании злоумышленником. На фиг. 3 представлена графическая интерпретация разделения адресного пространства вычислительной сети с использованием математических выражений, принятых в теории множеств. Разностью {R} множеств {А} и {U} называется операция, результатом которой является множество, состоящее из тех элементов, которые принадлежат {А} и не принадлежат {U} одновременно. То есть {R}={A \ Up}={R ∈ A ∧ R ∉ U},что и показано на фиг. 3.
На фиг. 4 представлена блок-схема последовательности действий, реализующих заявленный способ защиты вычислительных сетей, в которой приняты следующие обозначения:
IP
{M} - множество всех i IP-адресов сетевых устройств вычислительной сети, где i=1, 2, …, n, а n - максимально допустимое значение диапазона IP-адресов для вычислительной сети;
IP
IP
IP
{A} - множество разрешенных для использования в вычислительной сети IP-адресов сетевых устройств, где {A}∈{M};
IP
IP
IP
IP
IP
IP
IP
IP
{D} - множество запрещенных для использования в вычислительной сети IP-адресов сетевых устройств, где {D}={M \ A}={D ∈ M ∧ D ∉ A};
IP
IP
IP
IP
IP
IP
IP
IP
IP
{U} - множество разрешенных и временно неподключенных IP-адресов сетевых устройств в вычислительной сети из множества A, где {U}={A \ R}={U ∈ A ∧ U ∉ R};
IP
IP
IP
IP
IP
IP
IP
IP
IP
{R} - множество разрешенных и подключенных IP-адресов сетевых устройств в вычислительной сети из множества A, где {R}={A \ U}={R ∈ A ∧ R ∉ U};
MAC
S - массив памяти для хранения считанных МАС-адресов сетевых устройств в вычислительной сети;
MAC
G - массив памяти для хранения сформированных МАС-адресов;
IP
MAC
AG - массив памяти для хранения матрицы соответствия i-му разрешенному для использования в вычислительной сети IP-адресу сетевого устройства из массива A j-го сформированного МАС-адреса из массива памяти G;
{Р} - множество разрешенных для использования программным обеспечением K номеров портов i IP-адресов сетевых устройств вычислительной сети, где {Р}={1i, 2i, … Pi};
S - двумерный массив памяти для хранения считанных Р разрешенных для использования программным обеспечением номеров портов, используемых каждым i-м IP-адресом сетевых устройств вычислительной сети;
{H} - множество запрещенных для использования программным обеспечением Н номеров портов i-x сетевых устройств вычислительной сети, где {H}={1i, 2i, … Hi};
V - двумерный массив памяти для хранения Н запрещенных для использования программным обеспечением номеров портов, используемых каждым i-м IP-адресом сетевых устройств вычислительной сети;
IP
{F} - множество ложных F номеров портов, используемых каждым i-м IP-адресом сетевых устройств вычислительной сети из множества {U}, где {F}={1i, 2i, … Fi};
IP
L - двумерный массив памяти для хранения F ложных номеров портов, используемых каждым i-м IP-адресом сетевых устройств вычислительной сети из множества {U}.
Для снижения вероятности обнаружения нарушителем факта использования и идентификации характеристик средств защиты, предварительно разделяют адресное пространство вычислительной сети (фиг. 2б) на множества 1 - разрешенных и подключенных IP-адресов сетевых устройств, 2 - разрешенных и временно неподключенных IP-адресов сетевых устройств, имитирующих функционирование прикладного программного обеспечения, что проявляется инициализацией соответствующих портов, 3 - запрещенных для использования в вычислительной сети IP-адресов сетевых устройств, обеспечивающие реалистичность функционирования защищаемой вычислительной сети.
IP
1
2
n
Для этого предварительно задают (см. блок 1 на фиг. 4) множество {M}={K, K, … K} всех i IP-адресов сетевых устройств вычислительной сети, где i=1, 2, …, n, а n - максимально допустимое значение диапазона IP-адресов для вычислительной сети.
IP
IP
1
2
3
4
5
6
IP
IP
В множестве {M} задают множество {A}={K, K, K, K, K, K} разрешенных для использования в вычислительной сети IP-адресов сетевых устройств, где {A}∈{M}.
IP
IP
7
n
IP
IP
IP
IP
IP
IP
IP
Затем в множестве {M} задают множество {D}={K, … K} запрещенных для использования в вычислительной сети IP-адресов сетевых устройств, где {D}={M \ A}={D ∈ M ∧ D ∉ A}.
IP
IP
4
5
6
IP
IP
IP
IP
IP
IP
IP
IP
После этого в множестве {M} задают множество {U}={K, K, K} разрешенных и временно неподключенных IP-адресов сетевых устройств в вычислительной сети из множества {A}, где {U}={A \ R}={U ∈ A ∧ U ∉ R}.
IP
1
2
3
IP
IP
IP
IP
IP
IP
IP
IP
Также предварительно задают множество {R}={K, K, K} разрешенных и подключенных IP-адресов сетевых устройств в вычислительной сети из множества {A}, где {R}={A \ U}={R ∈ A ∧ R ∉ U}.
IP
IP
Разделением таким образом адресного пространства вычислительной сети достигается реалистичность функционирования защищаемой вычислительной сети, что позволяет снизить вероятность обнаружения нарушителем факта использования средств защиты и с высокой степенью вероятности идентифицировать факт ведения сетевой разведки нарушителем, заключающийся в его обращении к IP-адресам временно неподключенных сетевых устройств {U}, а также снизить информативность демаскирующего признака сетевой «ловушки» (заключающегося в активности всего диапазона IP-адресов вычислительной сети) исключением из диапазона IP-адресов, обращения к которым перехватывают «ловушкой», множество IP-адресов {D}.
16
Для снижения вероятности идентификации характеристик средств защиты в заявленном способе обеспечивают уменьшение информативности демаскирующего признака сетевой «ловушки», заключающемся в использовании единственного и неизменяемого значения (00:00:0F:FF:FF:FF) МАС-адреса независимо от реального адреса сетевого адаптера, при ответах на ARP-запросы к i-ому неиспользуемому IP-адресу сетевого устройства вычислительной сети. Для этого применяют случайные значения МАС-адресов сетевых адаптеров.
MAC
MAC
IP
MAC
Применение случайных значений МАС-адресов сетевых адаптеров достигают тем, что задают (см. блок 1 на фиг. 4) массив памяти S для хранения считанных МАС-адресов сетевых устройств в вычислительной сети, массив памяти G для хранения сформированных МАС-адресов и массив памяти AG для хранения матрицы соответствия i-му разрешенному для использования в вычислительной сети IP-адресу сетевого устройства из множества {A} j-го сформированного МАС-адреса из массива памяти G.
IP
4
5
6
JP
IP
Кроме того, для снижения вероятности идентификации характеристик средств защиты в заявленном способе обеспечивают уменьшение информативности другого демаскирующего признака сетевой «ловушки», заключающегося в ответах получателя пакетов сообщений на запросы ко всему пространству портов. Для этого обеспечивают разделение пространства портов на области у временно неподключенных сетевых устройств вычислительной сети и имитацию функционирования прикладного программного обеспечения, что проявляется инициализацией соответствующих портов IP-адресов временно неподключенных сетевых устройств из множества {U}, как представлено на фиг. 2б (корреспонденты K - веб-сервер, имитирующий доступность портов с номерами 80 и 8080; K - сервер электронной почты, имитирующий доступность портов с номерами 25, 110, 143; K - сервер FTP, имитирующий доступность портов с номерами 20 и 21). Это достигают тем, что предварительно задают (см. блок 1 на фиг. 4) множество {Р}={1i, 2i, … Pi} разрешенных для использования программным обеспечением Р номеров портов i IP-адресов сетевых устройств вычислительной сети и двумерный массив памяти S для хранения считанных Р разрешенных для использования программным обеспечением номеров портов, используемых каждым i-м IP-адресом сетевых устройств вычислительной сети. А также множество {Н}={1i, 2i, … Hi} запрещенных для использования программным обеспечением Н номеров портов i-x сетевых устройств вычислительной сети, двумерный массив памяти V для хранения Н запрещенных для использования программным обеспечением номеров портов, используемых каждым i-м IP-адресом сетевых устройств вычислительной сети. Также задают множество {F}={1i, 2i, … Fi} ложных F номеров портов, используемых каждым i-м IP-адресом сетевых устройств вычислительной сети из множества {U} и двумерный массив памяти L для хранения F ложных номеров портов, используемых каждым i-м IP-адресом сетевых устройств вычислительной сети из множества {U}.
IP
Затем, после подключения сетевых устройств к вычислительной сети (см. блок 2 на фиг. 4) считывают (см. блок 3 на фиг. 4) Р разрешенных для использования программным обеспечением номеров портов i-x IP-адресов сетевых устройств вычислительной сети, запоминают (см. блок 4 на фиг. 4) Р разрешенных для использования программным обеспечением номеров портов i-x IP-адресов сетевых устройств вычислительной сети в двумерном массиве памяти S. Далее запоминают IP-адреса временно неподключенных сетевых устройств в множество {U} (см. блок 5 на фиг. 4).
IP
IP
IP
После этого формируют (см. блок 6 на фиг. 4) F ложных номеров портов для каждого i-го IP-адреса из множества {U}, для чего считывают (см. блок 7 на фиг. 4) из двумерного массива памяти S номера разрешенных для использования программным обеспечением номеров портов для i-x IP-адресов сетевых устройств вычислительной сети из множества {U} и запоминают (см. блок 8 на фиг. 4) считанные разрешенные для использования программным обеспечением номера портов для i-х IP-адресов сетевых устройств вычислительной сети из множества {U} в двумерном массиве памяти L.
MAC
Далее считывают (см. блок 9 на фиг. 4) МАС-адреса подключенных сетевых устройств вычислительной сети и запоминают их (см. блок 10 на фиг. 4) в массиве памяти S. Далее генерируют (см. блок 11 на фиг. 4) случайную последовательность шестнадцатеричных чисел (см. блок 6 на фиг. 4), например, как описано в книге Дональд Э. Кнут Случайные числа // Искусство программирования. 3 изд. - М.: Вильяме, 2000. Т. 2. Получисленные алгоритмы. - 832 с., и формируют из нее (см. блок 12 на фиг. 4) J значений, где J=1, 2, …, j, МАС-адресов временно неподключенных сетевых устройств вычислительной сети.
MAC
MAC
MAC
MAC
IP
MAC
После этого запоминают (см. блок 13 на фиг. 4) сформированные J значений МАС-адресов временно неподключенных сетевых устройств вычислительной сети в массиве памяти G и, для исключения появления в вычислительной сети двух сетевых устройств с одинаковыми МАС-адресами, сравнивают (см. блок 15 на фиг. 4) сформированные J значений МАС-адресов временно неподключенных сетевых устройств вычислительной сети из массива памяти G с МАС-адресами временно неподключенных сетевых устройств вычислительной сети из массива памяти S. По результатам сравнения, в случае их совпадения, j-й МАС-адрес удаляют (см. блок 14 на фиг. 4) из массива памяти G, а в противном случае, то есть при их несовпадении, запоминают (см. блок 16 на фиг. 4) в массиве памяти AG соответствие i-му разрешенному для использования в вычислительной сети IP-адресу сетевого устройства из множества {A} j-го сформированного МАС-адреса из массива памяти G.
IP
IP
IP
Далее принимают (см. блок 17 на фиг. 4) ARP-запрос к любому i-му IP-адресу сетевого устройства из множества {M} и сравнивают (см. блок 18 на фиг. 4) IP-адрес получателя ARP-запроса с IP-адресами сетевых устройств из множества {D} запрещенных для использования в вычислительной сети IP-адресов сетевых устройств. По результатам сравнения, в случае совпадения IP-адреса получателя ARP-запроса с IP-адресами из множества {D} запрещенных для использования в вычислительной сети IP-адресов сетевых устройств, игнорируют ARP-запрос (см. блок 19 на фиг. 4).
IP
IP
В противном случае, то есть при несовпадении IP-адреса получателя ARP-запроса с IP-адресами из множества {D}, сравнивают (см. блок 20 на фиг. 4) IP-адрес получателя ARP-запроса с IP-адресами сетевых устройств из множества {R} разрешенных и подключенных IP-адресов сетевых устройств, и по результатам сравнения в случае совпадения IP-адреса получателя
IP
ARP-запроса с IP-адресами из множества {R} разрешенных и подключенных IP-адресов формируют (см. блок 23 на фиг. 4) сообщение о доступности узла получателя пакетов сообщений, что соответствует обращению легитимного абонента к сетевому устройству вычислительной сети.
IP
IP
IP
В противном случае, то есть при несовпадении IP-адреса получателя ARP-запроса с IP-адресами из множества {R}, сравнивают (см. блок 21 на фиг. 4) IP-адрес получателя ARP-запроса с IP-адресами сетевых устройств из множества {U} временно неподключенных IP-адресов, и по результатам сравнения в случае несовпадения IP-адреса получателя ARP-запроса с IP-адресами из множества {U} временно неподключенных IP-адресов формируют (см. блок 23 на фиг. 4) сообщение о доступности узла получателя пакетов сообщений.
IP
нач
IP
MAC
нач
MAC
В противном случае, то есть при совпадении IP-адреса получателя ARP-запроса с IP-адресами из множества {U}, после формирования ответного пакета сообщений (см. блок 22 на фиг. 4) и записывания (см. блок 24 на фиг. 4) в поле «размер окна» ТСР-заголовка ответного пакета сообщений значения W равное десяти байтам, записывают (см. блок 25 на фиг. 4) в заголовок ответного пакета сообщений получателя ARP-запроса ложные номера портов для i-x IP-адресов сетевых устройств вычислительной сети из множества {U}, хранящихся в двумерном массиве памяти L. Затем записывают (см. блок 26 на фиг. 4) в заголовок ответного пакета j-й сгенерированный МАС-адрес для i-го IP-адреса из массива памяти G. После этого направляют (см. блок 27 на фиг. 4) отправителю ответный пакет сообщений со значениями W, j-го сгенерированного МАС-адреса для i-го IP-адреса из массива памяти G, ложными F номерами портов.
уд
уд
уд
Затем принимают (см. блок 28 на фиг. 4) очередной пакет сообщений и устанавливают (см. блок 29 на фиг. 4) в поле «размер окна» заголовка ответного пакета W=0, после чего формируют (см. блок 30 на фиг. 4) ответные пакеты с W=0 и направляют (см. блок 31 на фиг. 4) отправителю ответные пакеты с W=0. Для блокирования попыток разорвать соединение со стороны отправителя пакетов сообщений игнорируют (см. блок 32 на фиг. 4) все входящие пакеты сообщений, до тех пор, пока не истечет тайм-аут соединения.
IP
MAC
Запоминание в массиве памяти AG соответствия i-му разрешенному для использования в вычислительной сети IP-адресу сетевого устройства из множества {A} j-го сформированного МАС-адреса из массива памяти G осуществляют путем записи в ячейку |i,j| двумерного массива памяти AG логической единицы. Двумерный массив памяти в результате содержит простую матрицу, содержащую нули и единицы. Единица в ячейке матрицы означает соответствие i-го IP-адреса сетевого устройства j-му МАС-адресу.
Количество Р разрешенных и Н запрещенных для использования программным обеспечением номеров портов i-x сетевых устройств вычислительной сети выбирают в диапазоне от 1 до 65535.
Запоминание в двумерном массиве памяти S номеров портов, используемых каждым i-м IP-адресом сетевых устройств вычислительной сети осуществляют путем записи в ячейку |i,p| массива памяти S логической единицы.
Запоминание в двумерном массиве памяти V номеров портов, используемых каждым i-м IP-адресом сетевых устройств вычислительной сети осуществляют путем записи в ячейку |i,h| массива памяти V логической единицы.
Запоминание в двумерном массиве памяти L номеров портов, используемых каждым i-м IP-адресом сетевых устройств вычислительной сети осуществляют путем записи в ячейку |i,f| массива памяти L логической единицы.
16
Результативность сформулированного технического результата была проверена путем программной реализации заявленного способа и проведении натурного эксперимента. Суть эксперимента - сравнение результативности обнаружения сетевой «ловушки», реализованной в способе-прототипе, с результативностью обнаружения сетевой «ловушки» при программной реализации заявленного способа. Для идентификации сетевой «ловушки», то есть для идентификации характеристик средств защиты в процессе эксперимента применен перехват из сетевого трафика ответов на запросы по протоколу ARP с использованием анализатора пакетов Wireshark описанного, например в (Abbhinav, Singh. Instant Wireshark Starter. Pakt Publishing, UK. 69 p. ISBN 978-1-84969-564-0). На фиг. 5 представлена экранная форма, иллюстрирующая результаты первого этапа эксперимента. Результат анализа сетевого трафика - использование единственного и неизменяемого значения (00:00:0F:FF:FF:FF) МАС-адреса. Обнаружение данного МАС-адреса позволяет однозначно идентифицировать факт использования в качестве средства защиты вычислительной сети сетевую «ловушку».
На втором этапе эксперимента использовалась программная реализация заявленного способа. Результат случайной генерации МАС-адресов сетевых устройств вычислительной сети и анализа сетевого трафика с использованием анализатора пакетов Wireshark представлен на фиг. 6. Использование таких МАС-адресов при ответах на запросы по протоколу ARP позволило полностью устранить демаскирующий признак сетевой «ловушки» и скрыть таким образом тип используемого в вычислительной сети средства защиты.
Таблица на фиг. 6 содержит следующие основные элементы. В таблице записано чередование широковещательных (Broadcast) запросов (нечетная строка, например, № п/п 465) по протоколу ARP и ответов на них. Нарушитель осуществляет запросы через маршрутизатор AsustekC. Суть запроса отражается в столбце таблицы «Содержимое ARP-запроса». Рассмотрим пример. В строке №465 маршрутизатор AsustekC запрашивает физический адрес (МАС-адрес) устройства с IP-адресом 10.0.0.40. В строке №466 п/п устройство с физическим адресом (МАС-адресом) be:97:a6:1c:2a:ef отвечает маршрутизатору AsustekC отвечает своим соответствием запрашиваемому
IP-адресу. Аналогичный диалог происходит и в остальных парах строк таблицы. При этом все ответы на ARP-запросы отправляет сетевая «ловушка», реализованная заявленным способом, устанавливая соответствие ложных узлов вычислительной сети запрашиваемым маршрутизатором AsustekC
IP-адресам.
Таким образом, в заявленном способе достигается достижение сформулированной цели, заключающейся в повышении результативности защиты и введении в заблуждение нарушителя относительно структуры вычислительной сети, за счет снижения вероятности обнаружения нарушителем факта использования средств защиты и идентификации их характеристик, достигаемых путем разделения адресного пространства вычислительной сети и пространства портов на области, обеспечивающие реалистичность функционирования защищаемой вычислительной сети, а также путем формирования множества случайных значений МАС-адресов, соответствующих ложным узлам вычислительной сети.