Киберзащита как конкурентное преимущество
При выборе поставщика ПЛК даже для корпоративных клиентов значимой является цена внедрения инноваций. Второй немаловажный фактор — качество продукции. Для промышленных систем данный фактор жизнеспособности продукта выражен в его надежности и устойчивости к внешним воздействиям, в том числе к кибератакам. Защита систем промышленной автоматизации становится проще и эффективнее, если контроллеры содержат встроенные функции кибербезопасности. Лучшие практики учитывают несколько аспектов.
Публикуется по материалам издания Control Engineering (www.controleng.ru)
Ссылка на публикацию: https://controleng.ru/wp-content/uploads/8786.pdf
Операционные системы (ОС)
ОС любого промышленного контроллера определяет степень его вычислительных возможностей и возможностей ввода/вывода (I/O). Обычно ПЛК используют выделенные или встроенные ОС с закрытым исходным кодом, адаптированные к требуемому быстродействию логического решения. Индустриальные ПК также оснащены ОС с закрытым исходным кодом, чаще всего Microsoft Windows. Реже применим другой вариант ОС – Linux, с открытым исходным кодом. И хотя перспективы для встраивания ОС с закрытым исходным кодом для использования в ПЛК пока еще относительно не ясны, появление вируса Stuxnet почти десять лет назад уже продемонстрировало, что коммерчески доступные платформы промышленного управления на основе закрытых систем не являются на 100% жизнеспособными объектами, эффективно противостоящими кибератакам.
Кроме того, ОС, специально созданная для промышленного контроллера, должна быть криптографически подписана ее производителем. Контроллер должен принимать только сборки ОС, утвержденные изготовителем, что гарантирует происхождение сборки и исключает несанкционированное изменение кода ОС.
Сетевые интерфейсы
Современные промышленные контроллеры, хотя многие специализированные индустриальные полевые шины все еще используются, в значительной степени уже зависят от коммерческого Ethernet. В общем случае для промышленных контроллеров Ethernet обеспечивается физически проводными сетевыми интерфейсами. Однако подключение устройств может быть реализовано и через беспроводные технологии, например через Wi-Fi.
Одним из важнейших элементов сетевой инфраструктуры является маршрутизатор — сетевое устройство, которое настраивается для маршрутизации трафика между любыми двумя сетями. Маршрутизаторы перемещают данные между обеими сетями — доверенной и недоверенной.
Для промышленных приложений, как правило, требуются контроллеры с несколькими независимыми сетевыми интерфейсами, а потому доверенные и недоверенные сети могут быть разделены. Один сетевой интерфейс назначается как локальная доверенная сеть, а другой — как внешняя недоверенная сеть. И здесь есть нюанс: чтобы никакой внешний злоумышленник не мог подключиться к доверенной сети из недоверенной, эти интерфейсы не должны быть маршрутизируемыми (рис. 1).
Промышленный контроллер должен иметь собственный брандмауэр и предоставлять средства для его настройки. При этом для промышленных приложений доверенному сетевому интерфейсу потребуются порты, связанные с логикой управления, соединениями с портами ввода/вывода (I/O) или другими промышленными протоколами.
По умолчанию рекомендуется открывать только необходимые порты и блокировать все остальные порты, а недоверенному сетевому интерфейсу вообще блокировать все порты доступа (рис. 2).
Доступ пользователя
Ключевой особенностью современных компьютеризированных устройств является концепция учетных записей пользователей с назначенным доступом и привилегиями.
Промышленный контроллер должен требовать, чтобы администратор выбирал уникальные учетные данные при создании каждой учетной записи. Рекомендуется создавать учетные записи только для разрешенных пользователей, предоставлять им лишь необходимые привилегии, кто и что может получить доступ к системе и, следовательно, кто и что не может от нее получать или изменять в ней что-то (рис. 3).
Общим требованием для внешних пользователей является подключение к контроллеру через интернет. Безопасный порт, который шифрует всю передачу данных и разрешает подключаться только аутентифицированным пользователям, может выполнить это требование, создав безопасное соединение.
Лучшим вариантом считается выбор контроллера с уже встроенными возможностями безопасного VPN-туннеля, что дает персоналу OT полный контроль над VPN-подключениями для безопасного соответствия их потребностям без участия третьих лиц (рис. 4).
Передача данных
Смысл оснащения контроллеров сетевыми интерфейсами заключается в обеспечении соединений для передачи данных. Связь на доверенной стороне для контроллера относительно проста, входящие соединения по ненадежной сети должны проходить через VPN или быть заблокированы.
Но как передавать данные, если VPN сложно настроить? Например, как OEM-производитель будет получать необходимые для него данные от машин на объектах клиентов для выставления счетов или технического обслуживания?
Ответ заключается в использовании исходящих протоколов обмена данными от устройств. Одним из таких протоколов является MQTT (message queuing telemetry transport) — упрощенный сетевой протокол, работающий поверх TCP/ IP и ориентированный для обмена сообщениями между устройствами по принципу «издатель-подписчик» (рис. 5).
Обмен сообщениями в протоколе MQTT осуществляется между клиентом (client), который может быть издателем или подписчиком (publisher/subscriber) сообщений, и брокером (broker) сообщений.
Как сказано выше, исходящие соединения обычно разрешаются через брандмауэр, потому что они являются доверенными. Контроллер с использованием исходящего соединения настроен на выдачу (здесь он выступает как издатель) данных, представляющих интерес для внешнего центрального брокера. Удаленные пользователи подключаются и подписываются на центрального брокера аналогичным образом. Потому что только так соединение разрешает двусторонний поток данных, при этом все соединения будут аутентифицированы и зашифрованы.
Еще одна ключевая функция, которую нужно иметь в промышленном контроллере, — встроенное управление сертификатами безопасности.
Сертификаты могут быть реализованы различными способами, они могут быть созданы конечным пользователем или зарегистрированы через центр сертификации (рис. 6).
Промышленные контроллеры, поскольку от их должного функционирования зависит не только качество продукции, но и безопасность персонала и среды, должны использовать отраслевые стандарты сертификации, аналогичные банковским и сайтам электронной коммерции.
Процедурные рекомендации по улучшению кибербезопасности промышленных контроллеров
- Минимизация использования интерфейсов: самая кибербезопасная система — это физически разделенная система (отключенная от сети) и не имеющая внешних интерфейсов. Однако, как правило, это непрактично, но возможно, если контроллер предлагает уже встроенный интерфейс. В любом случае всегда удаляйте ненужные сетевые соединения и блокируйте неиспользуемые порты.
- Минимизация доступа: назначьте пользователям минимально возможные привилегии в соответствии с тем, что им конкретно нужно видеть и делать, и требуйте, чтобы они выходили из системы, когда они неактивны, особенно это касается пользователей с правами администратора. Данный совет распространяется на все элементы системы управления, включая HMI, которые должны по возможности выполняться в информационном режиме и только для чтения.
- Разработка и эксплуатация системы в условиях производства: помните, что это разные вещи. Ограничения иногда смягчаются для тестирования и создания прототипов. Убедитесь, что контроллер полностью защищен после тестирования и перед вводом в эксплуатацию. Некоторые контроллеры на основе Linux для разработки пользовательских приложений разрешают пользователям применять безопасный доступ к оболочке (Secure Shell, SSH). После завершения разработки убедитесь, что доступ к оболочке отключен.
Фото - freepik.com