ЖУРНАЛ «СТА» 4/2018

в целом. В настоящий момент CIP-про- токол может быть упакован в различный «транспорт»: DeviceNet, ControlNet, CompoNet – это всё различные вариан- ты исполнения протокола CIP [2]. Если рассматривать структуру про- мышленной сети на базе протокола CIP, то в её основе находится ряд CIP-объ- ектов. По иерархии это объектно-ори- ентированный подход c созданием аб- страктной модели сети. Физически сеть состоит из CIP-уз- лов, в качестве которых может высту- пать очень широкий круг устройств от ПЛК до датчика (рис. 1). CIP-узел (CIP- node) является набором объектов, где объект – это абстрактное представле- ние физической части конкретного устройства [2] и сопоставляется с логи- ческим объектом на основе каждого устройства, поэтому всё, что не описано в виде объекта, не видно через протокол CIP. Каждый объект (Object) принадле- жит к одному из классов (Class), кото- рые имеют один и тот же набор атрибу- тов. Каждый класс имеет уникальный идентификатор в диапазоне от 1 до 65535. Иногда необходимо более одной «копии» класса внутри устройства. Каждая такая «копия» обозначается как экземпляр данного класса (Instance). Объекты имеют связанные с ними пе- ременные данных. Они называются ат- рибутами (Attribute) конкретного объ- екта (рис. 2). Обычно атрибуты предо- ставляют статус или управляют работой объекта. Каждому атрибуту объекта присваивается идентификатор в диапа- зоне от 0 до 255. Существует два типа ат- рибутов, а именно атрибуты экземпляра и класса. Экземпляр конкретного объ- екта является представлением этого объекта внутри класса. Каждый экзем- пляр имеет тот же набор атрибутов, но свой собственный набор значений ат- рибутов, что делает каждый экземпляр уникальным. Экземпляры имеют уни- кальный идентификатор (в диапазоне 1–65535). Узлы и объекты, из которых создаётся CIP-сеть, используют стандартную схе- му адресации, включающую следующие элементы: ● Node ID назначается каждому узлу се- ти CIP; ● идентификатор класса (Class ID) на- значается каждому классу объекта в сети; ● идентификатор экземпляра (Instance ID) назначается определённому эк- земпляру класса; ● идентификатор атрибута (Attribute ID) назначается атрибуту класса или объекта; ● Service Code идентифицирует конкрет- ное поведение класса или объекта. В класс могут входить объекты, кото- рые контролируют группу аналоговых входов, а экземпляр может быть кон- кретным аналоговым входом для пере- датчика уровня. Примером же атрибу- та, или, другими словами, свойства для этого экземпляра может быть статус, используемый для указания наличия ошибки при превышении рабочего диа- пазона напряжения источника входно- го сигнала. Каждый объект поддерживает набор сервисов (служб) по умолчанию и в не- которых случаях набор пользователь- ских сервисов. Сервис – это функция, поддерживаемая объектом. Например, сервис Get Attribute All позволяет за- просить значения всех атрибутов для конкретного экземпляра объекта. С точки зрения организации сети CIP представляет схему, в которой осу- ществляется соединение между не- сколькими конечными точками. Но для удовлетворения требований к задерж- кам используются два разных типа пе- редачи данных. Они ещё называются неявными (implicit) и явными (explicit) сообщениями. В протоколе EtherNet/IP для implicit- сообщений используется протокол UDP (номер порта 2222), который обес- печивает минимальный уровень за- держки, для explicit-сообщений исполь- зуется протокол TCP (номер порта TCP 44818) для случаев, когда необходимо надёжное соединение, например между ПЛК и HMI. При этом одна из главных задач EtherNet/IP – установка соединения с использованием стандартных команд, в частности, команды Register Session, ко- торая должна быть выполнена до любо- го обмена CIP-сообщениями. После установления сеанса обновляются раз- личные поля в заголовке EtherNet/IP, такие как длины пакетов и типы данных соединения, которые относятся к последующему CIP-пакету. Уровень CIP-данных более сложный, но соответствует стандартному форма- ту. Он может включать в себя различ- ную функциональность, но всё в преде- лах прикладного уровня согласно моде- ли OSI. Сильной стороной протокола является его способность группировать точки данных через представление объ- екта. Например, если программируе- мый логический контроллер имеет ана- логовый выходной сигнал, то он пред- ставлен через объект. При необходимо- сти HMI может использовать данный объект для извлечения данных и на- стройки аналоговых выходных точек в ПЛК [3]. Угрозы безопасности для протокола EtherNet/IP Как уже было описано в [1], сетевые протоколы, такие как Ethernet/IP, ни- когда не предполагали наличия функций обеспечения безопасности сети. Боль- шинство промышленных протоколов, как и боˆльшая часть спецификаций EtherNet/IP иCIP, были разработаны в то время, когда безопасность систем АСУ ТП не рассматривалась, в принципе. В результате механизмы для обес- печения конфиденциальности, целост- ности или доступности передаваемой информации не были включены в спе- цификацию. Эти моменты были не раз упомянуты в различных исследованиях и при раз- боре реальных событий [3]. Фактически ситуация такова, что если сотрудник предприятия имеет доступ к передаче данных с ПЛК по протоколу EtherNet/ IP, то, скорее всего, у него есть возмож- ОБ ЗОР / П РОМЫШЛ Е ННЫЕ С Е Т И СТА 4/2018 Рис. 2. Пример адресации CIP-объектов 29 www.cta.ru ID узла: 192.168.1.1 ID узла: 192.168.1.3 ID узла: 192.168.1.4 Класс объекта #5 Экземпляр объекта #2 Атрибут #2 ID узла: 192.168.1.4 ID узла: 192.168.1.2 CIP-линия Экземпляр объекта #1 Класс объекта #5 Экземпляр объекта #1 Класс объекта #7 Экземпляр объекта #1 Экземпляр объекта #2 Атрибут #2 Класс объекта #5

RkJQdWJsaXNoZXIy MTQ4NjUy