company_banner

Открытый инструмент для мониторинга сети с IoT-устройствами

    Рассказываем, что такое IoT Inspector и как он работает.


    / фото PxHere PD

    О безопасности интернета вещей


    В консалтинговой фирме Bain & Company (PDF, стр.1) говорят, что c 2017 по 2021 год объем IoT-рынка увеличится в два раза: с 235 до 520 млрд долларов. На долю гаджетов для умного дома придется 47 млрд долларов. У экспертов по ИБ такие темпы роста вызывают опасения.

    По данным Avast, в 40% случаев хотя бы одно умное устройство имеет критическую уязвимость, подвергающую опасности всю домашнюю сеть. В Лаборатории Касперского установили, что за первый квартал прошлого года на умные гаджеты обрушилось в три раза больше атак, чем за весь 2017 год.

    Чтобы защитить умные устройства, сотрудники ИТ-компаний и вузов разрабатывают новые программные инструменты. Команда инженеров из Принстонского университета создала открытую платформу Princeton IoT Inspector. Это десктопное приложение, которое мониторит поведение и работу IoT-устройств в реальном времени.

    Как работает система


    IoT Inspector отслеживает активность IoT-девайсов в сети с помощью техники ARP-spoofing. Её можно использовать для анализа трафика устройств. Система собирает анонимную информацию о сетевом трафике для выявления подозрительной активности. При этом такие данные, как IP- и MAC-адреса не учитываются.

    При отправке ARP-пакетов используется следующий код:

    class ArpScan(object):
    
        def __init__(self, host_state):
    
            assert isinstance(host_state, HostState)
    
            self._lock = threading.Lock()
            self._active = True
    
            self._thread = threading.Thread(target=self._arp_scan_thread)
            self._thread.daemon = True
    
        def start(self):
    
            with self._lock:
                self._active = True
    
            utils.log('[ARP Scanning] Starting.')
            self._thread.start()
    
        def _arp_scan_thread(self):
    
            utils.restart_upon_crash(self._arp_scan_thread_helper)
    
        def _arp_scan_thread_helper(self):
    
            while True:
    
                for ip in utils.get_network_ip_range():
    
                    time.sleep(0.05)
    
                    arp_pkt = sc.Ether(dst="ff:ff:ff:ff:ff:ff") / \
                        sc.ARP(pdst=ip, hwdst="ff:ff:ff:ff:ff:ff")
                    sc.sendp(arp_pkt, verbose=0)
    
                    with self._lock:
                        if not self._active:
                            return
    
        def stop(self):
    
            utils.log('[ARP Scanning] Stopping.')
    
            with self._lock:
                self._active = False
    
            self._thread.join()
    
            utils.log('[ARP Scanning] Stopped.')
    

    Проанализировав сеть, сервер IoT Inspector устанавливает, с какими сайтами IoT-гаджеты обменивается данными, как частно они это делают и в каких объёмах передают и получают пакеты. В результате система помогает выявить подозрительные ресурсы, на которые могут отсылаться ПД без ведома пользователя.

    Пока приложение работает только под macOS. Скачать zip-архив можно на сайте проекта. Для установки понадобится macOS High Sierra или Mojave, браузер Firefox или Chrome. В Safari приложение не работает. Руководство по установке и настройке есть на YouTube.

    В этом году разработчики обещали добавить версию для Linux, а в мае — приложение под Windows. Исходный код проекта есть на GitHub.

    Потенциал и недостатки


    Разработчики говорят, что система поможет ИТ-компаниям искать уязвимости в программном обеспечении IoT-девайсов и создавать более защищенные умные устройства. Уже сейчас инструмент может обнаружить уязвимости, связанные с безопасностью и производительностью.

    IoT Inspector находит устройства, которые слишком часто обмениваются данными, даже когда ими никто не пользуется. Также инструмент помогает обнаруживать умные устройства, которые замедляют работу сети, например слишком часто скачивают обновления.

    У IoT Inspector пока есть недостатки. Поскольку приложение экспериментальное, его еще не протестировали на всех IoT-устройствах с разными конфигурациями. Поэтому сам инструмент может оказывать негативное влияние на производительность умных гаджетов. По этой причине авторы не рекомендуют подключать приложение к медицинским гаджетам.

    Сейчас разработчики сфокусировались на устранении багов, но в дальнейшем команда Принстонского университета планирует расширить функциональность своего приложения и внедрить в него алгоритмы машинного обучения. Они помогут увеличить вероятность обнаружения DDoS-атак до 99%. Ознакомиться со всеми идеями исследователей можно в этом PDF-отчете.

    Другие проекты в сфере IoT


    Группа американских разработчиков, которая сотрудничает с Дэнни Гудманом (Danny Goodman), автором книг по JavaScript и HTML, создает инструмент для мониторинга экосистемы интернета вещей — The Thing System.

    Цель проекта — объединить IoT-гаджеты умного дома в единую сеть и централизовать управление. Разработчики говорят, что устройства разных производителей часто не могут взаимодействовать друг с другом и работают разрозненно. Чтобы решить проблему, авторы инициативы создали ПО, которое может работать с разными сетевыми протоколами, гаджетами и клиентскими приложениями.

    Список поддерживаемых девайсов есть на сайте проекта. Там же можно найти исходный код и руководство для быстрого старта.

    Другой открытый проект — PrivateEyePi. Авторы инициативы делятся программными решениями и исходным кодом для создания персонализированной IoT-сети на базе Raspberry Pi. На сайте есть большое количество руководств, с помощью которых можно построить беспроводную сеть из датчиков температуры, влажности, а также настроить систему безопасности для дома.


    / фото PxHere PD

    Будущее подобных решений


    На IoT-рынке все чаще появляются опенсорсные проекты, библиотеки и фреймворки. В Linux Foundation, который также работает в сфере IoT (они создали операционную систему Zephyr), говорят, что инструменты с открытым исходным кодом считаются более защищенными. Такое мнение связано с тем, что в их разработке участвует «коллективный разум» сообщества экспертов по ИБ. Из всего этого можно сделать вывод, что проекты вроде IoT Inspector будут появляться все чаще и помогут сделать этот сегмент устройств более защищенным.



    Посты из Первого блога о корпоративном IaaS:

    ИТ-ГРАД
    vmware iaas provider

    Комментарии 1

      0
      The Things System скорее мертв, чем жив. А вот подобные системы, как ioBroker, Majordomo, Home Assistant и OpenHAB вполне себе живые и растут с каждым днём. Причём первые две с российским участием.

      Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

      Самое читаемое