Статья опубликована в рамках: LXIV Международной научно-практической конференции «Технические науки - от теории к практике» (Россия, г. Новосибирск, 28 ноября 2016 г.)
Наука: Технические науки
Секция: Информатика, вычислительная техника и управление
Скачать книгу(-и): Сборник статей конференции
дипломов
КЛИЕНТ-СЕРВЕРНЫЙ ПОДХОД К ЗАЩИТЕ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ СИСТЕМ ИНТЕРНЕТА ВЕЩЕЙ
CLIENT/SERVER-BASED APPROACH TO SOFTWARE PROTECTION OF INTERNET OF THINGS
Vasily Desnitsky
candidate of Science, senior researcher of the laboratory of computer security problems of SPIIRAS,
Russia, St. Petersburg
Dmitry Chaly
candidate of Science, head of department, P.G. Demidov Yaroslavl state university,
Russia, Yaroslavl
АННОТАЦИЯ
В работе предложен подход к защите программного обеспечения для устройств систем Интернета вещей. Разработаны модель атак и частные алгоритмы программной клиент-серверной защиты устройств.
ABSTRACT
In this paper an approach to software protection for Internet of Things devices proposed. An attack model and particular algorithms of software client-server based protection of devices developed.
Ключевые слова: Интернет вещей; информационная безопасность; клиент-серверный подход.
Keywords: Internet of things; information security; client-server approach.
В работе проведен детальный анализ следующих работ в данной предметной области. В [6, с. 164] понятие Интернета вещей связывается с преобразованием объектов физического мира к интеллектуальным виртуальным объектам с целью унификации всего к единой инфраструктуре для контроля состояний и управления предметами вокруг нас. В [2, c. 2] Интернет вещей определяется как совокупность разного вида взаимосвязанных устройств, систем в широкой области прикладных доменов от персональных носимых устройств до высоко масштабируемых интеллектуальных энергосетей. При этом к отличиям Интернета вещей относят стоимостные и ресурсные ограничения устройств, обуславливаемые наличие сложно решаемых вопросов обеспечения защищенности и приватности в таких системах. В [7, с. 170] на примере интеллектуальной коммуникационной энергосети раскрывается обобщенная структура таких систем, включающая физический уровень генерации, передачи, распределения, потребления электроэнергии, коммуникационный (сетевой) уровень, уровень интеграции оборудования и программно-информационный уровень бизнес-данных системы, таких как показания энергопотребления, данные биллинга, потребительская информация, системные логи и пр. Таким образом, системы Интернета вещей требуют организации тесной кооперации процессов физического окружения, программно-аппаратного уровня, информационного уровня, а также уровня социального взаимодействия конечных пользователей [3, c. 437].
Атакующие воздействия на системы Интернета вещей приобретают особое значение вследствие комбинированного характера атакующих воздействий, включающих одновременно, как манипуляции физического характера, так и программно-информационные воздействия [4, с. 612]. В частности, наличие в системах Интернета вещей устройств с программно-аппаратными платформами общего назначения, таких как ОС Android, открывает потенциальному нарушителю возможности по эксплуатации уязвимостей из существующих баз для компрометации системы на программном уровне [9, с. 49] с последующим получением доступа сенсорам, актуаторам, триггерам, силовым приводам системы для модификации процесса управления физической составляющей системы. Поэтому формирование требований к безопасности таких систем помимо требований конфиденциальности, целостности, доступности и их производных должны учитывать проблематику предметной области целевой системы [7, с. 170].
В отличие от информационно-телекоммуникационных систем, включающих традиционное вычислительное оборудование общего назначения, системы Интернета вещей характеризуются наличием дополнительных зачастую неявных связей между функционалом, производительностью и бизнес-логикой процессов проистекающих в системе, которые необходимо учитывать в процессе построения таких систем и обеспечения их защищенности [1, с. 35]. В частности, в случае беспроводной сенсорной сети на базе протокола ZigBee потребность в получении и декодировании данных от возрастающего числа узлов-отправителей может приводить к коллизиям между данными из разных источников, что возможно обойти посредством механизма временных отсрочек, что в свою очередь негативно сказывается на масштабируемости системы [5, с. 552].
Использование существующих программно-аппаратных платформ, таких как Arduino, Raspberry Pi, Digi XBee и др., традиционно применяемых для прототипирования систем Интернета вещей сопряжено с наличием уязвимостей в них, обусловленных особенностями самой платформы. В [3, c. 437] продемонстрирована незащищенность устройства Arduino Yun, построенного на базе двухуровневой архитектуре со средой выполнения Arduino на базе микроконтроллера ATmega32u4 и Linux-процессором и связующим компонентом. Arduino отличающаяся открытой, достаточно гибкой и расширяемой архитектурой (в том числе возможностью запуска требовательных к ресурсам и коммуникациям Linux-приложений на некоторых видах устройств), широкими и несложными в осуществлении возможностями прошивки устройств и подключения внешних электронных компонентов (RFID-сканеров, разнообразных сенсоров физической среды, многошаговых двигателей, модулей беспроводной связи и пр.), а также большим числом доступных программных библиотек и технической документации. В Alberca) показано, что обратной стороной открытости Arduino является ее подверженность ряду атакующих воздействий. В частности, на Arduino Yun возможна атака по компрометации ОС Linux путем эксплуатации уязвимостей на нижнем уровне прошивки (скетча), что возможно вследствие отсутствия аутентификации и выполнении с root-правами команд Linux, вызываемых из скетча через bridge-компонент. При этом если нарушитель получает неограниченный доступ к файловой системе Linux, то путем модификации системных файлов он способен влиять на параметры отображения IP-адресов и имен хостов, включение/отключение ssh-аутентификации, параметры и ключи Wi-Fi, идентификаторы процессов pid, изменять bridge-компонент, вносить изменения, которые будут сохраняться даже после возврата устройства к фабричным установкам.
Еще одним примером незащищенного устройства Интернета вещей является актуальная в настоящий момент серия 2 устройств Digi XBee, организующих беспроводную коммуникацию в сенсорных сетях с изменяемой топологией. Так, несмотря на наличие функции шифрования передаваемых пакетов при помощи протокола AES, в рамках протокола ZigBee шифруется лишь полезная нагрузка, тогда как структура самого пакета оказывается незащищенной перед MITM-атаками.
В качестве современных тенденций в области Интернета вещей и облачных технологий выделяются интеграция устройств с облачной инфраструктурой, настройки устройств Интернета вещей через облака, коммуникация устройств Интернета вещей с использованием облаков и обеспечение защищенности Интернета вещей при помощи облаков [8, с. 1]. При этом в качестве основных проблем для гибридных систем на основе Интернета вещей и облаков выделяются проблемы совместимости, масшабируемости, самоадаптации, управления качеством сервисов, устойчивости к ошибкам и защищенности.
Решаемая в работе научная задача задается следующим формальным картежом: (S, A, P, R, C, f), где S – система Интернета вещей, включающая в свой состав множество встроенных устройств с заданным программно-аппаратным обеспечением; A – модель возможных атак на систему S; P – множество показателей, включающих, в том числе, показатели защищенности, оперативности, обоснованности и ресурсопотребления, а также показатель сложности атаки; R – множество требований к защите системы на основе показателей P; C – множество компонентов клиент-серверной защиты, выбранных и реализованных с использованием показателей P. Решаемая задача состоит в построении отображения f, которое на основе значений S, A и P позволяет получить набор компонентов клиент-серверной защиты C так, чтобы удовлетворить требования R. Отличительной особенностью данной постановки задачи осуществление выбора на специфичном наборе компонентов защиты с учетом заданной системы показателей, полученных с учетом анализа модели атак на систему Интернета вещей. Необходимость требований защищенности обуславливается набором специфичных атак из A, которым подвержена система. Важность требований оперативности связана с необходимостью в режиме, близком к режиму реального времени осуществлять противодействие атакам на систему. Выполнимость требований обоснованности определяют корректность срабатывания компонентов защиты с минимизацией ошибок первого и второго рода в процессе выявления атак. Важность требований ресурсопотребления непосредственно связана с производительностью системы и вынужденными материальными затратами на процесс защиты системы.
Модель атак включает перечисление и анализ следующих разновидностей киберфизических атакующих воздействий, включающих действия на физическом и программно-информационном уровнях и классифицируемых по типу объекта атаки – элемента целевой системы: (1) атаки на устройства на базе одноплатных компьютеров, таких как Arduino Mega, Raspberry Pi и др.; (2) атаки на мобильные устройства под управлением мобильных ОС; (3) атаки на коммуникационные модули – узлы сенсорной сети (такие как Digi XBee); (4) атаки на сенсоры (RFID-сканеры, сенсоры характеристик физической среды и др.); (5) атаки на актуаторы (многошаговые двигатели, электроприводные краны, ИК-светодиоды и пр.); (6) атаки на СУБД, серверы приложений, веб-серверы, располагающиеся на устройствах системы Интернета вещей с эксплуатацией уязвимостей из существующих баз уязвимостей (таких как база CVE) и уязвимостей нулевого дня; (7) атаки на протоколы взаимодействия устройств, пользователей систем Интернета вещей. Как правило, конкретная атака на систему Интернета веще включает выполняемые совместно воздействия на физические элементы системы и воздействие на ее программную часть, в том числе программные компоненты обработчики событий безопасности устройств и компоненты GUI. При этом, ввиду направленности работы на изучение программной составляющей атак, исключительно физические воздействия, такие как физическое разрушение устройства, его отдельных модулей, проводных каналов связи и др., оставим за пределами данного исследования. Для конкретной атаки показатель ее сложности определяется экспертно и принимает одно из следующих качественных значений на основе предположений об уровне компетенции злоумышленника, его целях, объемов доступных ему ресурсов и ценности атакуемых активов.
Построена комбинированная доменно-ориентированная модель защиты программной части устройств от атакующих воздействий для систем Интернета вещей. Отличия данной модели от существующих доменно-ориентированных представлений, в которых специфицируются проблемно-предметные домены для каждого защитного функционала (как например, домен защищенных коммуникаций, домен пользовательской аутентификации и пр.); данная модель представляет комбинированное представление доменов знаний, ориентированных на конкретные разновидности устройств системы. Так декомпозиция системы на отдельные устройства и их модули позволяет проанализировать атакующие воздействия на каждый из них в соответствии с построенной моделью атак, после чего отобрать и проанализировать лишь те их комбинации, которые могут приводить к критически-важным инцидентам информационной безопасности, возникновению которых нужно противодействовать и реагировать на них. Так, модель раскрывает следующую последовательность действий по моделированию средств защиты: S → R → C, где целевая система S, требования R и компоненты защиты C специфицируются с использованием языка XML. В отличие от существующих UML-моделей средств защиты, ориентированных на визуальный анализ с возможностью генерации базовых шаблонов для написания программного кода компонентов защиты, основанная на XML доменно-ориентированная модель ориентирована на комбинирование компонентов защиты в соответствии с показателями компонентов защиты (в т. ч. нефункциональными показателями) и сложностью каждой из возможных атак.
Разработаны следующие алгоритмы клиент-серверной защиты: (1) алгоритм мониторинга сетевого трафика устройств системы Интернета вещей на основе правил; (2) алгоритм проверки корректности структуры сетевых пакетов трафика между устройствами; (3) алгоритм сигнатурного анализа трафика.
В соответствии с алгоритмом (1) на коммуникационных портах устройств производится съем информации и ее отправка на сторону доверенного сервера в виде данных событий безопасности для их последующего группового анализа. При обнаружении какой-либо известной аномалии на основе анализа характеристик трафика (таких как число полученных пакетов на некоторый коммуникационный интерфейс, число открытых портов, на которые поступили данные) доверенный сервер производит уведомление о возможной инциденте компонента-диспетчера информационной безопасности системы. В качестве признаков атаки сканирования используется правило, фиксирующее получение 3–4 пакетов более чем на 10 открытых портов устройств системы. Подобные правила формулируются также для выявления DoS-атак, атак аномальной активности злонамеренного ПО на устройстве и др.
Алгоритм (2) применяется для проверки корректности структуры пакетов трафика между устройствами. Для каждого типа устройств сформированы шаблоны генерируемых на нем пакетов данных с указанием размеров и диапазонов некоторых ключевых полей, отклонения от которых могут быть признаками replay-атак, атак имперсонализации, инъекции злонамеренного или модифицированного трафика и пр. Алгоритм (3) построен на сигнатурном методе распознавания злонамеренного трафика с использованием аппарата конечных автоматов.
Разработаны модели и программные интерфейсы для построения инфраструктуры серверной части защиты систем Интернета вещей с использованием технологии Apache Hadoop на основе паттерна Map-Reduce. Выбор данной технологии для реализации облачных вычислений обусловлен необходимостью групповой обработки данных клиент-серверных алгоритмов защиты на стороне доверенного сервера. Программные интерфейсы включают наполнение методов map и reduce для алгоритмов анализа сетевого трафика между устройствами системы, тогда как модели задают способ распараллеливания обработки данных и их свертку в следующий кортеж <anomaly_type, devices, detected>, где anomaly_type – тип аномалии, devices – набор устройств, в трафике которых данная аномалия была обнаружена, detected – логическое значение, определяющее наличие или отсутствие данной аномалии. Данное программно-техническое решение ориентировано на применение bash-скриптов в качестве средств автоматизации.
Разработанные алгоритмы защиты были опробованы на примере фрагмента мобильной коммуникационной самоорганизующейся сети на базе устройств Digi XBee. Удаленный контроль состояния устройств программно-аппаратного прототипа системы подтвердил применимость предложенных методов для реализации функций проверки корректности систем Интернета вещей и, как следствие, повышения защищенности таких систем.
Работа выполнена при финансовой поддержке РФФИ (16-37-50035).
Список литературы:
- Десницкий В.А., Котенко И.В. Формирование экспертных знаний для разработки защищенных систем со встроенными устройствами // Проблемы информационной безопасности. Компьютерные системы. - № 4. - 2015. - С. 35–41.
- Abera T., Asokan N., Davi L. Invited: Things, trouble, trust: On building trust in IoT systems // Proceedings of 53nd ACM/EDAC/IEEE Design Automation Conference (DAC). - 2016. - Р. 1–6.
- Alberca C., Pastrana S., Suarez-Tangil G., Palmieri P. Security analysis and exploitation of arduino devices in the internet of things // In Proceedings of the ACM International Conference on Computing Frontiers (CF '16). - 2016. ч Р. 437–442.
- Desnitsky V., Chechulin A., Kotenko I., Levshun D., Kolomeec M. Application of a technique for secure embedded device design based on combining security components for creation of a perimeter protection system // In proceedings of 24th Euromicro International Conference on Parallel, Distributed, and Network-Based Processing (PDP 2016). - 2016. - Р. 609–616.
- Kong L., Liu X. mZig: Enabling Multi-Packet Reception in ZigBee // In Proceedings of the 21st Annual International Conference on Mobile Computing and Networking (MobiCom '15). - 2015. - Р. 552–565.
- Madakam S., Ramaswamy R., Tripathi S. Internet of Things (IoT): A Literature Review // Journal of Computer and Communications. - vol. 3. - 2015. - Р. 164–173.
- Shapsough S., Qatan F., Aburukba R., Aloul F., Al Ali A. R. Smart grid cyber security: Challenges and solutions // In proceedings of 2015 International Conference on Smart Grid and Clean Energy Technologies (ICSGCE). - 2015. - Р. 170–175.
- Villari M., Al-Anbuky A., Celesti A, Moessner K. Leveraging the Internet of Things: Integration of Sensors and Cloud Computing Systems // International Journal of Distributed Sensor Networks. - vol. 12. - № 7. – 2016, Р. 1–4.
- Vylegzhanina V., Schmidt D.C., White J. Gaps and future directions in mobile security research // In Proceedings of the 3rd International Workshop on Mobile Development Lifecycle (MobileDeLi 2015). - 2015. - Р. 49–50.
дипломов
Оставить комментарий