Главная » Хабрахабр » [Из песочницы] Как взломать завод: системы радиоуправления как слабое звено современного производства

[Из песочницы] Как взломать завод: системы радиоуправления как слабое звено современного производства

В ходе исследования мы протестировали оборудование от семи крупных вендоров, чтобы найти уязвимости в системах его защиты, и способы, которыми преступники могут воспользоваться, желая перехватить управление этим оборудованием. Компания Trend Micro выпустила исследование, в котором рассмотрела уязвимости системы дистанционного радиоуправления промышленного оборудования и то, насколько просто злоумышленники могут их использовать для атак на промышленные объекты

Недавно мы (специалисты Trend Micro) опубликовали результаты очередного исследования, которое на этот раз касается систем дистанционного радиоуправления, используемых для работы с промышленным оборудованием. Потенциально их можно использовать для саботажа производства, воровства и даже шантажа.
И нашли, что характерно, и уязвимости, и способы.

Защита VS Атака: анализ уязвимостей

Для своего исследования мы использовали образцы оборудования от семи наиболее популярных мировых производителей систем радиоуправления, включая Saga, Circuit Design, Juuko, Autec, Hetronic, Elca и Telecrane. Оборудование Saga и Juuko исследовалось в лабораторных условиях, чтобы лучше изучить используемые протоколы, а взлом систем управления остальных пяти вендоров проводился непосредственно в полевых условиях. Поиск уязвимостей вёлся по пяти основным направлениям: запись/воспроизведение команд пульта ДУ, подмена команд от пульта ДУ, инициация аварийного отключения оборудования, подмена подключенного к системе пульта ДУ и перепрограммирование оборудования.

Статус N/A означает, что устройство в принципе не поддерживает тестируемые функции (например, функцию аварийного отключения).
Итоги исследований.

любой единожды перехваченный пакет данных можно использовать в будущем), полное отсутствие или слабую криптографическую защиту данных (передаваемую между приёмником и передатчиком последовательность команд легко можно расшифровать), а также отсутствие программных методов защиты (ПО для перепрошивки передатчиков и приёмников никак не защищено от использования злоумышленниками в своих целях). В ходе исследований также были выявлены основные слабые места в используемых протоколах передачи данных и ПО, включая отсутствие изменяющегося кода (т.е.

В остальных случаях препятствием станет огромное количество используемых единиц оборудования, отсутствие удобного доступа к нужным компонентам и то, что часть его настолько устарела, что на аппаратном уровне не поддерживает нужные функции, например, шифрование. При этом стоить отметить, что разработать «заплатки» для всех трёх проблем крайне просто, но внедрить их быстро и эффективно можно только для ПО, которое поддерживает добавление системы контроля доступа.


Примеры оборудования, которое использовалось в ходе исследований

Запись/воспроизведение команд

Чтобы протестировать системы на эту уязвимость, мы записали «следы» команды «Пуск», нажатий на различные кнопки пульта и команды аварийного отключения устройства. Воспроизводя их затем, они подтвердили сразу три важных факта:

  1. в системе нет никаких защитных механизмов, вроде изменяющегося кода, так как записанные ранее сигналы воспринимались приёмниками как оригинальные;
  2. злоумышленник вполне может включить отключенное устройство при помощи этих сигналов;
  3. команда для инициации аварийного отключения закодирована таким образом, что её легко можно применять в качестве отдельного типа атаки.

В ходе атак использовались различные SDR-устройства, включая Ettus USRP N210, BladeRF x115 и HackRF. В итоге мы пришли к выводу, что для подобных атак подходит практически любое устройство этого типа достаточной мощности, оборудованное передающей антенной. Ettus USRP N210 применялось в связке с GNU Radio, а для BladeRF x115 были написаны специальные скрипты.


Скрипты и схема GNU Radio, написанные для записи и воспроизведения команд

Во всех испытаниях, которые проводились как в лабораторных условиях, так и на местах, схема записи/воспроизведения команд работала без дополнительных настроек или модификаций, что подтверждает простоту проведения подобных атак и почти полную незащищенность от них используемого оборудования.

Подмена команд

Для применения этого типа атак необходимо расшифровать используемые системами дистанционного управления протоколы, причём как на уровне ПО, так и на уровне аппаратной части передатчика. Как и для атаки с использованием записи/воспроизведения ими были записаны основные команды, которые применяются для управления устройствами, но в этот раз целью было записать все возможные комбинации нажатий кнопок, включая короткие и длинные нажатия.


Диагностический анализатор, подключенный к радиопередатчику для расшифровки данных

С той же целью мы изучили всю доступную документацию и воспользовались приложением Universal Radio Hacker для изучения формы радиосигналов. Это было необходимо для того, чтобы начать разбираться в схемах демодуляции, используемых в различных пультах ДУ. После этого разработали скрипты для проведения атаки, а работа с устройствами Juuko даже привела к созданию специального аппаратного модуля для взлома, который мы назвали RFQuack.

Инициация аварийного отключения

По сути, инициация аварийного отключения — это логичное продолжение первых двух типов атак. Для её осуществления пульт ДУ, используемый злоумышленниками, постоянно отправляет на оборудование пакеты, которые отвечают за команды перезагрузки или аварийного отключения. Причём, даже при наличии оригинального пульта, который отдаёт в этот момент оборудованию другие команды, эти пакеты всё равно обрабатывались в ходе испытаний и приводили к отключению/перезагрузке устройства. Подобный метод легко можно использовать для саботажа или вымогательства, полностью парализовав работу отдельных единиц оборудования или массовое его отключение.

Подмена пульта ДУ

В обоих протестированных устройствах (Saga и Juuko) для проверки этого вектора атаки сперва пришлось активировать функцию сопряжения, которая по умолчанию отключена. После этого необходимо было включить приёмник и нажимать на определённые кнопки на пульте ДУ. Мы перехватили переданные в процессе сопряжения сигналы при помощи BladeRF и повторно их воспроизвели, после чего приёмник перестал принимать команды от оригинального пульта ДУ, восприняв новый источник сигналов как основной.

Более того, благодаря уязвимости протокола передачи данных для сопряжения подобный метод сработал даже с устройствами Juuko, хотя в них для завершения сопряжения необходимо нажать на специальную кнопку на самом оборудовании. При этом сам используемый в процессе сопряжения протокол никак не защищён от взлома и мало чем отличается от обычных команд, передающихся от пульта ДУ к приёмнику. Впоследствии при помощи этого метода злоумышленники смогут инициировать массовые DoS-атаки на оборудование и саботировать его работу в рамках целого завода или автоматизированного дока/склада.

Перепрограммирование

Для проверки этого вектора атаки использовалась копия ПО для прошивки и, в случае необходимости, специальный донгл. Образцы Juuko и Saga таким образом удалось перепрограммировать в лабораторных условиях, а для оборудования Telecrane возможность перепрограммирования была подтверждена на теоретическом уровне, исходя из техдокументации устройства.


Интерфейс ПО для перепрошивки устройств Saga

Помимо этого, ПО предназначено только для работы с ОС Windows (причём, в некоторых случаях, с устаревшей Windows XP), которая остаётся наиболее популярной ОС для распространения вредоносных программ. Во всех трёх случаях было обнаружено, что в ПО для работы с прошивками устройств отсутствуют механизмы аутентификации пользователей и защиты от стороннего вмешательства.

Единственным условием для успешного использования этого вектора атаки является доступ к компьютеру, который применяется для перепрошивки систем ДУ-оборудования. В случае с оборудованием Saga, злоумышленники также могут достаточно легко получить доступ к BSL-паролям и параметрам, которые записываются во флеш-память устройства и, соответственно, модифицировать прошивку, извлечь её файлы для дальнейшего изучения, внедрить собственный вредоносный код для отложенной активации и даже инициировать полное стирание информации из памяти, чтобы скрыть следы своей деятельности.

Выводы

Главный вывод, который можно сделать из отчёта (A Security Analysis of Radio Remote Controllers for Industrial Applications), это то что так называемые системы защиты этого оборудования от атак злоумышленников не выдерживают никакой критики, а в некоторых устройствах вообще не предусмотрены. Главными причинами сложившейся ситуации мы считаем долгий срок службы этого оборудования (жизненный цикл некоторых из исследуемых образцов закончился много лет назад), высокую стоимость его замены, сложность в обновлении ПО и внедрении каких-либо новых систем безопасности.

Как показали результаты исследования, воспользоваться существующими уязвимостями достаточно просто, поэтому необходимо выработать системный подход к их устранению, включая регулярный выпуск обновлений ПО и прошивок, переход промышленного оборудования на общепринятые стандарты радиосвязи (Bluetooth Low Energy и 5G), использование аппаратного шифрования, а также разработку уникальных механизмов защиты от несанкционированного доступа к аппаратной части приёмников и передатчиков, чтобы усложнить задачу злоумышленникам, которые хотят разобраться в их устройстве и использовать для создания собственных «инструментов». Промышленные системы дистанционного управления оборудования по своему уровню защищённости от внешнего воздействия сильно отстают от подобных систем в потребительском сегменте и без серьёзной модернизации и пересмотра подхода производителей к этому вопросу они остаются слабым звеном в безопасности промышленных объектов.


Оставить комментарий

Ваш email нигде не будет показан
Обязательные для заполнения поля помечены *

*

x

Ещё Hi-Tech Интересное!

Профессиональная IoT-конференция InoThings++ — что было и что будет

Привет, Хабр! Практически ровно год назад — в конце января 2018-го — мы попробовали провести первую профессиональную конференцию для разработчиков устройств, систем и проектов «Интернета вещей» InoThings++ 2018. Помимо того, что она была первой для нас — если не считать ...

[Перевод] Изучаем Python: модуль argparse

Если вы занимаетесь обработкой и анализом данных с использованием Python, то вам, рано или поздно, придётся выйти за пределы Jupyter Notebook, преобразовав свой код в скрипты, которые можно запускать средствами командной строки. Здесь вам и пригодится модуль argparse. Для новичков, ...