Построение безопасных систем автоматизации зданий и сооружений
На сегодняшний день на рынке представлено громадное количество всевозможных систем автоматики, базирующихся зачастую на совершенно разных технологиях. В данной статье делается попытка проанализировать угрозы безопасности, которые они несут. Для систем, относящихся к комплексу систем безопасности, тема этой публикации максимально актуальна, поскольку здесь любой сбой в работе системы связан с физической безопасностью находящихся в здании людей. Итак, попробуем рассмотреть проблему максимально обобщенно, а затем сузим фокус зрения на комплексе систем безопасности.
Проблемы безопасности могут быть разделены на несколько направлений. Они изложены ниже.
1. Проблемы надежной эксплуатации компонентов и всей системы в целом. Имеется ввиду самопроизвольный выход из строя одного или нескольких компонентов. Причиной могут служить как аппаратные сбои, так и программные ошибки. Есть два пути решения данной проблемы: повышение надежности отдельных компонентов и применение отказоустойчивой архитектуры решения. В качестве отказоустойчивой архитектуры можно привести пример распределенной автоматики, где несмотря на сбой одного узла работоспособность системы в целом сохраняется. Вторым классическим примером отказоустойчивой архитектуры является горячее резервирование узлов системы, однако оно минимум в два раза дороже.
2. Проблемы, связанные с ошибками в действиях обслуживающего персонала (самого пользователя или хозяина). Данный аспект в частных разговорах часто называют «проблемой дуракоустойчивости системы». В основном данная задача решается средствами человеко-машинного интерфейса, в котором производится проверка вводимых оператором параметров, однако и сами программы внутри узлов должны анализировать введенные параметры на непротиворечивость.
3. Проблемы, связанные со злонамеренными действиями «третьих» лиц. Таковых в дальнейшем назовем «злоумышленниками». Здесь в свою очередь можно рассмотреть три направления в действиях «злоумышленника».
Во-первых, несанкционированный съем информации из системы автоматики. Здесь в качестве такой информации может быть расписание прихода домой и ухода на работу, время, номер, содержание телефонных звонков, видеозаписи камер наблюдения и т. д. Данный аспект для краткости назовем «несанкционированное чтение информации».
Во-вторых, внесение деструктивных изменений в работу системы (парализации части или всей системы, уничтожение части или всех данных, активизация вирусоподобных программ ). Для краткости назовем этот аспект «разрушительным воздействием на систему».
В-третьих, вмешательство в работу системы с целью принудить ее произвести необходимые злоумышленнику действия. Вмешательство происходит без нарушения работоспособности системы. Злоумышленник действует как бы от имени одной из подсистем, зная тонкости ее функционирования, подстраиваясь под нее. Поэтому данный аспект назовем «компрометирующее воздействие».
А теперь проведем небольшой мысленный эксперимент и совершим небольшую экскурсию по офисному зданию вместе с неким его сотрудником, на примере действий которого проиллюстрируем каждую из описываемых проблем безопасности.
Итак, сотрудник с утра отправляется на работу, снабженный всеми атрибутами современного горожанина — кредитной карточкой, сотовым телефоном, пропуском, ключами от машины, портфелем с ноутбуком. При входе на свой этаж он сталкивается с элементарным отказом дверного контроллера-считывателя карточки-пропуска, тот «не пускает» его на этаж (единичный отказ компонента системы). Наш сотрудник пытается проникнуть на свой этаж по другой лестнице, — но и там неудача, похоже, отказал контроллер доступа уровня этажа (проблема иерархической структуры системы). Исходя из вышеописанной теории, можно дать несколько советов проектировщику для заблаговременного предупреждения подобного — строить как можно более распределенные системы, не устанавливать дешевого непроверенного оборудования, снабжать системы средствами самодиагностики, чтобы служба охраны была оповещена о неполадках раньше, чем сам сотрудник.
Далее отправим сотрудника в службу охраны разбираться с утренним происшествием. Проиллюстрируем возможные ошибки персонала. Итак, служба охраны, проанализировав причину сбоя, устранила ее и, на всякий случай, переинициализировала карточку-пропуск (как водится — с проверкой от двойного passback-а). Только забыли о том, что человек уже внутри охраняемого контура. С результатом такой ошибки сотрудник столкнется вечером, когда попытается выйти из здания. Контроллеры считывателей могли бы проанализировать ситуацию, выдав на пульт охраны сигнал о «блуждающем» нарушителе (passback-а), но они этого не делают (ибо так нами задумано). Причина такой ошибки кроется, во-первых, в неправильном интерфейсе программы службы охраны, а во-вторых, в отсутствии подпрограмм проверок внутри самих контроллеров здания.
Несанкционированное чтение информации
Методы съема информации, применяемые злоумышленником, могут быть следующими:
- подключение к магистрали передачи данных системы (шине передачи данных); подключение может быть прямым (гальваническим) или бесконтактным;
- несанкционированный доступ с рабочего места оператора АСУТП;
- несанкционированный удаленный доступ через локальную или глобальную сеть.
Возможные пути противодействия при подключении к магистрали — это пассивные мероприятия (затруднение физического подключения к линии) и активные мероприятия, — например, передача данных только в зашифрованном виде.
Для борьбы с несанкционированным доступом с рабочего места оператора настраивается многоуровневый доступ к разным экранам и подсистемам АРМ оператора АСУТП. При этом для доступа к экранам необходимо ввести имя и пароль. При длительном бездействии оператора доступ автоматически блокируется, что предотвращает ситуацию, когда оператор, уходя, забывает закрыть вход в систему. Все действия оператора АСУТП протоколируется самой системой, что позволяет производить после аварии ретроспективный анализ происходивших событий.
Особую роль здесь и далее играет установленный порядок распределения и смены паролей и ключей.
Опасность несанкционированного удаленного доступа через локальную или глобальную сеть возникает в случае интеграции системы автоматики здания с сетями общего пользования. В данном случае становятся актуальными все методы атак и защиты, описанные в сфере IT технологий.
Разрушительное воздействие на систему
Разрушительное воздействие может сильно отличаться по применяемому инструментарию, приборам и оснастке.
1. Физическое уничтожение механических, электромеханических, электронных компонентов системы или линий связи. Наряду с механическим воздействием (удар, перерезание проводов) может быть применен прием выжигания электронных схем высоким напряжением.
2. Уничтожение программ и (или) данных, влекущее за собой парализацию работы части или целой системы.
3. Переконфигурация (расконфигурация) настроек сетевых параметров шины передачи данных сети автоматики. Данный способ особенно актуален в современных системах автоматики, представленных на рынке. Причина кроется в том, что каждый производитель старается максимально упростить процесс пуско-наладки своего оборудования зачастую в ущерб к устойчивости к возможным действиям злоумышленников. Так, например, применительно к системам lonworks и EIB, достаточно подключиться в любой точке к линии передачи данных и, используя простейшие программные утилиты, перевести любое количество контроллеров в неактивное состояние, остановив тем самым обслуживание технологического процесса.
Здесь для иллюстрации предположим, что кто-то уничтожил базу данных разрешенных к проходу карточек-пропусков с целью парализации работы компании. Можно с уверенностью сказать, что день или два для служащих компаний потеряны.
Компрометирующее воздействие на систему
Методы действий, применяемые злоумышленником, кардинально зависят от типа системы автоматизации. Системы автоматики делятся на централизованные и децентрализованные.
В централизованных системах обработка сигнала от датчиков, реализация алгоритма управления технологическим процессом и выдача управляющих воздействий на сервоприводы или актуаторы производится одним-единственным процессорным узлом. В таком случае злоумышленник либо должен внедриться во внутренние цепи процессорного узла, либо подключаться к измерительным или исполнительным цепям. Первый случай не имеет смысла рассматривать, поскольку злоумышленник имеет абсолютный контроль над системой. Во втором случае бороться со злоумышленником можно, контролируя целостность измерительных и исполнительных цепей.
В децентрализованных системах вместо одного процессорного узла реализовано несколько небольших самостоятельных микропроцессорных устройств, называемых узлами. Каждый узел, кроме функций обработки измерительных и исполнительных цепей и реализации алгоритма управления, имеет сетевой интерфейс для обмена информацией с другими узлами. Зачастую в таких системах один узел пользуется результатами измерений другого узла.
И наоборот, узел, реализующий алгоритм управления некоторым сервоприводом, может не иметь возможности напрямую управлять им, так как тот подключен к абсолютно другому узлу. Таким образом, описанный узел передает информацию о требуемом положении сервопривода на другой узел, а тот исполняет ее как прямой приказ. В децентрализованных системах возможности злоумышленника по реализации компрометирующего воздействия колоссальны. Несмотря на это большинство производителей оборудования для систем распределенной автоматики не предпринимают никаких мер против этого. Ставка делается на «закрытость» протокола обмена, т. е. всего лишь на то, что язык протокола обмена знает только узкий круг специалистов.
Следует отметить, что проблема необходимости контроля целостности измерительных и исполнительных цепей точно также актуальна и для децентрализованных систем. Однако компрометация путем посылки ложной информации по сети передачи данных децентрализованной системы во много раз опасней. Уточним терминологию и назовем такой случай «сетевым компрометирующим воздействием».
Единственным методом борьбы с сетевым компрометирующим воздействием является аутентификация отправителя сообщения. Поддержка аутентификации может быть реализована либо на сеансовом уровне модели OSI/ISO, либо на уровне приложения. Так, например, когда один контроллер сети автоматики высылает другому пакет информации, суть содержания которого должна привести к некоторому критическому действию, второй контроллер «желает» удостовериться в «личности» отправителя. Для наглядности предположим, что речь идет о команде подъема графитового стержня в ядерном реакторе.
В качестве доказательства полномочий отправителя (аутентичности) либо используется цифровая подпись, либо механизм «запрос — ответ», где (в запросе) высылается некое случайное число (фраза), а в качестве ответа используется число (фраза), зашифрованная на ключе, известном только этим двум контроллерам.
Еще один пример с сотрудником в данном случае будет совершенно криминальный. Некий злоумышленник проник в бухгалтерию фирмы и украл крупную сумму денег. При этом он подключился к магистрали системы СКД здания и «проиграл» в линию «волшебную посылку», из которой следовало, что контроллер двери бухгалтерии считал карточку сотрудника и дал разрешение на проход. Что у нас получается? Деньги украдены, сотрудник этого не делал, а в базе данных СКД здания зафиксирован проход сотрудника в указанное время в помещение бухгалтерии. С технической точки зрения была произведена «компрометация» контроллера двери бухгалтерии, с точки зрения юридической — был скомпрометирован сам сотрудник.
Итак, на основе всего вышеизложенного можно сделать следующие выводы.
Для систем безопасности актуальны все те же проблемы, что и для систем автоматики вообще. Таким образом, согласно общемировой тенденции, здесь все настойчивее проявляется тенденция миграции в сторону распределенных систем. Далее следует отметить, что проблема компрометирующего воздействия становится все более актуальной. В основном на рынке решают эту задачу путем засекречивания протокола обмена между контроллерами. Другими словами, ставка делается на то, что язык обмена не знает никто посторонний (только узкий круг разработчиков и пусконаладчиков). Это позиция страуса, который зарывает голову в песок и думает, что его никто не видит. История знает немало примеров, когда скучающие от безделья хакеры-тинейджеры раскапывали такие секреты(!) и делали их достоянием широкой публики. Вторая напрашивающаяся аналогия — домохозяйка, прячущая ключ от квартиры под ковриком. Поэтому по-настоящему правильным решением является использование открытого протокола, но в сочетании со стойким шифрованием и аутентификацией отправителя. Пока что на сегодняшний день подобное решение можно построить только на протоколе Lonworks. К сожалению, на рынке крайне мало предложений, соответствующих вышеописанным требованиям, однако некоторые брэнды все же назвать можно: итальянская Apice, финские Timecon, Lonix, ESMI, американская Jonson Controls и отечественная Itrium. Хочется надеяться, что они знаменует собой начало эры по-настоящему безопасных систем безопасности.
Автор: Г. В. Латышев Дата: 30.11.2007 Журнал Стройпрофиль 8-07 Рубрика: интеллектуальное здание Внимание: Публикация является архивной и на текущий момент может быть не достоверной. |