Przejdź do treści

Wstęp do automatyki przemysłowej

Pierwotne źródło tekstu

Utworem pierwotnym w stosunku do niniejszego tekstu jest rozdział „Wprowadzenie do bezpieczeństwa przemysłowych systemów sterowania (ICS/OT)" autorstwa Marcina Dudka, pochodzący z książki „Wprowadzenie do bezpieczeństwa IT". Pierwotny tekst został udostępniony dzięki uprzejmości Securitum Wydawnictwo.

Automatyka przemysłowa odgrywa kluczową rolę we współczesnym świecie – zautomatyzowane procesy są obecne w niemal każdej branży: od elektroenergetyki, przez wodociągi i gazociągi, po produkcję farmaceutyczną i kolej.

Pojęcia OT/ICS

Jednym z czynników, który odstrasza od zajmowania się bezpieczeństwem systemów przemysłowych, jest słownictwo i sporo niejasności z nim związanych. Skróty takie jak ICS, OT, SCADA, IACS, DCS, HMI, PLC, EWS, RTU czy SIS mogą brzmieć obco, a ich liczba może przytłaczać. Poniżej zebrano najważniejsze pojęcia w przystępny sposób.

ICS, OT czy IACS

Trzy pojęcia zbiorcze o bardzo zbliżonym znaczeniu:

  • ICS, Industrial Control Systems – najbardziej uniwersalne określenie części sprzętu, oprogramowania i sieci odpowiedzialnej za sterowanie i nadzór nad procesem przemysłowym.

  • OT, Operational Technology – pojęcie stworzone przez firmę Gartner na potrzeby marketingowe i do łatwego odróżnienia systemów przemysłowych od IT. Szybko zdobyło popularność i obecnie w Polsce najczęściej jest używane w takim samym znaczeniu jak ICS, choć poza naszymi granicami są na ten temat różne opinie. To, jakie określenie będzie używane, zależy też od tego, co się przyjęło w danym sektorze.

  • IACS, Industrial Automation and Control Systems – pojęcie stworzone przez ISA99 i wykorzystywane w standardzie IEC 62443. W uproszczeniu znaczy to samo, co ICS i OT, ale używane jest głównie na potrzeby standardu.

Nie ma do końca zgodności w środowisku, jakie określenia powinny być używane. Przykładowo jedną z propozycji jest rozdzielenie OT i ICS jako osobnych obszarów1. W naszej bazie wiedzy terminy ICS i OT będą używane zamiennie.

Obszar infrastruktury określany pojęciem ICS/OT/IACS

Obszar infrastruktury określany pojęciem ICS/OT/IACS (w uproszczeniu)

Systemy SCADA i DCS

Ważne

Bardzo często, szczególnie w mediach, można spotkać się z nazywaniem wszystkiego, co dotyczy systemów przemysłowych, pojęciem SCADA. Jest to błędne i może prowadzić do nieporozumień, dlatego zawsze warto upewnić się, co rozmówca ma na myśli.

Kolejny duży zbiór to systemy nadzoru:

  • SCADA, Supervisory Control and Data Acquisition – system nadzoru i kontroli nad procesem. Zbiera dane z warstwy sterowania i pokazuje operatorowi aktualny status procesu. System albo operator może na podstawie tych danych podjąć pewne decyzje, ale sam proces sterowania i jego logika są w innym miejscu (np. na sterowniku PLC), często w odległych lokalizacjach. Zazwyczaj systemy SCADA obsługują wiele protokołów różnych producentów przez dodatkowo dokupywane moduły i są stosunkowo łatwe w rozbudowie. Systemy SCADA często wyróżniają się rozległością geograficzną, np. sieć przesyłowa, gazociąg czy wodociąg, ale mogą też tak zostać nazywane systemy nadzorcze w oczyszczalni ścieków czy na linii produkcyjnej. Często to, jakie pojęcie się stosuje, zależy od tego, co przyjęło się w danej branży.

  • DCS, Distributed Control System – funkcjonalnie odgrywa rolę bardzo zbliżoną do SCADA, ale jest systemem silnie zintegrowanym, który ma bezpośrednią wiedzę o przebiegu procesu. Jest wykorzystywany do dużych i skomplikowanych systemów, głównie w elektrowniach, przemyśle chemicznym czy petrochemicznym. Jego koncepcja odpowiada sytuacji, w której kupowalibyśmy kawałek elektrowni, np. kocioł czy turbinę, w pudełku w zestawie z gotowymi algorytmami sterowania i dedykowanymi sterownikami.

    Architektura dostępu do systemów nadzoru zazwyczaj oparta jest na rozwiązaniach klient–serwer, gdzie serwer to dedykowane oprogramowanie na maszynach z Windows Server, a klient to aplikacja instalowana na systemie Windows albo dostępna z przeglądarki.

Systemy SCADA czy DCS będą często dla atakującego najbardziej pożądanym celem, ponieważ zawierają dane na temat całości procesu (wraz z opisem jego komponentów i zmiennych) i umożliwiają sterowanie nim. Są one kopalnią informacji pozwalających napastnikowi zrozumieć, co musi zrobić, żeby wyrządzić szkodę, a często już z poziomu tego systemu może przeprowadzić poważny w skutkach atak.

Uwaga praktyczna

W ramach jednego zakładu, np. elektrowni, może działać kilka systemów DCS od różnych producentów. Nierzadko zdarza się, że w obrębie własnej sieci korzystają z tych samych puli adresów IP. Jest to aspekt, który trzeba uwzględnić przy planowaniu centralnego logowania.

Warstwa wizualizacji systemu SCADA dla sieci elektroenergetycznej

Warstwa wizualizacji przykładowego systemu SCADA dla sieci elektroenergetycznej

Panele HMI

Panel HMI

Panel HMI (operatorski)

HMI, Human Machine Interface – panel operatorski – urządzenie stanowiące interfejs pomiędzy człowiekiem a procesem. Zazwyczaj mówiąc HMI, ktoś będzie miał na myśli panele, które są blisko procesu i służą do monitorowania stanu oraz zmian konfiguracji jego fragmentów bezpośrednio przez inżynierów na miejscu. Często są to urządzenia dotykowe lub sterowane za pomocą przycisków. Panele i wizualizacje pokazujące dane z nadrzędnego systemu kontroli, np. z systemu SCADA w centrum dyspozytorskim, też formalnie powinny być nazywane HMI, ale w praktyce zazwyczaj będą po prostu nazywane SCADA.

Dla atakującego HMI jest wartościowym celem, bo w przypadku uzyskania dostępu często może z niego wykonać takie same działania jak operator.

Sterowniki PLC

Sterownik PLC Siemens S7-1500

Sterownik PLC Siemens S7-1500 razem z zasilaczem i modułami wejść/wyjść

PLC, Programmable Logic Controller – programowalny sterownik logiczny – urządzenie mikroprocesorowe przeznaczone do sterowania pracą maszyny, urządzenia czy fragmentem danego procesu. Jego zadaniem jest wykonywanie wybranego programu w cyklu: odczyt wejść → wykonanie programu → zapis wyjść.

Cykl pracy sterownika PLC

Cykl pracy sterownika PLC

Czas trwania cyklu zależy od możliwości sterownika, rozmiaru programu, który musi wykonać, a także od obciążenia zadaniami komunikacyjnymi. Zazwyczaj ten czas będzie mierzony w milisekundach. Przykładowo sterownik może odczytać wejście analogowe, do którego podłączona jest sonda wskazująca na poziom wody w zbiorniku, wykonać program, który porówna odczytany poziom z ustalonym – i jeśli będzie niższy, to włączy wyjście przekaźnikowe uruchamiające pompę dolewającą wody.

Często czujniki czy urządzenia wykonawcze są w znacznej odległości od sterownika PLC; stosuje się wtedy tzw. terminale wejść/wyjść, pozwalające na przesył danych, np. z użyciem już istniejącej sieci Ethernet z wykorzystaniem protokołów przemysłowych.

Przykładowy system sterowania ze sterownikiem PLC

Przykładowy system sterowania wykorzystujący sterownik PLC

Języki programowania PLC

Języki, w jakich są programowane sterowniki PLC, określa norma IEC 61131-3. Najczęściej wykorzystywany jest tzw. język drabinkowy – LD (Ladder Diagram). Opiera się on na symbolach schematów elektrycznych stosowanych w automatyce przekaźnikowej i z założenia miał być prosty dla osób, które mają już rozeznanie w branży automatyki, a nie uczyły się typowego programowania znanego ze świata IT. Program działający na sterowniku PLC jest też nazywany jego logiką.

Podział języków programowania sterowników PLC

Podział języków programowania sterowników PLC

Upload i download w automatyce

W automatyce używa się słów upload i download w odniesieniu do zmian logiki sterownika PLC w sposób, który dla osób ze świata IT może nie być intuicyjny. Zawsze centralnym punktem odniesienia jest sterownik. Jeśli wgrywamy program do sterownika, mówimy o downloadzie, natomiast jeśli go pobieramy ze sterownika, mówimy o uploadzie. W taki sposób zawsze są opisane funkcje w programach takich jak: TIA Portal, Studio 5000 czy EcoStruxure Machine Expert.

Perspektywa bezpieczeństwa PLC

Z perspektywy atakującego sterownik PLC będzie zawsze wartościowym celem, ale zazwyczaj jest on na najniższych poziomach sieci, do których dostęp może być znacznie utrudniony. Dodatkowo atakujący może mieć trudność ze zrozumieniem, za co odpowiedzialne są konkretne zmienne, jeśli wcześniej nie uzyska dostępu do systemu nadzorczego albo panelu HMI.

Atak na PLC może być konieczny, gdy to, co atakujący chce wykonać, nie będzie możliwe z poziomu systemu nadzorczego albo gdy zmiany mają osiągnąć długofalowy efekt. Tak było w przypadku ataku z wykorzystaniem złośliwego oprogramowania Stuxnet, w którym sterowniki Siemensa zostały przeprogramowane w taki sposób, aby doprowadzić do drgań wirówek, którymi sterowały, a w rezultacie do ich uszkodzenia.

Dla zespołu blue sprawa jest trudna, bo starsze sterowniki często nie mają żadnych mechanizmów bezpieczeństwa, w tym kontroli nad tym, kto może je programować czy ustawiać wartości zmiennych. Nowsze sterowniki takie mechanizmy posiadają, ale z braku wiedzy czy wymogów integracyjnych nie są one włączane. Przykładem takiego mechanizmu jest Access Control dostępny przy konfiguracji nowszych sterowników Siemensa (np. S7-1500) czy Application Protection w nowszych sterownikach Schneider Electric. Wiele nowych urządzeń posiada też domyślnie uruchomione usługi, np. serwer WWW, które mogą być wektorem ataku.

W przypadku warstwy sterowania w dużej mierze trzeba polegać na detekcji. Przeprogramowanie sterownika PLC jest działaniem, które należy zaplanować z wyprzedzeniem, a zmienne z reguły powinny przyjmować ustalony zakres wartości. Zdarzenia odbiegające od wyznaczonych zakresów czy mające miejsce w okresie, gdy nie były planowane, powinny zawsze wzbudzić alarm i analizę. Warto dodać, że w sieciach przemysłowych rzadko stosuje się systemy aktywnie blokujące, np. IPS. Jest to spowodowane kwestiami bezpieczeństwa procesu – w przypadku awarii zmienne mogą przekroczyć wartości zazwyczaj obserwowane, co może skutkować wygenerowaniem fałszywego alarmu o podejrzanej aktywności. Podjęcie automatycznych działań blokujących mogłoby przynieść katastrofalne skutki.

Stacje inżynierskie (EWS)

EWS, Engineering Workstation – stacja inżynierska – komputer, z którego odbywa się programowanie i konfiguracja pozostałych sprzętów i oprogramowania. Często urządzenia przemysłowe wymagają oprogramowania przeznaczonego dla konkretnego producenta, jak np. TIA Portal do programowania sterowników Siemensa. Nawet jeśli organizacja sama nie prowadzi takich działań, to może to być laptop przyniesiony przez serwisanta albo dedykowana maszyna w sieci, z którą serwisanci łączą się zdalnie. Prawie zawsze będzie to system Windows.

Oprogramowanie TIA Portal

Oprogramowanie TIA Portal służące do programowania i konfiguracji sterowników Siemensa

Dla atakującego EWS jest interesującym celem, ponieważ dla takich systemów mogą być ustawione reguły na zaporach sieciowych pozwalające na bezpośredni kontakt z urządzeniami przemysłowymi, np. ze sterownikami PLC. Nawet jeśli w danej chwili taki komputer nie jest połączony, to można zakładać, że w pewnym momencie zostanie. Na stacjach inżynierskich znajdują się zarówno pliki konfiguracyjne, projektowe, jak i dokumentacja sprzętowa.

Historian

Historian – przemysłowa baza danych zawierająca historyczne dane na temat przebiegu procesu. Często jest oprogramowaniem sprzedawanym przez tego samego dostawcę co system SCADA/DCS. W większości przypadków w warstwie technologicznej będzie to aplikacja pełniąca funkcję serwera wraz z bazą danych znaną ze świata IT, jak MS SQL czy Oracle. Dostęp dla użytkowników będzie realizowany przez aplikację zainstalowaną na stacji roboczej albo przez przeglądarkę.

Historian jest miejscem szczególnie często występującym w scenariuszach ataku, ponieważ dane z niego są wykorzystywane nie tylko przez inżynierów, ale też przez kadrę zarządzającą, np. do monitorowania realizacji założeń produkcyjnych i podejmowania decyzji biznesowych. W związku z tym, w przypadku złej segmentacji, może on zostać wykorzystany jako punkt wejścia do sieci przemysłowej.

Przykładowa aplikacja pokazująca dane z historiana

Przykładowa aplikacja pokazująca dane z historiana

Systemy SIS

SIS, Safety Instrumented System – przyrządowy system bezpieczeństwa – system mający za zadanie monitorować stan procesu i zareagować, np. zatrzymać pracę instalacji w przypadku zaistnienia sytuacji mogącej stanowić zagrożenie. Urządzenia za to odpowiedzialne nazywamy sterownikami bezpieczeństwa. Zasada ich działania jest bardzo zbliżona do sterowników PLC, ale są certyfikowane i klasyfikowane w tzw. poziomach nienaruszalności bezpieczeństwa SIL (Safety Integrity Level). Korzystają również z dedykowanych niezależnych czujników i elementów wykonawczych.

Sterownik bezpieczeństwa Rockwell Automation GuardLogix 5069

Sterownik bezpieczeństwa Rockwell Automation GuardLogix 5069

Przykładowo w przypadku przepełnienia zbiornika z cieczą w wyniku niezadziałania zaworu spustowego system SIS wyłączy pompę napełniającą zbiornik i otworzy zawór bezpieczeństwa. To, czy i jaki system powinien zostać zainstalowany, jest wynikiem analizy prawdopodobieństwa wystąpienia niepożądanego zdarzenia i związanego z nim ryzyka. Metody oceny zagrożenia i doboru takich systemów są mocno sformalizowane i oparte na standardach. Więcej informacji w języku polskim na ten temat można znaleźć na stronie Urzędu Dozoru Technicznego.

Kluczowe dla bezpieczeństwa procesu

Systemy SIS są kluczowe dla bezpieczeństwa procesu i w przypadku ich obecności będą jednym z głównych celów ataku dla napastnika z zamiarem wyrządzenia szkody fizycznej.

IT vs OT

Najważniejsze w porównaniu IT i OT wydaje się to, że w OT dotykamy świata rzeczywistego. W przypadku incydentu, ale też podczas nieumiejętnego zabezpieczania czy badania systemów, możemy mieć do czynienia z potencjalnymi konsekwencjami dla zdrowia lub życia człowieka – i zawsze musimy o tym pamiętać. Jeśli chodzi o główny cel zespołu bezpieczeństwa, to w IT będzie to zabezpieczenie danych i zachowanie ciągłości dostępu do nich, a w OT celem jest zachowanie bezpieczeństwa i ciągłości procesu.

Zrozumienie, dlaczego nie wszystkie aspekty podejścia do bezpieczeństwa można skopiować z IT do OT, jest ważne. Poniższe porównanie odwołuje się do pięciu funkcji z NIST Cybersecurity Framework, żeby wydobyć istotę tego zestawienia.

Bezpieczeństwo IT i OT w ujęciu kontrastywnym

Funkcja
(NIST CSF 1.1)
IT (Information Technology) OT (Operational Technology)
Identyfikacja
(ang. identify)
– szybko zmieniające się środowiska, często modernizowane
– popularne rozwiązania do zarządzania zasobami
– możliwość aktywnego skanowania infrastruktury w każdym momencie
– zdefiniowanym do ochrony „klejnotem koronnym" są najczęściej integralność i poufność danych
– stosunkowo stałe środowiska (chociaż to też powoli się już zmienia) i kierunki przepływu danych
– długi cykl życia systemów
– w wielu przypadkach brak bazy zasobów
– większość automatycznych systemów detekcji zasobów bazuje na pasywnym monitorowaniu
– zdefiniowanym do ochrony „klejnotem koronnym" jest bezpieczeństwo i ciągłość procesu
– występują nietypowe z perspektywy IT topologie sieci, jak ring, czy stacje robocze z interfejsami w różnych podsieciach (ang. dual-homed)
Ochrona
(ang. protect)
– application whitelisting czy restrykcyjne reguły na zaporach sieciowych są trudne do wprowadzania z powodu dynamicznych środowisk z wieloma użytkownikami i systemami
– bezpieczeństwo Active Directory jest kluczowe
– dostęp do Internetu jest standardem
– zdalny dostęp jest powszechnie praktykowany
– możliwość stosowania złożonych haseł i MFA
– większość komunikacji jest szyfrowana
– swoboda przeprowadzania aktualizacji
– łatwość wykonywania regularnych kopii zapasowych
– możliwa i konieczna restrykcyjna segmentacja sieci
– dostęp do Internetu zabroniony lub mocno ograniczony
– application whitelisting jest łatwiejszy niż w IT i przynoszący dobre rezultaty
– AD powinno być wydzielone lub brak
– zdalny dostęp wykorzystywany, ale szczególnie wrażliwy. Duża różnorodność rozwiązań w zależności od dostawcy sprzętu i oprogramowania przemysłowego
– nie wszędzie jest możliwe złożone hasło (np. HMI)
– znaczna część komunikacji nie wspiera szyfrowania
– wszystkie prace serwisowe muszą zostać zaplanowane i odnotowywane
– aktualizacja w oknach serwisowych
– bezpieczeństwo fizyczne bardzo ważne
– nie zawsze możliwe lub utrudnione tworzenie kopii zapasowych
Wykrywanie
(ang. detect)
– oprogramowanie AV czy EDR jest standardem
– łatwość aktualizacji baz sygnatur, w większości połączenie z chmurą producenta
– łatwość zbierania logów z różnych systemów
– dostępność łączy o dużych przepustowościach
– monitorowanie całego ruchu sieciowego często niemożliwe z powodu skali infrastruktury
– powszechnie stosowane skanery podatności
– AV jest stosowany, ale często bez połączenia z chmurą i z rzadszą aktualizacją sygnatur
– wiele urządzeń warstwy sterowania nie ma możliwości logowania zdarzeń
– mogą być problemy z przesyłem logów ze zdalnych lokalizacji
– obecnie dużą część detekcji oparto na pasywnej analizie ruchu sieciowego, w tym protokołów przemysłowych
– możliwość detekcji anomalii na podstawie wartości zmiennych procesowych
– aktywne skanery, np. podatności, mogą zakłócić proces
Reakcja
(ang. respond)
– możliwe czasowe wyłączenie systemów i łatwy dostęp do danych
– możliwość instalowania dodatkowego oprogramowania
– stosowanie automatycznej reakcji
– możliwość podjęcia reakcji na incydent zdalnie
– bezpieczeństwo procesu na pierwszym miejscu
– zatrzymanie procesu często niemożliwe lub nieopłacalne
– reakcja na detekcję tylko po decyzji człowieka
– analiza w warunkach żywego systemu, bez możliwości instalowania dodatkowego oprogramowania
– na dostęp do danych może być ograniczone okno czasowe
– często konieczność reakcji na incydent poprzez inżynierów na miejscu
Odbudowa
(ang. recover)
– systemy często można odtworzyć w szybkim tempie z kopii zapasowych
– nie jest wymagany czas na rozruch
– łatwość odtworzenia części funkcjonalności w chmurze
– wiele zadań odtworzeniowych można wykonać zespołem wewnętrznym
– systemy kluczowe dla działania procesu są powiązane ze światem fizycznym, w przypadku uszkodzenia może być konieczna kosztowna i długotrwała wymiana sprzętu
– duża część odtworzenia musi być wykonana we współpracy z dostawcą

  1. Infracritical, ICS Security Model. Is one better over the other? Debate over IT, OT and Control Systems, updated: November 22, 2019, http://icsmodel.infracritical.com/

Ostatnia aktualizacja artykułu: 2026-09-02.