- •Введение
- •1 Описание выбранной системы интернета вещей
- •1.1 Назначение и цели системы
- •1.2 Функциональные требования
- •1.3 Архитектура системы и ее схематическое представление
- •2 Анализ угроз по модели stride
- •3 Анализ угроз по модели dread
- •4 Анализ угроз по методике фстэк
- •Заключение
- •Приложение а
Министерство науки и высшего образования Российской Федерации Федеральное государственное автономное образовательное учреждение высшего образования
ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР)
Кафедра комплексной информационной безопасности электронно-вычислительных систем (КИБЭВС)
ПОСТРОЕНИЕ МОДЕЛИ УГРОЗ СИСТЕМЫ ИНТЕРНЕТА ВЕЩЕЙ
Отчет по лабораторной работе №3
по дисциплине «Безопасность интернета вещей и сенсорных систем»
-
Студент гр.
____________
Руководитель
Ст. преподаватель каф. КИБЭВС
Калинин Е.О.
____________
Введение
Цель работы: развить практические навыки моделирования угроз безопасности IoT с использованием специализированных инструментов и методологий (STRIDE, DREAD), строить модель угроз для IoT-систем в соответствии с требованиями ФСТЭК, провести анализ конкретной IoT-системы.
Задание выполняется согласно варианту №10 лабораторной №1: «Умная теплица» с автоматическим контролем температуры, влажности, полива и освещения на основе данных с датчиков и прогноза погоды.
1 Описание выбранной системы интернета вещей
1.1 Назначение и цели системы
Система «Умная теплица» предназначена для автоматического контроля микроклимата и систем жизнеобеспечения теплицы, а также для удалённого мониторинга и управления с помощью веб‑ или мобильного приложения.
Цель – обеспечить оптимальные условия роста растений, снизить затраты ресурсов (воды, электроэнергии), минимизировать влияние человеческого фактора и повысить урожайность.
1.2 Функциональные требования
Система обеспечивает следующие ключевые функции:
• Сбор данных – непрерывный или периодический сбор показаний датчиков температуры воздуха, влажности воздуха, влажности почвы, уровня освещённости внутри теплицы; o получение внешних метеоданных (температура, осадки, облачность) от стороннего погодного сервиса по API.
• Управление оборудованием – автоматическое включение / отключение системы полива по пороговым значениям влажности почвы и с учётом прогноза осадков; автоматическое управление отоплением и вентиляцией для поддержания заданного диапазона температуры и влажности воздуха; автоматическое включение/выключение и регулировка яркости искусственного освещения с учётом естественной освещённости и фазы роста растения.
• Конфигурирование и сценарии: задание пользователем профилей выращивания для разных культур (допустимые диапазоны параметров, режимы полива и освещения); настройка расписаний (например, ночное снижение температуры, дневной интенсивный полив, разные режимы по сезонам).
• Мониторинг и визуализация: отображение текущих значений параметров и состояния оборудования в реальном времени в веб‑интерфейсе; построение графиков изменения параметров за выбранный период, экспорт в таблицу.
• Уведомления и аварийные ситуации: формирование и отправка уведомлений при выходе параметров за допустимые пределы или при отказе датчика/узла; регистрация аварийных событий в журнале, отображение их в интерфейсе оператора.
1.3 Архитектура системы и ее схематическое представление
В качестве основы используется четырёхуровневая архитектура IoT: уровень устройств, уровень шлюзов и сетей, сервисный уровень (платформа), уровень приложений.
В качестве центрального контроллера системы выбрана плата на базе микроконтроллера STM32F103RB, которая опрашивает датчики, управляет исполнительными механизмами и организует обмен данными с облачной платформой через Wi‑Fi‑модуль ESP8266.
К контроллеру подключены датчики BME280 (температура, влажность, атмосферное давление), MQ‑135 (концентрация CO₂) и OPT3001 (освещённость), объединённые по шине I²C, что позволяет сократить количество линий ввода‑вывода и упростить разводку аппаратной части.
Для локального отображения текущих показаний используется OLED‑дисплей диагональю 0,96 дюйма, на котором выводятся значения температуры, влажности, давления, уровня CO₂ и освещённости.
Беспроводное подключение к сети Интернет обеспечивается модулем ESP8266, через который микроконтроллер устанавливает соединение с MQTT‑брокером и передаёт в облако телеметрию и служебные сообщения.
Программная часть контроллера реализована на языке C++ с использованием фреймворка Mbed OS, включающего стек TCP/IP и поддержку работы с MQTT‑клиентом.
Прошивка реализует несколько ключевых функций: чтение данных с датчиков, локальный вывод на OLED‑дисплей, формирование и отправку MQTT‑сообщений, приём команд от брокера для ручного управления и изменения пороговых значений, а также автоматическое управление исполнительными устройствами по заданным правилам.
На стороне платформы используется MQTT‑брокер – Mosquitto, принимающий сообщения от устройства, и веб‑приложение, которое визуализирует данные, хранит историю измерений в базе данных и позволяет пользователю задавать пороговые значения и управлять исполнительными механизмами удалённо.
Развёртывание веб‑приложения и брокера выполняется на виртуальном сервере под управлением Ubuntu 22.04, доступ к которому осуществляется через браузер по HTTPS, что обеспечивает удалённый мониторинг теплицы из любой точки с доступом к Интернету.
Предлагается минимум три роли:
• Администратор – управление пользователями, ролями и правами, изменение глобальных параметров системы, сетевых настроек, интеграций, o просмотр всех данных и журналов, управление всеми устройствами.
• Владелец: просмотр состояния теплицы, графиков и отчётов, настройка сценариев полива и освещения в пределах предоставленных прав, получение уведомлений и подтверждение/квитирование аварий.
• Оператор: просмотр состояния оборудования и журналов ошибок, выполнение команд ручного управления (включение/выключение полива, вентиляции) в рамках возможностей.
Структурная схема, представленная на рисунке 1.1 системы «Умная теплица» включает следующие основные блоки:
Блок «Теплица», содержащий датчики микроклимата (BME280, MQ‑135, OPT3001 и дополнительные датчики влажности почвы), микроконтроллер STM32F103RB, исполнительные устройства (реле управления вентиляцией, освещением, насосами системы полива).
Блок «Коммуникационный модуль» – Wi‑Fi‑модуль ESP8266, обеспечивающий соединение с сетью Интернет и обмен данными по MQTT с облачной платформой.
Блок «Облачная платформа» – виртуальный сервер с развёрнутыми компонентами: MQTT‑брокер, серверная часть веб‑приложения и база данных для хранения телеметрии и настроек.
Блок «Пользовательский интерфейс» – веб‑приложение, доступное из браузера, предоставляющее панель мониторинга, графики истории, управление порогами и исполнительными устройствами.
Связи между блоками отображают потоки данных: от датчиков к контроллеру, далее через Wi‑Fi‑модуль к брокеру, затем к приложению и обратно в виде управляющих команд к исполнительным устройствам
Рисунок 1.1 – Структурная схема
Функциональная схема, представленная на рисунке 1.2. отражает последовательность работы системы в типовом режиме.
Основной сценарий работы включает:
периодический опрос датчиков микроклимата микроконтроллером;
локальное отображение значений на OLED‑дисплее;
анализ значений относительно заданных порогов и автоматическое управление исполнительными устройствами (освещение, вентиляция, полив);
формирование и отправку MQTT‑сообщений с данными на брокер;
приём команд от веб‑приложения через MQTT и изменение порогов или состояний исполнительных устройств;
запись данных и событий в базу данных и отображение их пользователю в веб‑интерфейсе.
Рисунок 1.2 – Функциональная схема
Схема сетевых соединений, представленная на рисунке 1.3, показывает топологию сети и используемые протоколы:
связь между микроконтроллером и датчиками реализована по шине I²C;
микроконтроллер подключён к Wi‑Fi‑модулю ESP8266, который обеспечивает выход в локальную сеть/Интернет по стандарту IEEE 802.11;
соединение устройства с MQTT‑брокером на виртуальном сервере осуществляется по протоколу MQTT поверх TCP/IP с использованием TLS;
веб‑клиент пользователя взаимодействует с серверной частью по протоколу HTTPS, получая данные и отправляя команды через REST‑интерфейс и/или WebSocket
Рисунок 1.3 – Схема сетевых соединений
