МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ, КОМПЬЮТЕРНЫЕ ТЕХНОЛОГИИ В ТЕОРИИ УПРАВЛЕНИЯ СЛОЖНЫХ ПРОЦЕССОВ
УДК 004.056.5
ПОДХОД К ПОСТРОЕНИЮ ЗАЩИЩЕННОГО ПРОТОКОЛА ДЕЦЕНТРАЛИЗОВАННОГО ВЗАИМОДЕЙСТВИЯ В БЕСПРОВОДНЫХ СЕНСОРНЫХ СЕТЯХ
В.А. Десницкий, кандидат технических наук, доцент. Санкт-Петербургский федеральный исследовательский центр Российской академии наук
Предложен подход к разработке протокола децентрализованного взаимодействия узлов беспроводной сенсорной сети с применением принципов децентрализации и модели управления на основе ролевого механизма. Описаны основные роли узлов сети, дана характеристика стадий функционирования беспроводной сенсорной сети и приведена обобщенная схема протокола децентрализованного взаимодействия. Проанализированы некоторые виды актуальных атакующих воздействий, направленных на компрометацию данного протокола, и предложены способы повышения защищенности протокола против указанных видов атак.
Ключевые слова: беспроводная сенсорная сеть, децентрализация, протокол, атакующее воздействие
AN APPROACH TO CONSTRUCTION OF A SECURE PROTOCOL
FOR DECENTRALIZED INTERACTION IN WIRELESS SENSOR NETWORKS
V.A. Desnitsky. Saint-Petersburg federal research center of the Russian academy of sciences
The article proposes an approach to the development of a protocol for decentralized interaction of nodes in a wireless sensor network by using principles of decentralization and a management model constructed on a role-based mechanism. The main roles of the network nodes are described and the characteristics of the stages of the wireless sensor network functioning are given. A generalized scheme of the protocol of decentralized interaction is presented. Some important types of attacks aimed at compromising this protocol are analyzed and methods of increasing the security of the protocol against these types of attacks are proposed. Keywords: wireless sensor network, decentralization, protocol, attack
В настоящее время все большее распространение получают беспроводные сенсорные сети (БСС), нацеленные на выполнение функций мониторинга критически важных характеристик окружающей среды, технических объектов, сооружений, людей. Распределенный динамический характер таких систем определяет необходимость децентрализованного взаимодействия узлов БСС с осуществлением каждым из узлов специфичных прикладных функций. Необходимость безопасного децентрализованного
51
управления в таких сетях обуславливает потребность в построении сетевых протоколов, способных обеспечить: во-первых, корректное и согласованное взаимодействие разнородных устройств - узлов сети, во-вторых, должный уровень защищенности против атак, направленных на нарушение работы протокола.
В настоящее время представление беспроводных сетей в большинстве случаев сводится к двухуровневым структурам, где на нижнем уровне производится сбор первичных данных, которые напрямую или опосредованно через другие узлы отправляются на расположенные на верхнем уровне базовые станции для их дальнейшей обработки и анализа в рамках централизованных подходов к организации вычислительных систем [1]. Отсутствие и сложность разворачивания средств защиты, таких как средства аутентификации и доверительные механизмы [2], широко использующиеся в традиционных программно-аппаратных комплексах, сетях и кластерах, состоящих из компьютеров общего назначения, является также сдерживающим фактором для формирования БСС с более сложными структурами и сетевыми топологиями. Тем не менее наблюдается тенденция к тому, что современные сетевые протоколы БСС реализуют определенную степень защиты на уровне протоколов маршрутизации [3], с использованием политик безопасности [4] или на уровне преобразования данных, генерируемых узлами [5]. При этом уязвимость протокола на прикладном уровне остается задачей специфичной конкретному сценарию и программно-аппаратному оборудованию. И, как правило, такие вопросы решаются ситуативно и централизовано с учетом имеющихся исходных данных и ограничений сети.
В настоящей работе предложен подход к разработке протокола децентрализованного взаимодействия узлов БСС для решения задач мониторинга критически важных параметров окружения. К новым особенностям подхода, отличающим его от альтернативных решений в предметной области, можно отнести применение принципов децентрализации на уровне прикладного протокола и вычислений на основе ролевого механизма с учетом актуальных видов атакующих воздействий, эксплуатирующих свойства децентрализации сети.
Разрабатываемый протокол децентрализованного взаимодействия узлов БСС соответствует прикладному уровню сетевой модели представления. Протокол предоставляет функции формирования перечня свободных узлов сети, их связывания на основе ролей и согласования заданий для них в зависимости от прикладных целей такой сети. При этом предполагается, что функции самоорганизации сети в контексте адресации и установления физических беспроводных каналов связи целиком ложатся на протоколы более низкого уровня [6]. Кроме того, несмотря на то, что функции контроля и обеспечения низкого энергопотребления в БСС главным образом обеспечиваются в рамках лежащих ниже уровней сетевой модели, функции управления, расположенные на уровне прикладного протокола, также могут непосредственно оказывать влияние на энергопотребление. Отметим, что рассматриваемый прикладной протокол ориентирован на конкретное сетевое применение и ожидаемые виды сценариев работы узлов сети. Изменения в планируемом характере функционирования сети должны учитываться на уровне данного протокола, и при необходимости такой протокол должен проходить стадию корректировки.
Предлагаемая и закладываемая внутрь протокола система ролей узлов сети включает следующие основные роли: сборщик данных, коллектор данных, обработчик данных, анализатор данных и контроллер сети. Каждый из узлов сети может принимать одну или несколько ролей одновременно, выполняя функции каждой роли параллельно или последовательно. В случае если узел не имеет ни одной роли, он, тем не менее, не покидает сеть, а находится в резерве. В табл. 1 приведены основные роли узлов БСС и их характеристики.
По сути дела, узел-коллектор представляет собой элемент централизации хоть и не полностью, но частично децентрализованной сети. Он необходим для бесперебойной и согласованной работы узлов сети. Вместе с тем возможно его динамическое замещение некоторым другим узлом - как запланировано, так и ситуационно - в случае невозможности текущего контроллера продолжать корректное исполнение своих функций.
52
Таблица 1. Роли узлов БСС
Роль Характеристика
Сборщик данных Осуществляет сбор данных от сенсоров, подключенных к узлу, различного периферийного оборудования, связанного с узлом, элементов пользовательского интерфейса. На узлы сбора данных накладываются также следующие функции -узловая предобработка данных, фильтрация, нормализация, позволяющие уменьшить объемы исходных данных, убрать ненужные и дублирующиеся, привести их к некоторому унифицированному виду
Коллектор данных Узел, включающий модуль хранения данных сети; данные пересылаются сюда со всех узлов-сборщиков и хранятся; кроме того, доступ к данному хранилищу получают также узлы с ролями обработчика и анализатора данных, которые способны запрашивать данные из этого хранилища и добавлять в него новые данные - результаты своей собственной работы. Помимо предоставления интерфейса для хранения данных узлов сети, узел-коллектор также может сохранять в единое хранилище свои собственные данные. Помимо этого коллектор осуществляет непрерывный контроль целостности структур данных, а также контроль заполнения объемов хранения
Обработчик данных Обработка и, в частности, агрегация данных, проводимые с учетом наличия данных от множеств узлов сети, а также исторических данных за определенные промежутки времени. Обработчик данных получает данные от коллектора и после завершения процесса выполнения или в процессе его инициирует отправку обработанных данных на коллектор
Анализатор данных Узел, осуществляющий анализ данных, получаемых из коллектора, и проводящий интеллектуальную обработку данных на основе правил, статистического анализа, анализа на основе эвристик, анализа с использованием методов машинного обучения и искусственных нейронных сетей. В частности, проводится анализ инцидентов безопасности и мониторинг защищенности сети. Результаты такого анализа отправляются узлу-коллектору
Контроллер сети Управляющий узел, ответственный за принятие решений о реорганизации сети, изменении распределения ролей на основе собственной модели управления сетью и служебных сообщений от других узлов. В частности, решение о замене узла с некоторой ролью или выделении дополнительных узлов может быть принято в результате переполнения постоянной памяти коллектора или необходимости задействовать дополнительные узлы для кооперативного анализа инцидентов. Кроме того, коллектор ответственен за оценку и отслеживание текущих показателей ресурсопотребления узлов каждой роли (в том числе, вычислительной нагрузки узла и использованной величины его исходящей и входящей сетевой пропускной способности). В отличие от других ролей узел-контроллер в сети всегда один. Его первоначальный выбор производится путем «коллективного рукопожатия» всех узлов, располагающихся в рамках имеющегося сетевого контекста, имеющих одинаковый уникальный сетевой идентификатор (PAN ID) и настроенных на формирование прикладной сети
Указанный перечень ролей не является исчерпывающим и может расширяться, отдельные роли могут уточняться в зависимости от специфики конкретной сети и задач, возложенных на нее.
Отметим, что возможна бесшовная, хотя и, вероятно, с некоторыми временными задержками, реконфигурация сети с заменой ролей одного или нескольких узлов. Под бесшовной понимается такая реконфигурация БСС, при которой не происходит потери текущих или накопленных ранее данных, а также отсутствуют прерывания прикладных или служебных функций сети.
В простейшем случае БСС может включать несколько узлов-сборщиков данных и по одному узлу с ролями коллектора, обработчика, анализатора и контроллера. Невозможность одного из узлов с некоторой ролью полностью обеспечить все потребности
53
данной роли, в том числе ограниченность программно-аппаратных функций одного узла сети обуславливает возможность увеличения числа узлов с определенной ролью для повышения целевых показателей достижимости поставленных целей, относящихся к данной роли. В табл. 2 приведены результаты анализа возможностей по распределению функций каждой роли между двумя или более узлами.
Предлагаемый протокол децентрализованного взаимодействия узлов БСС включает следующие стадии:
- стадия формирования децентрализованной сети - на данной стадии на основе физически сформированной беспроводной сети производится конструирование децентрализованной сети на логическом уровне с выбором узла-контроллера и назначением ролей другим узлам сети;
- стадия функционирования сети - данная стадия включает выполнение прикладных функций сети, а также ее перестроение, включающее, в том числе увеличение или снижение числа узлов сети;
- реконфигурации сети - данная стадия инициирует процесс перераспределения ролей между узлами сети в зависимости от текущего программно-сетевого контекста и доступности узлов сети.
Таблица 2. Возможность распределения функций
Роль Возможность распределения функций
Сборщик данных Наиболее естественным сценарием представляется делегирование роли сборщика всем или почти все узлам БСС, имеющим какие-либо сенсоры. В общем случае сбор данных с максимально возможного числа узлов сети способствует повышению полноты собираемых данных о физической и программно-аппаратной среде узла и объектах в ней
Коллектор данных Распределение хранилища данных позволяет, во-первых, повысить объемы хранимых данных и, во-вторых, увеличить скорости доступа к данным с различных узлов сети, а также повысить надежность и бесперебойность хранения данных и обеспечить их резервное копирование
Обработчик данных Возможно увеличение числа устройств с ролью обработчика для организации децентрализованной обработки. Распараллеливание процесса вычислений позволит повысить скорость выполнения. В частности, оказывается возможным повышение скорости обработки за счет групповой обработки данных и различных оптимизаций процессов вычисления за счет многопроцессорных вычислительных моделей
Анализатор данных Возможны коллаборативные вычисления, в том числе применение методов федеративного обучения для работы сложных составных моделей анализа данных на узлах сети, а также функций мониторинга информационной безопасности и анализа защищенности
Контроллер сети Предполагается существование единственного узла с данной ролью, осуществляющего назначение, распределение ролей в сети и обеспечивающего функции настройки и контроля сети. Вместе с тем на контроллер опосредованно ложится обеспечение децентрализации всей сети в виде назначения и перераспределения ролей, а также обеспечения синхронности в работе множества узлов с некоторой определенной ролью. В случае достижения совокупностью устройств с некоторой ролью некоторого порогового значения ресурсопотребления контроллер сети может объявить о необходимости расширения числа устройств с данной ролью
На рисунке приведена обобщенная схема простой версии протокола децентрализованного взаимодействия узлов БСС в виде диаграммы последовательностей ЦМЪ. Вдоль вертикальной оси отмечены участники информационного обмена (узлы Л-О), с течением времени осуществляющие пересылку сообщений друг другу. Основные коммуникации обобщенно показаны стрелками между участниками информационного обмена. На фазе (I) узел А производит инициацию обмена сообщениями посредством
54
генерации и отправки широковещательного запроса, содержащего произвольное натуральное число n и метку времени. По умолчанию узел A получает роль контроллера сети. В течение установленного промежутка времени At узел A ожидает ответы от узлов, которые готовы подключиться к формируемой децентрализованной сети. В случае если в пределах промежутка At какой-либо другой узел также инициирует создание сети, всеми остальными участниками по его метке времени будет фиксироваться более поздний момент времени инициации. В результате такие запросы будут игнорироваться до тех пор, пока не получено сообщение с подтверждением confirm от узла A либо не пройдет контрольный промежуток времени, после окончания которого запрос на первоначальную инициацию со стороны узла A считается устаревшим. Установление сессии завершается распределением ролей на основе прямого их назначения узлом-контроллером - путем отправки серий команд вида est(session_id1).
Рис. Схема протокола децентрализованного взаимодействия
По своей сути формируемая сессия является многосторонней - осуществляется многоадресная коммуникация между всеми участниками информационного обмена. Являясь ключевым элементом децентрализованной сети, и обеспечивая заранее не фиксированное распределение прикладных ролей по узлам сети, узел-контроллер - инициатор сети, тем не менее, представляет собой некоторый элемент централизации данной сетевой архитектуры. В рамках простой версии протокола выход контроллера из сети разрушает функционирующую децентрализованную сеть, переводя ее узлы в состояние физической связанности беспроводными каналами данных - но без какой бы то ни было логической надстройки с использованием ролевой модели. При этом в случае отключения узла-контроллера или его перехода в неработоспособное состояние как в результате намеренных атак, так и каких-либо программно-аппаратных сбоев, множество узлов БСС, по сути, возвращается в состояние, предшествующее установлению многосторонней сессии.
При нормальном функционировании после завершения установления сессии, на фазе (II) осуществляется, собственно, обмен прикладными данными между узлами сети. Пакеты текущей сессии характеризуются наличием общего идентификатора, разделяемого всеми участниками. Фаза (III) является опциональной и возникает в случае, если появляется
55
необходимость изменения распределения ролей между узлами сети. Такое изменение может быть связано с уведомлением узла-контроллера о том, что некоторой узел со специфицированной ролью сигнализирует о намерении завершить свое функционирование в рамках децентрализованной сети. При штатном перераспределении роли существующий программный контекст и необходимые данные пересылаются с завершающего свою работу узла на некоторый новый узел.
Отметим, что реконфигурация сети может быть обусловлена также и спонтанным прекращением функционирования некоторого узла с заданной ролью. В этом случае при отсутствии в сети актуальной копии программного контекста выбывшего узла на новом узле такой контекст вынужденно формируется с нуля, что может сказаться на прикладных сервисах, представляемых сетью, привести к потере части или всех исторических данных, которые могли быть использованы впоследствии в процессе анализа защищенности сети. Кроме того, это также может привести к временному снижению точности или полноты данных мониторинга среды окружения БСС. Как и фаза (II), фаза (IV) включает обмен прикладными и служебными данными в рамках нормального функционирования сети.
В качестве элементов анализа защищенности предлагаемого протокола рассмотрим некоторые возможные действия нарушителя, направленные на нарушение корректности функционирования и компрометацию данного протокола. Атака вида 1 представляет собой атаку типа ОоБ (Оеша1-оГ-8етсе), выполняемую нарушителем на фазе (I) и препятствующую узлу-контроллеру завершить инициирование многосторонней сессии. Путем подмены метки времени на более раннюю узел атакующий способен при каждой такой инициации генерировать собственный запрос на создание сессии, но без последующего подтверждения соп£ Альтернативным вариантом со стороны нарушителя будет осуществление rep1ay-атаки, воспроизводящей запись некоторого предыдущего запроса сессии от некоторого легитимного узла. В качестве средства повышения защищенности против данного вида атак можно применять контроль времени с использованием аппаратных средств сертификации, таких как ТРМ, внедрить механизмы репутации узлов для выявления участников с большим числом неудачно установленных сессий.
Для повышения защищенности против атак вида 1 возможно также введение принудительных задержек перед повторной попыткой инициации многосторонней сессии со стороны некоторого узла. Это обстоятельство может учитываться нарушителем для последовательной имитации некорректных инициаций сессии со стороны всех легитимных узлов. Это возможно путем подмены исходящих адресов узлов сети в трафике, что, в свою очередь, обусловит задержки для всех участников информационного обмена. Для предотвращения такой ситуации понадобится усиление средств аутентификации узлов на основе анализа их структурных и поведенческих характеристик.
В качестве атаки вида 2 рассмотрим атаку несанкционированного изменения роли узла. Атака может осуществляться на фазе (II) или (IV). Атака включает, во-первых, перехват идентификатора роли чужого узла, во-вторых, переопределение роли на себя и установку контекста, в-третьих, блокировку узла-жертвы, например, путем удаленного задания неправильных параметров его адресации, и, в-четвертых, функционирование под новой ролью. Целью такой атаки может стать модификация прикладных функций данной роли, например, искажение данных, хранимых в рамках узла-коллектора или же подмена результатов обработки и анализа данных. Для повышения защищенности против данного вида атак целесообразно применять средства контроля неизменности узла-носителя роли в рамках фазы реконфигурации и последующей фазы функционирования, включающие методы удаленной аттестации.
В качестве дальнейших исследований планируется проработка средств формальной верификации разрабатываемого протокола в качестве средств проверки его корректности и защищенности.
56
Литература
1. Kodali R.K., Narasimha Sarma N. V. S. Experimental WSN setup using XMesh networking protocol // International Conference on Advanced Electronic Systems (ICAES). 2013. P.267-271.
2. Moinet A., Darties B., Baril J.-L. Blockchain based trust & authentication for decentralized sensor networks // arXiv: 1706.01730v1 [cs.CR]. 2017.6 Jun.
3. Senthilkumar A., Chandrasekar C. Secure routing in wireless sensor networks: routing protocols // International Journal on Computer Science and Engineering. 2010. Vol. 2. № 4. P.1266-1270.
4. Ndia J. A Survey of WSN Security protocols // International Journal of Applied computer Science (IJACS). 2017. Vol. 1. Iss. II. P. 1-11.
5. Olakanmi O., Dada A. Wireless Sensor Networks (WSNs): Security and Privacy Issues and Solutions. 2020. P. 1-17.
6. Desnitsky V.A., Kotenko I.V. Security event analysis in XBee-based wireless mesh networks // Proceedings of the 2018 IEEE Conference of Russian Young Researchers in Electrical and Electronic Engineering (ElConRus). 2018. P. 42-44.
References
1. Kodali R.K., Narasimha Sarma N. V. S. Experimental WSN setup using XMesh networking protocol // International Conference on Advanced Electronic Systems (ICAES). 2013. P.267-271.
2. Moinet A., Darties B., Baril J.-L. Blockchain based trust & authentication for decentralized sensor networks // arXiv: 1706.01730v1 [cs.CR]. 2017. 6 Jun.
3. Senthilkumar A., Chandrasekar C. Secure routing in wireless sensor networks: routing protocols // International Journal on Computer Science and Engineering. 2010. Vol. 2. № 4. P.1266-1270.
4. Ndia J. A Survey of WSN Security protocols // International Journal of Applied computer Science (IJACS). 2017. Vol. 1. Iss. II. P. 1-11.
5. Olakanmi O., Dada A. Wireless Sensor Networks (WSNs): Security and Privacy Issues and Solutions. 2020. P. 1-17.
6. Desnitsky V.A., Kotenko I.V. Security event analysis in XBee-based wireless mesh networks // Proceedings of the 2018 IEEE Conference of Russian Young Researchers in Electrical and Electronic Engineering (ElConRus). 2018. P. 42-44.
57