Инструменты для пентеста “Умных вещей” (IoT)
Что такое ZigBee?
Интернет вещей (IoT) - это то, что большинство экспертов считают следующим шагом интернет-революции, когда физические объекты неизменно связаны с реальным и виртуальным миром одновременно. Подключенные устройства теперь имеют возможность общаться друг с другом по беспроводным каналам, и ZigBee является ведущим стандартом беспроводной связи, применимым к устройствам IoT.
Следовательно, ZigBee - это открытый глобальный стандарт беспроводной связи, разработанный для удовлетворения уникальных потребностей интеллектуальной связи между устройствами. Это позволяет большому разнообразию приложений для умного дома подключаться к Интернету (например, облачному сервису) и управляться / контролироваться с помощью дистанционного управления с поддержкой ZigBee. По сравнению с другими стандартами беспроводной связи, ZigBee кажется лучшим вариантом для умного дома:
Преимущества предпочтения ZigBee перед другими стандартами: низкое энергопотребление / длительный срок службы батареи, поддержка значительного числа узлов в одной сети (до 65 000), упрощенное развертывание, низкие затраты и использование по всему миру.
Стандарт ZigBee работает поверх физической спецификации радиосвязи IEEE 802.15.4.
ZigBee основан на топологии звезды или сетки. Топология сетки расширяет охват сетей и устраняет отдельные точки отказа.
В целом, создатели ZigBee сделали его безопасным, но есть достаточно доказательств, указывающих на обратное. Такие факторы, как недорогие устройства, удобство использования и совместимость, имеют приоритет над реализацией безопасности, по крайней мере, так считают некоторые исследователи в области безопасности. В этой статье представлены некоторые мысли, касающиеся безопасности сетей ZigBee.
Проблемы безопасности в ZigBee
Создание стандартного взлома ZigBee необходимо для обеспечения безопасности сетей, безопасности фрейма, передачи ключей и установления. Безопасность реализована в сети и на уровне поддержки приложений (APS), который является подуровнем уровня приложений. Криптографическая защита включена, когда различные устройства в сети ZigBee обмениваются данными друг с другом. Поэтому крайне важно, чтобы ключи шифрования всегда были надежно защищены. Существует два типа ключей безопасности:
Еще один способ проникнуть в сети ZigBee - это физический доступ к некоторым типам интеллектуальных домашних устройств, таких как датчики температуры и выключатели света. Из-за их низкой стоимости и ограниченных возможностей предполагается, что их оборудование не защищено от несанкционированного доступа, что, в свою очередь, может быть достаточным для того, чтобы злоумышленник мог получить доступ к конфиденциальной информации.
Типы атак против ZigBee
ZigBee и протокол 802.15.4 были разработаны с учетом безопасности, но разработчики иногда не очень хорошо её внедряют. Возможные атаки обычно можно разделить на три категории: физические, ключевые и повтор / инъекция.
Физические атаки
Прямое физическое взаимодействие может оказаться вредным для целостности целевой сети ZigBee. Фактически, многие радиостанции, находящиеся в этой сети, используют жестко закодированный ключ шифрования, загружаемый в оперативную память после включения устройства. Распространяясь на всех устройствах в сети ZigBee, вероятность их замены очень мала. Вооружившись этими знаниями, хакеры могут прибегнуть к настройке специальных последовательных интерфейсов на устройстве ZigBee, чтобы перехватывать ключи шифрования, перемещаемые из флэш-памяти в ОЗУ при включении питания. Эксплойт может быть выполнен с помощью различных недорогих инструментов с открытым исходным кодом, например,
После физического подключения к устройству ZigBee через простой последовательный интерфейс, вооруженный Bus Pirate, злоумышленник может раскрыть безопасность всей сети ZigBee и потенциально перехватить и изменить данные.
Ключевые атаки – инструмент KillerBee
Удаленные атаки, направленные на взятие ключей шифрования, возможны благодаря методологиям, известным как передача ключей по беспроводной сети (OTA) и предварительный общий ключ, присущий ZigBee. OTA обычно применяется к более сложным сетям ZigBee для обеспечения большей безопасности и обновления. Его защиту можно обойти с помощью устройства, которое имитирует узел ZigBee и выбирает передачи, которыми обмениваются внутренние устройства; эти пакеты могут быть проанализированы или расшифрованы позже. Атаку такого рода будет почти невозможно обнаружить.
KillerBee - это набор инструментов, объединяющий аппаратное и программное обеспечение, которое будет эффективно перехватывать и анализировать пакеты 802.15.4. Удаленные атаки также отличаются высокой скрытностью, и злоумышленник может даже расширить зону действия, создав мощные передатчики или специальные антенны Yagi.
Инъекционные атаки
Это атака на основе ключей в сочетании с воспроизведением и / или внедрением пакетов, цель которой состоит в том, чтобы обмануть устройства ZigBee и выполнить несанкционированные действия. Устройства ZigBee особенно уязвимы к этим атакам, поскольку они оснащены облегченной конструкцией протокола со слабой защитой от повторов. Следовательно, захваченные пакеты от узлов ZigBee отправляются обратно в сценарии атаки воспроизведения, чтобы было похоже, что они исходят от исходного узла. Минимальной проверки сеанса устройствами ZigBee будет недостаточно для раскрытия уловки, и сеть будет обрабатывать трафик так, как будто он поступает с действительного узла (подробнее о атаках воспроизведения в сетях ZigBee
Инструмент SecBee
Профили приложений - это унифицированные функциональные возможности устройств ZigBee, выпускаемых разными поставщиками, которые позволяют всем этим различным устройствам обмениваться данными. Примером профиля приложения является профиль общедоступного приложения домашней автоматизации ZigBee (HAPAP), предназначенный для обмена управляющими сообщениями между приложениями беспроводной домашней автоматизации - например, команды для включения / выключения интеллектуальной лампы или отправки сигнала оповещения, если датчик обнаруживает движение.
Все сертифицированные устройства каждого производителя должны иметь возможность использовать стандартный интерфейс и работоспособность этого профиля, но ключевой момент здесь - это когда ненастроенное устройство впервые подключается к сети ZigBee. По мнению экспертов, работа стандартного ссылочного ключа TC создает угрозу безопасности для секретности сетевого ключа. Этот резервный механизм активируется «в случае, когда присоединяющееся устройство неизвестно или с ним не связаны никакие определенные полномочия». Поэтому момент, когда устройство присоединяется к сети ZigBee через ключ связи TC по умолчанию, является критически важным, поскольку это может привести к компрометации ключа и соответственно конфиденциальности всей сети связи.
Исследователи разработали SecBee - новый инструмент тестирования безопасности ZigBee, основанный на KillerBee и scapy-radio. Они используют его для оценки безопасности реальных устройств, таких как система домашней автоматизации, дверной замок с поддержкой ZigBee и интеллектуальное световое решение. Характерно, что для всех трех из них были упрощенная настройка и использование, а также тот факт, что процедуре сопряжения между настроенными и ненастроенными устройствами не хватает надежности безопасности. Хотя временные рамки для прослушивания обмениваемого сетевого ключа очень ограничены, но прямая атака хакера на пользователя, может преодолеть это препятствие. Вся хакерская атака разворачивается следующим образом:
ZigDiggity a ZigBee Hacking Toolkit - это основанная на Python среда тестирования на проникновение IoT (Internet of Things)
ZigDiggity 2.0 , фреймворк для тестирования на проникновение ZigBee, создан Мэттом Глисоном и Фрэнсисом Брауном.
Эта среда тестирования на проникновение ZigBee позволяет профессионалам, аудиторам и разработчикам в области кибербезопасности выполнять сложные взаимодействия с сетями ZigBee, используя одно устройство.
Текущая версия ZigDiggity предназначена исключительно для использования с Raspbee, а бонусом RaspBee является дополнение ZigBee для Raspberry Pi с микропрограммой.
Аппаратные средства: Raspberry Pi 3 B + и Raspbee
RaspBee обеспечивает:
а) Подключаемый модуль с радиомодулем (IEEE 802.15.4) для Raspberry Pi
б) Использует Raspberry Pi в качестве шлюза LAN-ZigBee
в) Частота: 2,4 ГГц ISM-диапазон, может использоваться во всем мире
г) На основе однокристального микроконтроллера Atmel ATmega256RFR2
д) С прошивкой ZigBee и обширным пакетом программного обеспечения для управления до 200 устройств
Монтаж :
Используя стандартную установку Raspbian, выполните следующие действия:
Выберите «Дополнительные параметры / Последовательный»
Выберите НЕТ, в "Хотите ли вы, чтобы оболочка входа была доступна через последовательный порт?"
Выберите ДА, чтобы включить серийный номер
Перезагрузите Raspberry Pi
Установить GCFFlasher можно
Перепрошить прошивку Raspbee
Установите требования Python, используя
Патч scapy
Установите wireshark на устройство с помощью
Использование ZigDiggity инструментария взлома ZigBee
В настоящее время скрипты доступны в корне хранилища, все они могут быть запущены с использованием Python3:
При работе с Wireshark могут потребоваться права root.
Сценарии для взлома ZigBee
• ack_attack.py - выполняет аттестацию атаки против данной сети.
• beacon.py - отправляет один маяк и слушает в течение короткого времени. Предназначен для поиска сетей, которые находятся рядом с вами.
• find_locks.py - исследует сетевой трафик на канале, чтобы определить, похоже ли поведение устройства на блокировку. Отображает, какие устройства он считает замками.
• insecure_rejoin.py - запускает попытку повторного подключения в целевой сети.
• listen.py - прослушивает канал, передавая весь вывод в wireshark для просмотра.
• scan.py - Переходит между каналами прослушивания и передачи данных в wireshark для просмотра.
• unlock.py - пытается разблокировать целевой замок
Скачать ZigDiggity можно здесь
Узнать больше (англ.) здесь
Этический хакинг - инструмент
.В отличие от предыдущего случая, - угон умных лампочек и подключение их к поддельной сети не требует знания активных секретных ключей. Лампочки всегда отправляют запросы маяка, чтобы найти новую сеть для присоединения. Отправив команду «сброс к заводским настройкам по умолчанию», хакер заставит лампу искать сети ZigBee, которые автоматически присоединятся к первой доступной сети, даже не взаимодействуя с пользователем.
В рамках так называемого проекта «Карта вещей в Интернете» была создана база данных с возможностью поиска -
Заключение
ZigBee - это надежный стандарт при правильном применении. Тем не менее, эта статья показала, что по тем или иным причинам это не совсем так.
Недостатки и ограничения, обнаруженные в ZigBee, были созданы самими производителями. Компании хотят выпускать всё новые и новые продукты, которые будут подключены к Интернету, но с целью снижения затрат - мало внимания уделяют требованиям безопасности.
Предполагается, что через несколько лет на каждую семью будет приходиться огромное количество интеллектуальных устройств. Существуют серьезные проблемы с безопасностью, связанные с домашней автоматизацией, поскольку она генерирует огромные объемы данных, которые можно связать с человеком. Поставщики должны решить проблемы безопасности и конфиденциальности как можно скорее, чтобы минимизировать угрозы.
Что такое ZigBee?
Интернет вещей (IoT) - это то, что большинство экспертов считают следующим шагом интернет-революции, когда физические объекты неизменно связаны с реальным и виртуальным миром одновременно. Подключенные устройства теперь имеют возможность общаться друг с другом по беспроводным каналам, и ZigBee является ведущим стандартом беспроводной связи, применимым к устройствам IoT.
Следовательно, ZigBee - это открытый глобальный стандарт беспроводной связи, разработанный для удовлетворения уникальных потребностей интеллектуальной связи между устройствами. Это позволяет большому разнообразию приложений для умного дома подключаться к Интернету (например, облачному сервису) и управляться / контролироваться с помощью дистанционного управления с поддержкой ZigBee. По сравнению с другими стандартами беспроводной связи, ZigBee кажется лучшим вариантом для умного дома:
Преимущества предпочтения ZigBee перед другими стандартами: низкое энергопотребление / длительный срок службы батареи, поддержка значительного числа узлов в одной сети (до 65 000), упрощенное развертывание, низкие затраты и использование по всему миру.
Стандарт ZigBee работает поверх физической спецификации радиосвязи IEEE 802.15.4.
ZigBee основан на топологии звезды или сетки. Топология сетки расширяет охват сетей и устраняет отдельные точки отказа.
В целом, создатели ZigBee сделали его безопасным, но есть достаточно доказательств, указывающих на обратное. Такие факторы, как недорогие устройства, удобство использования и совместимость, имеют приоритет над реализацией безопасности, по крайней мере, так считают некоторые исследователи в области безопасности. В этой статье представлены некоторые мысли, касающиеся безопасности сетей ZigBee.
Проблемы безопасности в ZigBee
Создание стандартного взлома ZigBee необходимо для обеспечения безопасности сетей, безопасности фрейма, передачи ключей и установления. Безопасность реализована в сети и на уровне поддержки приложений (APS), который является подуровнем уровня приложений. Криптографическая защита включена, когда различные устройства в сети ZigBee обмениваются данными друг с другом. Поэтому крайне важно, чтобы ключи шифрования всегда были надежно защищены. Существует два типа ключей безопасности:
- Сетевой ключ - это 128-битный ключ, который распределяется и используется всеми устройствами в сети для защиты широковещательной связи.
- Ключ канала связи , также 128-битный, служит средством защиты одноадресной связи на прикладном уровне и используется только двумя устройствами.
Еще один способ проникнуть в сети ZigBee - это физический доступ к некоторым типам интеллектуальных домашних устройств, таких как датчики температуры и выключатели света. Из-за их низкой стоимости и ограниченных возможностей предполагается, что их оборудование не защищено от несанкционированного доступа, что, в свою очередь, может быть достаточным для того, чтобы злоумышленник мог получить доступ к конфиденциальной информации.
Типы атак против ZigBee
ZigBee и протокол 802.15.4 были разработаны с учетом безопасности, но разработчики иногда не очень хорошо её внедряют. Возможные атаки обычно можно разделить на три категории: физические, ключевые и повтор / инъекция.
Физические атаки
Прямое физическое взаимодействие может оказаться вредным для целостности целевой сети ZigBee. Фактически, многие радиостанции, находящиеся в этой сети, используют жестко закодированный ключ шифрования, загружаемый в оперативную память после включения устройства. Распространяясь на всех устройствах в сети ZigBee, вероятность их замены очень мала. Вооружившись этими знаниями, хакеры могут прибегнуть к настройке специальных последовательных интерфейсов на устройстве ZigBee, чтобы перехватывать ключи шифрования, перемещаемые из флэш-памяти в ОЗУ при включении питания. Эксплойт может быть выполнен с помощью различных недорогих инструментов с открытым исходным кодом, например,
Ссылка скрыта от гостей
и
Ссылка скрыта от гостей
После физического подключения к устройству ZigBee через простой последовательный интерфейс, вооруженный Bus Pirate, злоумышленник может раскрыть безопасность всей сети ZigBee и потенциально перехватить и изменить данные.
Ключевые атаки – инструмент KillerBee
Удаленные атаки, направленные на взятие ключей шифрования, возможны благодаря методологиям, известным как передача ключей по беспроводной сети (OTA) и предварительный общий ключ, присущий ZigBee. OTA обычно применяется к более сложным сетям ZigBee для обеспечения большей безопасности и обновления. Его защиту можно обойти с помощью устройства, которое имитирует узел ZigBee и выбирает передачи, которыми обмениваются внутренние устройства; эти пакеты могут быть проанализированы или расшифрованы позже. Атаку такого рода будет почти невозможно обнаружить.
KillerBee - это набор инструментов, объединяющий аппаратное и программное обеспечение, которое будет эффективно перехватывать и анализировать пакеты 802.15.4. Удаленные атаки также отличаются высокой скрытностью, и злоумышленник может даже расширить зону действия, создав мощные передатчики или специальные антенны Yagi.
Инъекционные атаки
Это атака на основе ключей в сочетании с воспроизведением и / или внедрением пакетов, цель которой состоит в том, чтобы обмануть устройства ZigBee и выполнить несанкционированные действия. Устройства ZigBee особенно уязвимы к этим атакам, поскольку они оснащены облегченной конструкцией протокола со слабой защитой от повторов. Следовательно, захваченные пакеты от узлов ZigBee отправляются обратно в сценарии атаки воспроизведения, чтобы было похоже, что они исходят от исходного узла. Минимальной проверки сеанса устройствами ZigBee будет недостаточно для раскрытия уловки, и сеть будет обрабатывать трафик так, как будто он поступает с действительного узла (подробнее о атаках воспроизведения в сетях ZigBee
Ссылка скрыта от гостей
документ
Ссылка скрыта от гостей
на английском ).Инструмент SecBee
Профили приложений - это унифицированные функциональные возможности устройств ZigBee, выпускаемых разными поставщиками, которые позволяют всем этим различным устройствам обмениваться данными. Примером профиля приложения является профиль общедоступного приложения домашней автоматизации ZigBee (HAPAP), предназначенный для обмена управляющими сообщениями между приложениями беспроводной домашней автоматизации - например, команды для включения / выключения интеллектуальной лампы или отправки сигнала оповещения, если датчик обнаруживает движение.
Все сертифицированные устройства каждого производителя должны иметь возможность использовать стандартный интерфейс и работоспособность этого профиля, но ключевой момент здесь - это когда ненастроенное устройство впервые подключается к сети ZigBee. По мнению экспертов, работа стандартного ссылочного ключа TC создает угрозу безопасности для секретности сетевого ключа. Этот резервный механизм активируется «в случае, когда присоединяющееся устройство неизвестно или с ним не связаны никакие определенные полномочия». Поэтому момент, когда устройство присоединяется к сети ZigBee через ключ связи TC по умолчанию, является критически важным, поскольку это может привести к компрометации ключа и соответственно конфиденциальности всей сети связи.
Исследователи разработали SecBee - новый инструмент тестирования безопасности ZigBee, основанный на KillerBee и scapy-radio. Они используют его для оценки безопасности реальных устройств, таких как система домашней автоматизации, дверной замок с поддержкой ZigBee и интеллектуальное световое решение. Характерно, что для всех трех из них были упрощенная настройка и использование, а также тот факт, что процедуре сопряжения между настроенными и ненастроенными устройствами не хватает надежности безопасности. Хотя временные рамки для прослушивания обмениваемого сетевого ключа очень ограничены, но прямая атака хакера на пользователя, может преодолеть это препятствие. Вся хакерская атака разворачивается следующим образом:
- Глушение сигнала - ZigBee разработан для энергосбережения и связан с низким энергопотреблением, а нацеливание шума на канал ZigBee легко затруднит связь;
- Повторное соединение для восстановления подключения
- Переконфигурация - типичный неосведомленный пользователь, заметив потерю соединения, попытается восстановить соединение, обычно, например, нажатием кнопки на пульте дистанционного управления;
- Получение переданного сетевого ключа - как упоминалось выше, если пользователь успешно нацелен, хакер использует повторный анализ в своих интересах и извлекает ключ;
- Злоумышленник берет на себя управление системой, поскольку вся безопасность зависит от секретности ключа.
ZigDiggity a ZigBee Hacking Toolkit - это основанная на Python среда тестирования на проникновение IoT (Internet of Things)
ZigDiggity 2.0 , фреймворк для тестирования на проникновение ZigBee, создан Мэттом Глисоном и Фрэнсисом Брауном.
Эта среда тестирования на проникновение ZigBee позволяет профессионалам, аудиторам и разработчикам в области кибербезопасности выполнять сложные взаимодействия с сетями ZigBee, используя одно устройство.
Текущая версия ZigDiggity предназначена исключительно для использования с Raspbee, а бонусом RaspBee является дополнение ZigBee для Raspberry Pi с микропрограммой.
Аппаратные средства: Raspberry Pi 3 B + и Raspbee
RaspBee обеспечивает:
а) Подключаемый модуль с радиомодулем (IEEE 802.15.4) для Raspberry Pi
б) Использует Raspberry Pi в качестве шлюза LAN-ZigBee
в) Частота: 2,4 ГГц ISM-диапазон, может использоваться во всем мире
г) На основе однокристального микроконтроллера Atmel ATmega256RFR2
д) С прошивкой ZigBee и обширным пакетом программного обеспечения для управления до 200 устройств
Монтаж :
Используя стандартную установку Raspbian, выполните следующие действия:
- Подключите Raspbee к Raspberry Pi
Код:
sudo raspbi-config
Выберите «Дополнительные параметры / Последовательный»
Выберите НЕТ, в "Хотите ли вы, чтобы оболочка входа была доступна через последовательный порт?"
Выберите ДА, чтобы включить серийный номер
Перезагрузите Raspberry Pi
Установить GCFFlasher можно
Ссылка скрыта от гостей
Перепрошить прошивку Raspbee
Код:
sudo GCFFlasher -f firmware/zigdiggity_raspbee.bin
sudo GCFFlasher -r
Установите требования Python, используя
Код:
pip3 install -r requirements.txt
Патч scapy
Код:
sudo cp patch/zigbee.py /usr/local/lib/python3.5/dist- packages/scapy/layers/zigbee.py
Установите wireshark на устройство с помощью
Код:
sudo apt-get install wireshark
Использование ZigDiggity инструментария взлома ZigBee
В настоящее время скрипты доступны в корне хранилища, все они могут быть запущены с использованием Python3:
Код:
python3 listen.py -c 15
При работе с Wireshark могут потребоваться права root.
Сценарии для взлома ZigBee
• ack_attack.py - выполняет аттестацию атаки против данной сети.
• beacon.py - отправляет один маяк и слушает в течение короткого времени. Предназначен для поиска сетей, которые находятся рядом с вами.
• find_locks.py - исследует сетевой трафик на канале, чтобы определить, похоже ли поведение устройства на блокировку. Отображает, какие устройства он считает замками.
• insecure_rejoin.py - запускает попытку повторного подключения в целевой сети.
• listen.py - прослушивает канал, передавая весь вывод в wireshark для просмотра.
• scan.py - Переходит между каналами прослушивания и передачи данных в wireshark для просмотра.
• unlock.py - пытается разблокировать целевой замок
Скачать ZigDiggity можно здесь
Узнать больше (англ.) здесь
Этический хакинг - инструмент
Ссылка скрыта от гостей
.В отличие от предыдущего случая, - угон умных лампочек и подключение их к поддельной сети не требует знания активных секретных ключей. Лампочки всегда отправляют запросы маяка, чтобы найти новую сеть для присоединения. Отправив команду «сброс к заводским настройкам по умолчанию», хакер заставит лампу искать сети ZigBee, которые автоматически присоединятся к первой доступной сети, даже не взаимодействуя с пользователем.
В рамках так называемого проекта «Карта вещей в Интернете» была создана база данных с возможностью поиска -
Ссылка скрыта от гостей
– первая поисковая система для устройств, подключенных к Интернету. Информация для Shodan собирается с помощью дронов Flying Drone с системой отслеживания, способной выявлять данные, излучаемые устройствами IoT. Для того, чтобы проиллюстрировать свою эффективность, исследователи показали как беспилотнику удалось найти почти 1600 интернет-устройств на протяжении 18-минутного полета (см Austin, TX карту
Ссылка скрыта от гостей
).Заключение
ZigBee - это надежный стандарт при правильном применении. Тем не менее, эта статья показала, что по тем или иным причинам это не совсем так.
Недостатки и ограничения, обнаруженные в ZigBee, были созданы самими производителями. Компании хотят выпускать всё новые и новые продукты, которые будут подключены к Интернету, но с целью снижения затрат - мало внимания уделяют требованиям безопасности.
Предполагается, что через несколько лет на каждую семью будет приходиться огромное количество интеллектуальных устройств. Существуют серьезные проблемы с безопасностью, связанные с домашней автоматизацией, поскольку она генерирует огромные объемы данных, которые можно связать с человеком. Поставщики должны решить проблемы безопасности и конфиденциальности как можно скорее, чтобы минимизировать угрозы.
Последнее редактирование: