Сегментация на OT мрежи с използване на ISA-99 зони и канали: Практическо ръководство за Schneider M580 и Bachmann M1

plcdcspro
2026-04-13T11:34:14+08:00

Престанете да третирате мрежата на вашето предприятие като плоска Layer 2 broadcast домейн — ето как да я сегментирате правилно, използвайки ISA-99 преди следващото нарушение.
| Повече ▼

Истинският проблем с плоските OT мрежи

Повечето индустриални предприятия, построени преди 2015 г., използват плоска Ethernet мрежа, в която Schneider Electric Modicon M580 PLC, Bachmann M1 автоматизационен контролер, SCADA историкът и корпоративната ERP система споделят една и съща Layer 2 broadcast домейн. Първо, това означава, че ransomware атака, проникваща през корпоративната мрежа, достига до M580 CPU без да преминава през каквато и да е точка за контрол на достъпа. Второ, неправилно конфигуриран работен компютър, излъчващ ARP бури, може да насити Ethernet порта на M580 BM•P 58•2020 CPU — Ethernet портът на M580 CPU обработва ARP на софтуерно ниво с таван от 500 пакета в секунда. Трето, експлойти на протоколи, насочени към Modbus TCP порт 502 или EtherNet/IP порт 44818, се разпространяват свободно в плоската мрежа. Следователно, ISA-99 / IEC 62443 архитектурата на зони и канали не е опция — тя е единственият доказан модел, който добавя защита на ниво мрежа без да нарушава контролната стратегия.

ISA-99 архитектура на зони и канали: Определяне на структурата

ISA-99 (IEC 62443-3-3) разделя индустриалната мрежа на нива на сигурност (SL) и разпределя активите в зони според последствията от компрометиране. Първо, дефинирайте зоните си преди да променяте конфигурацията на какъвто и да е комутатор. Второ, идентифицирайте всяко устройство в мрежата на предприятието и го присвоете към една от четирите зони:

Зона 1 — Безопасност (SIL): Само безопасни PLC. За повечето предприятия това включва ICS Triplex или Triconex TMR системи. В тази зона не влиза общ трафик. Каналът към Зона 2 позволява само Modbus TCP с права за четене за SCADA дисплей.

Зона 2 — Контрол (SL-2): Schneider M580 CPU, Bachmann M1 контролери, I/O мрежи, управление на полеви устройства. EtherNet/IP и Modbus TCP трафикът остава в тази зона. Външен достъп само през IDMZ канала.

Зона 3 — Надзор (SL-1): SCADA сървъри, DCS историк, операторски работни станции. Тази зона достъпва Зона 2 чрез дефиниран канал през stateful защитна стена — не чрез плоска връзка.

Зона 4 — Предприятие (SL-0): Корпоративна ERP, Active Directory, имейл сървъри. Нулев директен достъп до Зона 2 или Зона 1. Всички обмен на данни се осъществява само през IDMZ.

Освен това, Industrial DMZ (IDMZ) се намира между Зона 3 и Зона 4. IDMZ съдържа сървърите за репликация на данни — OSIsoft PI, Wonderware Historian или OPC DA/UA gateway. Никакъв трафик не преминава през IDMZ от край до край — както Зона 3, така и Зона 4 се свързват със сървърите в IDMZ, но никога директно помежду си. Това е основният принцип за контрол на границите в ISA-99.

Конфигурация на VLAN и защитна стена за Schneider M580 мрежи

Schneider Modicon M580 използва EtherNet/IP на Ethernet порта на CPU шината (серия BMEP58•020) и отделен Ethernet порт за I/O мрежата за Ethernet RIO устройства. Първо, присвоете CPU управленския порт към VLAN 20 (Контролна зона) на управлявания комутатор. Второ, присвоете всички отдалечени I/O (BMECRA31210 RIO устройства) към VLAN 21 (I/O подзона). Трето, създайте ACL (списък за контрол на достъпа) на комутатора, който блокира целия трафик между VLAN 21 и всяка зона над ниво 2.

На управляван комутатор Cisco IE4000 или Cisco IE3400 конфигурирайте междувланово маршрутизиране с тези правила за защитна стена:

Стъпка 1: Създайте VLAN 20 (Контрол) и VLAN 21 (RIO). Присвоете M580 CPU порта в режим достъп VLAN 20. Присвоете всички BMECRA31210 RIO портове в режим достъп VLAN 21.

Стъпка 2: Приложете ACL на VLAN 20 SVI: разрешете TCP от всякъде към 192.168.20.0/24 порт 44818 (EtherNet/IP CIP). Разрешете TCP от всякъде към 192.168.20.0/24 порт 502 (Modbus TCP). Забранете ip от всякъде към всякъде с логване. Това позволява само необходимите протоколи да достигнат M580.

Стъпка 3: Блокирайте целия външен достъп до VLAN 21 на Layer 3 комутатора — забранете ip от всякъде към 192.168.21.0/24. RIO трафикът никога не трябва да е достъпен от Зона 3 или Зона 4.

Стъпка 4: Конфигурирайте stateful защитна стена между Зона 2 и Зона 3 да позволява само OPC UA порт 4840 от SCADA сървъра към OPC UA gateway в Зона 3. Блокирайте Modbus TCP порт 502 между Зона 3 и Зона 2 — SCADA чете OPC UA gateway, а не директно M580.

Стъпка 5: Активирайте портова сигурност на всички M580 и BMECRA комутаторни портове — заключете към MAC адреса на предавателя. Задайте режим на нарушение на портовата сигурност на "restrict" (не "shutdown"), за да генерирате предупреждение без да прекъсвате I/O мрежата.

Въпреки това, Ethernet портът на M580 CPU не поддържа 802.1Q VLAN тагиране нативно — той работи само като VLAN access порт. Следователно, комутаторът трябва да обработва цялото VLAN тагиране. Това е често срещано ограничение при проектирането на M580 мрежи, което инженерите пренебрегват при сегментиране.

Сегментация на Bachmann M1 контролер и OPC UA контрол на границите

Bachmann M1 контролерите използват собствена MIO (Modular I/O) Ethernet мрежа на отделен интерфейс, различен от програмния порт. Първо, присвоете Bachmann M1 MIO мрежата към VLAN 22 — отделно от Schneider M580 контролния VLAN 20. Това предотвратява кръстосани протоколи и broadcast бури. Второ, Bachmann M1 поддържа OPC UA сървърна функционалност нативно в своята програмна среда SolutionCenter. Конфигурирайте OPC UA сървъра да излага само необходимите тагове към Зона 3 — не излагайте пълното пространство с променливи на M1.

В Bachmann SolutionCenter задайте OPC UA Security Mode на "SignAndEncrypt" и Security Policy на "Basic256Sha256." Отхвърлете всички анонимни връзки — изисквайте удостоверяване с сертификат. Това съответства на изискванията на IEC 62443-3-3 за ниво на сигурност 2 за Контролна зона. Освен това, задайте адресното пространство на M1 OPC UA сървъра да публикува само тагове, включени в одобрения SCADA списък — използвайте конфигурацията на Bachmann OPC UA NodeManager за бял списък на конкретни променливи възли. Блокирайте всички други възли на ниво OPC UA сървър, а не само на защитната стена.

Стъпка 1: В Bachmann SolutionCenter отидете в конфигурацията на OPC UA сървъра в модула "Communication".

Стъпка 2: Задайте Security Mode на "SignAndEncrypt." Задайте Security Policy на "Basic256Sha256." Деактивирайте политиките "None" и "Sign".

Стъпка 3: Импортирайте сертификата на SCADA сървъра в довереното хранилище на сертификати на Bachmann M1. Само SCADA клиенти с валиден сертификат се свързват.

Стъпка 4: Активирайте защитната функция на Bachmann M1 — разрешете TCP 4840 (OPC UA) само от IP адреса на SCADA сървъра 192.168.30.10. Блокирайте всички други входящи връзки на OPC UA порта.

Стъпка 5: Конфигурирайте таймаут на сесията за 30 секунди. Всяка SCADA сесия, неактивна 30 секунди, се затваря автоматично — предотвратява натрупване на стари сесии в таблицата на M1.

Стъпка 6: Логвайте всички OPC UA събития в syslog на Bachmann M1 — конфигурирайте препращане на syslog към SIEM сървъра в IDMZ за мониторинг на сигурността.

Дизайн на IDMZ: Репликация на данни без директно пресичане на зони

IDMZ съдържа точно два типа сървъри: сървър за репликация на исторически данни и jump сървър за отдалечен достъп. Първо, OSIsoft PI Relay или Honeywell Uniformance PHD работят в IDMZ. Историкът в Зона 3 изпраща данни към IDMZ relay чрез TCP порт 5450 (PI-to-PI интерфейс). Корпоративният историк в Зона 4 изтегля данни от IDMZ relay чрез същия порт. Никога не се пренасят процесни данни директно между Зона 3 и Зона 4. Второ, jump сървърът за отдалечен достъп в IDMZ осигурява RDP достъп за инженери по поддръжката. Конфигурирайте jump сървъра да позволява RDP връзки само от одобрен MFA-защитен VPN крайна точка — никога не позволявайте директен RDP от Зона 4 към Зона 2 или Зона 1.

Освен това, приложете тези правила на защитната стена между Зона 4 и IDMZ: разрешете TCP 5450 (PI) само от историка в Зона 4 към IDMZ relay. Забранете целия друг трафик от Зона 4 към IDMZ. Между IDMZ и Зона 3: разрешете TCP 5450 от IDMZ relay към историка в Зона 3. Разрешете RDP (TCP 3389) само от IDMZ jump сървъра към SCADA работни станции в Зона 3 — с прилагане на MFA на jump сървърния шлюз.

Заключение и препоръки за действие

ISA-99 сегментацията на зони и канали за Schneider M580 и Bachmann M1 мрежи е инженерна задача, а не проект за ИТ сигурност. Първо, дефинирайте четирите си зони и начертайте диаграмата на каналите преди да пипате какъвто и да е комутатор. Второ, присвоете M580 CPU и M1 MIO мрежите към отделни VLAN с ACL, блокиращи всички ненужни протоколи. Трето, наложете OPC UA SignAndEncrypt на Bachmann M1 и използвайте удостоверяване с сертификати от първия ден. Четвърто, изградете IDMZ като истински релей за данни — без директни пътища между Зона 3 и Зона 4. Пето, активирайте портова сигурност на всички комутаторни портове в контролния VLAN, за да предотвратите свързване на неоторизирани устройства. Накрая, тествайте сегментацията си, като опитате порт сканиране от работна станция в Зона 4 към адреси в Зона 2 — ако видите отворени портове на M580 или M1 от Зона 4, правилата на каналите ви са непълни. Поправете всеки отворен порт преди да обявите сегментацията за завършена.