Ewolucja sieci przemysłowych a ich bezpieczeństwo
Marcin Zawisza drukuj
Sieci przemysłowe są naturalnym następstwem powstania sterowników PLC. Z ich historią, podobnie jak z historią samych sterowników PLC związana jest firma Modicon. W 1969 r. opracowano pierwszy swobodnie programowalny kontroler (model 084), a 10 lat później protokół komunikacji szeregowej MODiconBUS znany jako Modbus. Była to odpowiedź na potrzebę zmniejszenia liczby połączeń i, co za tym idzie, uproszczenie okablowania. Pierwsze protokoły komunikacyjne przyspieszyły jeszcze i tak systematycznie zwiększającą się ilość przesyłanych danych, a sieci przemysłowe zyskały w krótkim czasie popularność i stały się jednym z nieodłącznych elementów systemów sterowania.
Ważna zmiana w komunikacji układów sterowania dokonała się na przełomie wieków, kiedy to producenci urządzeń automatyki przemysłowej zauważyli potencjał tkwiący w sieci Ethernet. W porównaniu ze stosowanymi do tej pory rozwiązaniami, gwarantował on dużo większą wydajność, potencjalnie nieograniczoną liczbę urządzeń i zasięg, upraszczając jednocześnie infrastrukturę sieciową i jej utrzymanie dzięki wspólnemu dla wszystkich elementów systemu sterowania medium. Nie bez znaczenia była także możliwość ujednolicenia komunikacji na poziomie produkcyjnym z istniejącym już zapleczem technicznym dla poziomów zarządzania i monitorowania. Połączenie sieci przemysłowej z siecią korporacyjną umożliwiało w prostszy, bardziej niezawodny i tańszy zdalny dostęp do tej pierwszej, co szybko okazało się nieocenionym ułatwieniem, przyspieszającym znacznie reakcję w przypadku problemów wymagających interwencji specjalistów z odległego nieraz serwisu.
Te bezdyskusyjne zalety sprawiły, że każdy z większych producentów postawił sobie za punkt honoru stworzenie własnej specyfikacji sieci przemysłowej opartej na standardzie Ethernet i jej jak najszerszej promocji. Proces ten wymagał czasu, gdyż trzeba było przystosować stare mechanizmy do nowych wymagań, a często opracować kolejne (choćby te zapewniające determinizm przy dostępie do łącza). Klasyczne sieci polowe są systematycznie zastępowane przez rozwiązania oparte na Ethernecie przemysłowym i trudno sobie wyobrazić, żeby ten trend miał się w najbliższym czasie zmienić. Należy jednak pamiętać, że połączenie czujników, napędów, elementów rozproszonego systemu bezpieczeństwa we wspólnej sieci, dostępnej w sieci rozległej, jak Internet z każdego miejsca na Ziemi, poza ułatwieniem oznacza również potencjalne zagrożenia. Na szczęście z podobnymi zagrożeniami zmagają się na co dzień osoby odpowiedzialne za bezpieczeństwo sieci LAN w każdej większej firmie, stąd nie są one nowością – nowe są jedynie rodzaje i skala szkód, które mogą zostać wyrządzone.
Aby poznać zagrożenia, na które narażone są współczesne sieci przemysłowe, oparte na standardzie Ethernet, dobrze jest zrozumieć w jaki sposób realizowane są na jego bazie najpopularniejsze protokoły.
Implementacje Ethernetu przemysłowego
Mówiąc o implementacjach Ethernetu w przemyśle warto przypomnieć, czym właściwie jest Ethernet. W dużym skrócie można określić tak standard komunikacji w dwóch najniższych warstwach modelu OSI (a dokładniej w warstwie fizycznej i dolnej podwarstwie warstwy łącza danych). Opisuje on nie tylko cechy fizyczne połączenia, takie jak specyfikacja przewodów i sygnałów ale również sposób organizacji danych (format ramek i protokoły) oraz zasady dostępu do łącza. Wszystko to zostało sformalizowane przez grupy robocze IEEE (ang. Institute of Electrical and Electronics Engineers) w serii dokumentów oznaczonych numerem 802.3, z którymi to zgodność cechuje każdą sieć bazującą na protokole Ethernet. W praktyce oznacza to określony sposób realizacji warstwy fizycznej i podwarstwy MAC, warstwy łącza danych, kolejne poziomy modelu OSI nie są już w tym standardzie określone. Wykorzystanie istniejących protokołów determinuje jednak możliwość integracji nowej sieci z istniejącymi sieciami LAN, a co za tym idzie również wykorzystanie istniejącej infrastruktury. Z drugiej jednak strony warunek komunikacji z zachowaniem określonych rygorów czasowych, charakteryzujący sieci przemysłowe, najłatwiej zrealizować poprzez modyfikacje lub stworzenie nowych mechanizmów. Przed takim właśnie dylematem – wydajność czy zgodność – stanęli producenci aparatury przemysłowej i grupujące ich organizacje.
Jedną z tych organizacji była Modbus Organization, która w 1999 r. opracowała specyfikację sieci Modbus TCP bazującą, w warstwie aplikacji, na protokole Modbus. Został on opracowany, jak już wspomniano, przez firmę Modicon (obecnie część koncernu Schneider Electric) i pozostał tym samym wspólnym elementem, łączącym wszystkie warianty tej sieci. Wersja TCP protokołu Modbus, jak sama nazwa wskazuje, bazuje na niższych warstwach niezmodyfikowanego stosu TCP/IP oraz Ethernecie zgodnym z IEEE 802.3 (rys. 2), co umożliwia łączenie używających go urządzeń w klasycznych sieciach LAN bez dodatkowych elementów infrastruktury. Ograniczenia tego rozwiązania wynikają w większości z ograniczeń samego leciwego już (opracowano go prawie cztery dekady temu) protokołu Modbus. Jest to rozwiązanie dość proste i bazuje na architekturze master-slave z odpytywaniem, co ogranicza jego wydajność i generuje często zbędny ruch w sieci. Bazowanie na niezmodyfikowanym stosie TCP/IP powoduje, że wydajność komunikacji zależy w dużym stopniu od zastosowanych rozwiązań sprzętowych i jakości użytej infrastruktury sieciowej. Standard Modbus jest standardem otwartym, a nad jego rozwojem czuwa Modbus Organization.
W 2001 r. do rodziny rozwiązań sieciowych opartych na protokole CIP (ang. Common Industrial Protocol), takich jak DeviceNet czy ControlNet dołączyło kolejne – EtherNet/IP. W przypadku tej sieci, podobnie jak w przypadku Modbus TCP, mamy do czynienia z rozwiązaniem opartym na autorskich warstwach górnych (Sesji, Prezentacji i Aplikacji), wykorzystujących protokoły TCP/IP, jako łącznik z niezmodyfikowanymi warstwami: fizyczną i łącza danych (rys. 1). Co więcej, dane zwykłe i konfiguracyjne przesyłane są jako tzw. „Explicit Messages” z wykorzystaniem protokołu TCP, natomiast dane krytyczne czasowo jako „Implicit Messages”, wykorzystując UDP. Daje to, podobnie jak w przypadku Modbus TCP, zgodność ze standardową infrastrukturą sieciową. Pod względem wydajności EtherNet/IP nie ustępuje jednak klasycznym sieciom przemysłowym, a wykorzystane mechanizmy, takie jak priorytetyzacja ruchu sieciowego i precyzyjna synchronizacja czasu (wykorzystuje on w tym celu protokół CIP Sync, będący rozszerzeniem PTP) zapewniają determinizm czasowy, umożliwiający wykorzystanie go do tak wymagających zadań, jak sterowanie ruchem (protokół CIP Motion) czy komunikacja pomiędzy elementami bezpieczeństwa (protokół CIP Safety). Pieczę nad rozwojem EtherNet/IP, jak i pozostałych sieci wykorzystujących protokół CIP sprawuje organizacja ODVA (ang. Open DeviceNet Vendors Association).
Również w 2001 r. firma B&R zaprezentowała swoje rozwiązanie o nazwie Ethernet Powerlink. Bazuje on na niezmodyfikowanej warstwie fizycznej (rys. 2), a warstwa łącza danych jest rozszerzona o mechanizm kontroli dostępu do magistrali oparty na harmonogramie. Zapewnia on w danej chwili dostęp tylko jednego węzła, eliminując potencjalne kolizje, co z kolei umożliwia zastosowanie koncentratorów sieciowych zamiast przełączników (takie rozwiązanie eliminuje opóźnienia związane z przełączaniem). W warstwie aplikacji Ethernet Powerlink bazuje natomiast na mechanizmach określonych w specyfikacji CANopen (przez co określa się ten standard jako CANopen over Ethernet), upraszczając tym samym wzajemną komunikację między tymi rozwiązaniami i ewentualną migrację. Łączność między warstwą aplikacji i warstwami niższymi odbywa się w sposób bezpośredni (obiekty PDO – ang. Process Data Object i SDO – ang. Service Data Object) lub z wykorzystaniem UDP i IP (obiekty SDO). Modyfikacje zastosowane w dolnych warstwach minimalizują opóźnienia, optymalizując wydajność sieci ale jednocześnie uniemożliwiają bezpośrednie połączenie urządzeń Ethernet Powerlink z innymi urządzeniami (prowadziłoby to do kolizji). W standardzie wyróżniono więc część sieci pracującą w reżimie czasu rzeczywistego (tzw. Real-Time Domains) oraz drugą, niespełniającą tych wymagań (Non-Real-Time Domains). Ethernet Powerlink, podobnie jak poprzednicy, jest standardem otwartym, zarządzanym przez EPSG (ang. Ethernet Powerlink Standarization Group).
EtherCAT, opracowany w 2003 r. przez firmę Beckhoff Automation, również bazuje na niezmodyfikowanej warstwie fizycznej, wprowadzając w warstwie łącza mechanizm wysyłania informacji do wielu węzłów z użyciem pojedynczej ramki. Jest wysyłana przez urządzenie master i przetwarzana w locie przez wszystkie urządzenia slave, których dotyczy, co pozwala optymalnie wykorzystać przepustowość sieci, zapewniając dużą wydajność. EtherCAT nie wykorzystuje stosu TCP/IP do komunikacji w czasie rzeczywistym, a dane są przesyłane bezpośrednio z warstwy aplikacji (rys. 1). Może on jednak koegzystować w obrębie jednego przełącznika sieciowego z innymi protokołami bazującymi na Ethernecie, w tym ze standardowymi sieciami wykorzystującymi TCP/IP. Wymagane jest jedynie wykorzystanie odrębnych portów. Warstwa aplikacji EtherCAT bazuje na profilach urządzeń, opisujących ich parametry i zachowanie, i umożliwia wykorzystanie już istniejących rozwiązań ze specyfikacji CANopen (zastępując CAN) czy też profili serwonapędów z interfejsu Sercos. Obecnie rozwojem standardu zajmuje się organizacja ETG (EtherCAT Technology Group).
W 2004 r. ostateczny kształt przyjęła kolejna implementacja Ethernetu przemysłowego znana jako Profinet. Została ona opracowana przez organizację Profibus International (przemianowaną w związku z tym na Profibus and Profinet International) i miała za zadanie zastąpić wysłużoną, choć ciągle bardzo popularną i szeroko stosowaną w przemyśle sieć, Profibus. Podobnie, jak w rozwiązaniach konkurencji, jej podstawą są warstwy fizyczna i łącza danych opisane standardem IEEE 802.3 (rys. 2). Unikalnym podejściem, jest jednak zastosowanie, w zależności od potrzeb, trzech trybów transmisji: standardowego, rzeczywistego oraz rzeczywistego izochronicznego. Ten pierwszy bazuje na niezmodyfikowanym stosie TCP/IP i wykorzystywany jest do przesyłania niewymagających ścisłego determinizmu danych z opóźnieniami rzędu 100 ms (może być to wizualizacja, konfiguracja urządzeń czy diagnostyka), drugi dla danych czasu rzeczywistego z opóźnieniami około 10 ms, a trzeci dla komunikacji wymagającej opóźnień poniżej 1 ms (precyzyjne sterowanie ruchem). Wymagało to podziału czasu transmisji na cyklicznie występujące po sobie okna dla każdego rodzaju komunikacji. Najbardziej wymagająca transmisja w trybie izochronicznym, uzależniona jest od precyzyjnej synchronizacji urządzeń i opiera się w dużej mierze na warstwach łącza danych i fizycznych, z pominięciem warstw wyższych.
W przypadku sieci Sercos III, czyli kolejnej generacji otwartego standardu, opracowanej przez Sercos International w 2005 r., mamy do czynienia z przeniesieniem na Ethernet bardzo rygorystycznego interfejsu czasu rzeczywistego. Urządzenia mogą być w nim połączone z użyciem wbudowanych przełączników, w topologii liniowej lub pierścienia. Wymiana danych bazuje na telegramach rozsyłanych przez urządzenie master do urządzeń typu slave (maksymalnie 511). Tak zmodyfikowany standard Ethernet umożliwia osiągniecie czasów cykli rzędu 30 mikrosekund na urządzenie, co pozwala na precyzyjne sterowanie ruchem.
Najbardziej znaną japońską odpowiedzią na przedstawione wyżej rozwiązania stała się sieć CC-Link IE, zaprezentowana przez CLPA (ang. CC-Link Partner Association) w 2007 r. Jak można się domyślać, jest ona następcą sieci CC-Link opracowanej przez firmę Mitsubishi Electric, a następnie udostępnionej jako otwarty standard. Wersja Ethernet bazuje na niezmodyfikowanych warstwach: fizycznej i łącza danych oraz zbiorze protokołów warstw sieciowej i transportowej (CC-Link IE Controller, CC-Link IE Field i CC-Link IE Motion) połączonych wspólnym protokołem warstwy aplikacji – Seamless Message Protocol (rys. 1). SLMP, jako interfejs aplikacji jest stosowany również w wariancie sieci CC-Link opartym na RS-485, co upraszcza ewentualną integrację tych rozwiązań. Protokoły warstw sieciowej i transportowej dopasowane są do konkretnych zastosowań i różnią się możliwościami konfiguracji sieci, wydajnością i osiąganą dokładnością.
Tak więc główne implementacje Ethernetu w przemyśle nie powstawały od zera, ale raczej bazowały na już istniejących i sprawdzonych protokołach komunikacyjnych. Różni producenci i zrzeszające ich organizacje, opracowali różne rozwiązania, pozwalające sprostać wymogom determinizmu i w różny sposób podeszli do zachowania kompatybilności z istniejącą infrastrukturą. Sposób, w jaki to osiągnęli, poza wpływem na wydajność i łatwość integracji, ma również wpływ na bezpieczeństwo.
Nowe możliwości i nowe zagrożenia
Sieci dedykowane dla systemów automatyki takie, jak Profibus, CAN czy DeviceNet charakteryzują się zastosowaniem specjalnie dla nich przygotowanej infrastruktury i protokołów komunikacyjnych, co sprawia, że trudno sobie wyobrazić atak z ich użyciem, który nie byłby poprzedzony uzyskaniem fizycznego dostępu. Słabym ogniwem, w opartych na nich systemach sterowania mogą natomiast okazać się nieumiejętnie zabezpieczone terminale SCADA (ang. Supervisory Control And Data Acquisition). To właśnie one, w połączeniu z nieodpowiedzialną obsługą, mogą stać się jedynym i jednocześnie zgubnym w skutkach, połączeniem z „szerokim światem”. Sytuacji nie poprawia fakt, że część tych systemów pracuje na ogólnodostępnych (i co za tym idzie intensywnie analizowanych i to niekoniecznie przez ludzi o dobrych intencjach) systemach operacyjnych. Ogólnoświatowa, niechlubna tendencja do pogarszania się jakości, nie omija również oprogramowania, co sprawia, że w systemach tych co rusz odkrywane są nowe luki. Oczywiście ich producenci starają się na bieżąco łatać wykryte dziury. Zdarza się jednak, że dowiadują się o nich dopiero od pokrzywdzonych przez cyberprzestępców użytkowników. Te tzw. dziury typu zero-day, są prawdziwą zmorą w przypadku komputerów osobistych, a w przypadku systemów przemysłowych mogą być katastrofalne w skutkach.
Wraz z otwarciem się sieci przemysłowych na Ethernet otwiera się także droga dla dalszej migracji tych zagrożeń. Zacieranie się podziału na część „biurową” i „polową” umożliwia obok ataku pośredniego, z wykorzystaniem systemów nadzorujących, także bezpośrednie przeniknięcie do infrastruktury komunikacyjnej systemu sterowania.
Jednym z głównych zagrożeń, zarówno w przypadku sieci izolowanych, jak i dostępnych z zewnątrz jest szeroko rozumiany nieautoryzowany dostęp. Oczywiście w przypadku, kiedy nie jest on możliwy z użyciem jakiegoś rodzaju łącza, a wymaga sforsowania materialnych zapór w celu wtargnięcia do obiektu, wzrasta prawdopodobieństwo jego wykrycia. Znacznie gorzej, jeśli włamywacz może wykorzystać połączenie sieciowe. Tego rodzaju ingerencje mogą być bardzo trudne do wykrycia, a tym bardziej ich źródło, które może znajdować się gdziekolwiek na świecie. Może ono wykorzystać uzyskany w ten sposób dostęp do dokonania natychmiastowych szkód w systemie lub też w sposób bardziej wyrafinowany, do instalacji złośliwego oprogramowania, odwlekając potencjalne szkody w czasie, ale też jeszcze bardziej utrudniając identyfikację źródła ataku.
W zależności od charakteru obiektu, wykonanie zdalnie określonych komend, zmiana konfiguracji lub programu sterującego może prowadzić do strat materialnych, zagrożenia zdrowia lub życia osób z obsługi czy wręcz do katastrofy ekologicznej. Dodatkowo mając dostęp do systemów diagnostycznych można zatuszować szkodliwe działania (blokując komunikaty awarii bądź zmieniając ich treść) do czasu, aż będzie zbyt późno na jakąkolwiek reakcję.
STUXNET – groźniejszy od bomb i rakiet... Stuxnet jest o tyle ciekawym przypadkiem, że jest to pierwsza znana sytuacja, gdy złośliwe oprogramowanie w połączeniu z luką zero-day zostało wykorzystane do zainfekowania i modyfikacji programu sterowania instalacji przemysłowej – i to instalacji kompletnie odizolowanej od sieci Internet. Warto również wspomnieć, że z początku większość informacji na temat tego oprogramowania opierała się na niepotwierdzonych plotkach i domysłach różnego rodzaju specjalistów, ale w 2012 r. jego genezę potwierdzili współpracownicy prezydenta Obamy, ujawniając szczegóły i dane techniczne, znacząco zwiększając tym samym wiarygodność opisanych niżej wersji wydarzeń. Historia tego spowitego legendą oprogramowania rozpoczyna się w 2009 r., skąd pochodzą jego najstarsze znalezione kompilacje. W tym też roku miał rozpocząć infekowanie irańskich instalacji (m.in. tą najbardziej znaną w Natanz). Atak poprzedziła penetracja ich struktury za pomocą innego robaka. Co ciekawe, obiekty te nie miały połączenia z Internetem. Do infekcji wykorzystano najprawdopodobniej lekkomyślność pracowników, którzy przenieśli nieświadomie złośliwy kod z komputerów podłączonych do sieci. Na podstawie tak zgromadzonych informacji specjaliści z USA i Izraela opracowali schemat działania właściwego robaka, a nawet go wypróbowali, wykorzystując w tym celu bliźniacze urządzenia zarekwirowane w Libii w 2003 r. W efekcie Stuxnet, po znalezieniu się na zainfekowanym komputerze wyszukiwał danych konfiguracji programowo-sprzętowych (sterowanie wirówek bazowało na PLC serii S7-300/400, przemiennikach częstotliwości i systemie SCADA firmy Siemens). W przypadku stwierdzenia, że komputer jest podłączony do szukanego typu kontrolera, robak modyfikował oprogramowanie tego ostatniego. Prowadziło to do rozłożonych w czasie zmian prędkości wirówek, skutkując ich stopniowym uszkadzaniem. Stuxnet w czasie, kiedy zmieniał prędkość urządzeń, blokował alarmy i manipulował wyświetlanymi danymi. Oprogramowanie było też „złośliwe” do tego stopnia, że potrafiło „usypiać” na jakiś czas, przez co wydawało się, że problem został zażegnany. Te działania maskujące powodowały, że Irańczycy nie mogli prawidłowo określić przyczyny problemów i wymieniali urządzenia podejrzewane o awarie, generując w ten sposób dodatkowe koszty. Działalność Stuxneta została odkryta dopiero rok po infekcji przez białoruskich specjalistów z firmy zajmującej się bezpieczeństwem komputerowym. Jak się okazuje, był to dopiero początek trwającej do tej pory wojny cybernetycznej. Kolejne, coraz bardziej dopracowane i trudniejsze do wykrycia generacje złośliwego oprogramowania wycelowanego w militarne (i nie tylko) instalacje przemysłowe krążą po świecie. Co gorsza, pojawiają się informacje, że nad ewolucją niektórych z nich utracono już dawno kontrolę... |
W przypadku strat materialnych, w najłagodniejszym wariancie mogą być one spowodowane zatrzymaniem lub zmniejszeniem produkcji, zmarnowaniem surowców lub zniszczeniem produktów. Znacznie gorzej, gdy poprzez zmianę parametrów pracy lub wyłączenie zabezpieczeń „włamywacz” doprowadzi do zniszczenia urządzeń bądź infrastruktury pomocniczej. Może to oznaczać długotrwałą przerwą w funkcjonowaniu zakładu. Jednym z głośniejszych znanych przypadków tego typu jest odkryty w 2010 r. robak Stuxnet, obwiniany o zniszczenia w irańskich zakładach wzbogacania uranu i opóźnienia samego programu atomowego (zobacz informacje w ramce).
Ryzyko nieuprawnionej manipulacji dotyka również współczesnych systemów bezpieczeństwa, które coraz częściej bazują na elementach programowalnych, zastępujących rozwiązania sprzętowe, takich jak przekaźniki programowalne, czy też sterowniki bezpieczeństwa. Otwiera to kolejną furtkę osóbom, które w jakiś sposób zdobyły dostęp do systemu sterowania. Co gorsza, w tym przypadku zamiast strat materialnych możemy mieć do czynienia z realnym zagrożeniem zdrowia a nawet życia obsługi. Wystarczy wyobrazić sobie ingerencję polegającą na zmianie sposobu działania systemu osłon czy zmianie prędkości bezpiecznej.
Najczarniejszy scenariusz związany z nieautoryzowanym dostępem, rysuje się w przypadku strategicznych instalacji, gdzie rozregulowanie systemu prowadzi do katastrofy, i nie musi to wcale być elektrownia atomowa. W 2000 r. jeden z australijskich pracowników po tym, jak odrzucono jego podanie o pracę, zakłócał bezprzewodowe systemy sterowania oczyszczalni ścieków doprowadzając do uwolnienia przeszło ćwierć miliona galonów (około milion litrów) ścieków do pobliskich rzek.
Ten ostatni przykład obrazuje jeszcze inne zagrożenie, niekoniecznie związane z uzyskaniem dostępu do systemu sterowania. Czasami wystarczy zakłócanie lub zablokowanie przepływu informacji czy to wywołane z premedytacją, czy też przypadkowe. Stosując terminologię z branży IT mamy wtedy do czynienia z tzw. atakiem DoS (ang. Denial of Service). Może on spowodować kosztowne przestoje, czy też wyłączenia, a w przypadku źle zaprojektowanych instalacji nawet ich nieprawidłową pracę (tak, jak w tej australijskiej oczyszczalni). Oczywiście jest to tym łatwiejsze, im bardziej podatne na zakłócanie jest medium transmisyjne – stąd najbardziej zagrożone są sieci radiowe, czy to oparte na lokalnej sieci bezprzewodowej, czy też na komunikacji z użyciem sieci GSM. W tym drugim przypadku można sobie wyobrazić sytuację, gdy do zdalnego sterowania i diagnostyki wykorzystywane jest urządzenie komunikacyjne zaopatrzone w kartę SIM jednego z operatorów, a ktoś czy to przez pomyłkę, czy też złośliwie, znając przypisany do niej numer zaczyna pod ten numer dzwonić.
Bartłomiej Besz, Product Manager RFID & Fieldbus, Turck Sp. z o.o. Sieci polowe od ponad 20 lat są bazą rozwiązań w automatyce przemysłowej. Urządzenia dla Profibus-DP, DeviceNet, CANopen czy Modbus-RTU stanowią podstawę wielu wdrożeń i z powodzeniem zrealizowanych aplikacji. Nie ma zatem zagrożenia by sieci te z dnia na dzień straciły na znaczeniu. Trzeba jednak przyznać, że rozwój tych standardów nie jest już tak dynamiczny. W ostatnich latach zauważalny jest wzrost znaczenia standardu Ethernet. Opracowane na jego bazie protokoły takie jak Profinet-IO, Ethernet/IP, Modbus-TCP zdobywają coraz większą popularność. Standard Ethernet dzięki poprawie parametrów oraz unifikacji topologii sieci stał się coraz bardziej dominującą technologią. Obecnie coraz trudniej znaleźć na rynku urządzenia nieposiadające funkcji wspierających ten standard. Ułatwia to scalanie systemów pracujących w różnych miejscach zakładów przemysłowych. Producenci widzą potencjał, jaki drzemie w integracji urządzeń na bazie Ethernetu, dlatego obszar możliwych zastosowań rozwiązań polowych przesuwa się w kierunku aplikacji specjalistycznych, a Ethernet jawi się jako podstawowy sposób komunikacji w automatyce. Niemniej jednak nie upatrywałbym dominacji tylko jednego z wymienionych standardów. Wręcz przeciwnie, wydaje się pewne, że protokoły na bazie Ethernetu oraz rozwiązania polowe będą ze sobą koegzystowały. |
Jak się bronić?
Rozwój sieci przemysłowych, a w szczególności powszechne wykorzystanie w nich Ethernetu, sprawia, że są one równie podatne na ataki jak sieci biurowe. Na szczęście wraz z zagrożeniami, importowano do przemysłu również nowe środki techniczne i mechanizmy pozwalające się bronić.
Podstawowym sposobem unikania potencjalnych problemów, jest zaprojektowana w odpowiedni sposób architektura sieci przemysłowych. Nie jest to jednak łatwe zadanie gdyż, podobnie, jak przy projektowaniu samego systemu sterowania, tak i tutaj wymagania dotyczące bezpieczeństwa stoją często w sprzeczności z prostotą i wygodą obsługi (a często także z względami ekonomicznymi). W procesie projektowania architektury sieciowej, z punktu widzenia bezpieczeństwa kluczowe są dwa pojęcia – segmentacja i separacja. Segmentacja oznacza podział sieci lokalnej na mniejsze części (segmenty) z użyciem przełączników, czy też routerów. Z kolei separacja to działanie mające na celu odizolowanie od siebie tych części. Można zauważyć, że separacja może wymagać wcześniejszej segmentacji. Postarajmy się zatem wyjaśnić dokładniej wpływ obydwu na bezpieczeństwo, a także przedstawić techniki, które mogą być pomocne przy ich praktycznej implementacji.
Aby podzielić sieć na segmenty należy przede wszystkim zgrupować urządzenia, które powinny się w nich znaleźć. Z punktu widzenia bezpieczeństwa należy się zawsze kierować zasadą, że połączenia należy ograniczać tylko do tych niezbędnych. Jeśli zatem jakieś urządzenia nie muszą się komunikować ze sobą lub komunikacja ta ma mieć charakter ograniczony, to powinny się one znaleźć w osobnych segmentach. Należy również pamiętać, że segmentacja ma umożliwić łatwiejsze zarządzanie dostępem do systemu, dając swobodę różnicowania uprawnień dla osób i urządzeń, a w przypadku ataku powinna ograniczyć potencjalne straty.
Oczywistym wydaje się zatem wydzielenie w pierwszej kolejności sieci systemu sterowania z sieci korporacyjnej (zakładowej). O ile w przypadku klasycznych sieci przemysłowych podział ten realizował się niejako samoczynnie za sprawą różnych typów komunikacji na poszczególnych poziomach funkcjonowania zakładu, o tyle obecnie za sprawą unifikacji i szerokiego stosowania Ethernetu często nie jest to już takie proste. Może się nawet okazać, że nie jest możliwe wyodrębnienie elementów systemu sterowania spośród innych urządzeń funkcjonujących na terenie zakładu, szczególnie jeśli znajdują się one w różnych, mniej lub bardziej oddalonych lokalizacjach.
Poza wydzieleniem sieci systemu sterowania z sieci korporacyjnej, często optymalne jest też podzielenie jej na mniejsze części powiązane z elementami procesu produkcji (zgodnie z zasadą ograniczania zbędnych połączeń). Takie rozwiązanie nie tylko zwiększa bezpieczeństwo, ale też redukuje (czasami znacznie) ruch sieciowy (np. poprzez zmniejszenie domen broadcastowych), podnosząc ogólną wydajność komunikacji. Także i w tym przypadku nie zawsze możliwe jest zgrupowanie urządzeń, które chcielibyśmy umieścić w jednym segmencie i połączenie ich do portów wspólnego przełącznika sieciowego.
Na obydwu etapach segmentacji sieci pomocne może okazać się rozwiązanie znane pod nazwą Wirtualnych Sieci Lokalnych (ang. VLAN – Virtual Local Area Networks) umożliwiające wydzielenie sieci logicznych bez konieczności ich fizycznego rozdzielania. Na rys. 3 pokazano na prostym przykładzie działanie tego mechanizmu. Mamy w nim dwa zarządzalne przełączniki, umieszczone w dwóch budynkach, do których podłączone są zarówno urządzenia biurowe (stacje robocze i telefony IP), jak i elementy systemu sterowania (reprezentowane tutaj przez sterowniki PLC i terminal SCADA). Narzucona struktura fizyczna nie odpowiada założonemu przez nas podziałowi funkcjonalnemu. Chcielibyśmy, aby system sterowania, podobnie jak telefony IP znajdowały się w wydzielonych segmentach sieci. Można to osiągnąć poprzez odpowiednią konfigurację przełączników i utworzenie trzech sieci wirtualnych (VLAN 1, 2 i 3). Taka struktura logiczna będzie odpowiadała fizycznemu połączeniu tych urządzeń do trzech różnych przełączników sieciowych.
Po zakończeniu procesu segmentacji sieci należy wykonać analizę potencjalnych korzyści i zagrożeń wynikających z komunikacji pomiędzy segmentami. Taka analiza może okazać się pomocna przy podejmowaniu decyzji dotyczących separacji segmentów, ewentualnie stopnia, w jakim zostanie ograniczony ruch sieciowy pomiędzy nimi. Z punktu widzenia bezpieczeństwa sieci przemysłowych najlepszym rozwiązaniem byłoby ich całkowite odizolowanie, i to najlepiej w sposób fizyczny, od reszty, „cywilnej” infrastruktury sieciowej. Oczywiście takie rozwiązania, z izolowaną siecią (najlepiej zamkniętą w betonowym bunkrze) znane z filmów szpiegowskich dotyczą raczej obiektów wojskowych, bądź przemysłowych o dużym znaczeniu strategicznym. W pozostałych przypadkach konieczne jest pozostawienie komunikacji pomiędzy częścią korporacyjną i przemysłową sieci, choćby w celu monitoringu i zarządzania produkcją, a także utrzymania systemu sterowania w odpowiednim stanie technicznym. Ważne jest natomiast, żeby komunikację tą ograniczyć do niezbędnego minimum, czemu służą rozwiązania takie, jak zapory ogniowe (ang. firewall).
Zapory ogniowe, jako kluczowy element bezpieczeństwa powstały w latach 80. i od tego czasu dość mocno ewoluowały, co było możliwe dzięki rozwojowi coraz wydajniejszych i bardziej dostępnych układów elektronicznych. Współcześnie stosowane można podzielić na trzy główne rodzaje, w zależności od metody działania i głębokości analizy ruchu sieciowego jaka jest w nich dokonywana.
Najprostsza, ale jednocześnie najszybsza metoda filtracji oparta jest na analizie adresów i portów każdego pakietu, a następnie porównaniu ich z listą reguł, celem podjęcia decyzji o jego przepuszczeniu lub zablokowaniu. Bazuje ona w większości na trzech dolnych warstwach modelu ISO, wykorzystując warstwę transportową jedynie do identyfikacji numeru portu. Filtracja pakietów tego typu była podstawą działania pierwszej generacji zapór ogniowych (określanych z ang. jako Packet Filtering Firewall). Jej skuteczność jest jednak ograniczona, ponieważ każdy pakiet jest badany osobno, jedynie przy wykorzystaniu danych w nim zawartych, przez co nie ma możliwości określenia stanu połączeń i analizy kontekstowej. Tworzy to pole do potencjalnych nadużyć, takich jak np. „przemycanie” informacji w specjalnie w tym celu spreparowanych pakietach.
Dużo skuteczniejszą metodą ochrony są zapory drugiej generacji, wyposażone w mechanizm inspekcji stanów (Stateful Inspection Firewall). Tego typu firewall wyposażony jest w pamięć, w której przechowywane są dane o stanie wszystkich połączeń realizowanych za jego pośrednictwem. Dzięki temu może on powiązać pakiet z konkretnym połączeniem i na tej podstawie podejmować decyzję o jego losie. Początkowo wykorzystywano w tym celu informacje z warstwy aplikacji, co wiązało się z dużym zapotrzebowaniem na moc obliczeniową, obecnie stan połączeń określany jest z użyciem filtra pakietów warstwy sieciowej.
Najbardziej zaawansowanym ale jednocześnie wprowadzającym największe opóźnienia rozwiązaniem, jest analiza ruchu sieciowego na poziomie warstwy aplikacji. Wykorzystujące ją zapory nazywane są pośredniczącymi (Application Proxy Firewall). Praca w warstwie aplikacji umożliwia nie tylko określenie rodzaju ruchu sieciowego, ale też kontrolowanie przesyłanych danych stąd zapory tego typu stosowane są m.in. do ograniczenia dostępu do konkretnych treści.
Zapory ogniowe są powszechnie stosowane pomiędzy sieciami LAN a Internetem, zmniejszając znacząco podatność tych pierwszych na infekcje z zewnątrz. Dzięki nim i wykwalifikowanemu personelowi IT, sieci korporacyjne są najczęściej bardzo dobrze zabezpieczone przez atakami z zewnątrz. Byłoby jednak szczytem nieodpowiedzialności opierać działanie sieci przemysłowej i jej bezpieczeństwo na zabezpieczeniach sieci korporacyjnej. Są to dwa różne środowiska, i tak jak sterowania systemem przemysłowym nie powierza się komputerom z supermarketu tylko dedykowanym sterownikom PLC/PAC, tak i zabezpieczenie sieci przemysłowej powinno być realizowane przez wydzieloną do tego celu zaporę ogniową. Poza uniezależnieniem się od infrastruktury, nad którą nie mamy kontroli, pozwala to również zmniejszyć zagrożenie atakiem z wewnątrz (sieci korporacyjnej), którego nie można przecież wykluczyć.
Tak więc podstawowym urządzeniem izolującym przemysłowy układ sterowania od zagrożeń z wewnątrz i z zewnątrz sieci korporacyjnej powinien być dedykowany do tego firewall. Zapora sieci korporacyjnej pełni wtedy rolę pierwszej linii oporu, tak jak to przedstawiono na rys. 4. Oczywiście firewall, nawet najlepszy jest bezużyteczny bez odpowiedniej konfiguracji. Konfiguracja większości zapór ogniowych jest pomyślana tak, żeby można było ją przeprowadzić w prosty sposób dla większości popularnych usług, może się jednak okazać nieco bardziej skomplikowana w przypadku protokołów przemysłowych. Tak, jak napisano na początku, najlepsza jest taka, która pozostawia tylko niezbędny ruch, eliminując każdy pozostały. Większość protokołów używanych swobodnie w sieci korporacyjnej okaże się przecież zbyteczne w sieci przemysłowej. Ta dobra praktyka, blokowania domyślnie całego ruchu i odblokowywania w kontrolowany sposób tylko tego, co konieczne nazywane jest polityką deny-all, permit-by-exception.
Jak już wspomniano, najczęściej wymóg komunikacji pomiędzy sieciami przemysłowymi i korporacyjnymi dotyczy aplikacji gromadzących i przetwarzających dane procesowe. Działają one na specjalnie przygotowanych w tym celu serwerach, które z jednej strony wymagają połączenia z urządzeniami w sieci systemu sterowania (do zbierania danych), a z drugiej strony z innymi komputerami (celem udostępniania zebranych danych, np. w postaci raportów wysyłanych pocztą elektroniczną lub prezentowanych na stronie WWW). Serwer taki może znajdować się w sieci systemu sterowania, ale wymaga to skonfigurowania firewalla tak, aby dopuszczał połączenia z nim komputerów z sieci korporacyjnej, co stanowi potencjalną wyrwę w systemie bezpieczeństwa. Z kolei umieszczenie serwera w sieci korporacyjnej, wymaga udostępnienia mu połączenia poprzez firewall z wybranymi urządzeniami systemu sterowania, co jest równie niebezpieczne.
Rozwiązaniem, umożliwiającym dostęp serwera gromadzącego dane do systemu sterowania, a jednocześnie zabezpieczającym sam system przed dostępem z sieci korporacyjnej, są tzw. Strefy Zdemilitaryzowane (ang. DMZ – Demilitarized Zone). Pełnią one rolę obszaru buforowego, pomiędzy sieciami chronionymi przez zaporę ogniową a sieciami zewnętrznymi. Mają one ograniczony dostęp do obydwu ale nie należą do żadnej z nich. Strefy zdemilitaryzowane wydziela się na jednym z interfejsów zapory ogniowej. Zastosowanie takiej konfiguracji przedstawiono na rys. 4. Serwer gromadzący dane ma ograniczony (np. do odczytywania określonego typu danych ze sterownika PLC/PAC) dostęp do sieci systemu sterowania i jednocześnie udostępnia te dane urządzeniom z sieci korporacyjnej. Nie jest natomiast możliwa bezpośrednia komunikacja między tymi dwoma rodzajami sieci. Poziom bezpieczeństwa można dodatkowo podwyższyć, zastępując pojedynczy firewall dwoma, z wydzieloną między nimi strefą DMZ. W takim wypadku zaleca się zastosowanie firewalli różnych typów, albo nawet różnych producentów, aby zmniejszyć zagrożenie spowodowane np. niezałataną dziurą w ich oprogramowaniu.
Poza gromadzeniem danych, wygodnym rozwiązaniem z punktu widzenia konserwacji i utrzymania ruchu jest umożliwienie zdalnego dostępu do systemu. Tutaj z kolei można zapewnić bezpieczeństwo wykorzystując technikę znaną jako tunelowanie z użyciem Wirtualnych Sieci Prywatnych (ang. VPN – Virtual Private Network) opisywaną wielokrotnie na łamach miesięcznika „Automatyka (np. w artykule „Bazując na standardzie Ethernet – praktyczne aspekty projektowania sieci przemysłowych”, nr 11/2015).
Oczywiście nie wszystkie aplikacje wymagają tak zaawansowanych środków bezpieczeństwa, jak już wspomniano podstawą jest analiza ryzyka, uwzględniająca potencjalne zagrożenia, prawdopodobieństwo ich wystąpienia i wywołane w efekcie straty ekonomiczne, ryzyko utraty zdrowia czy życia, obsługi czy szkody w środowisku naturalnym.
Tomasz Pawłowski, MenEdżer ds. rynku elektroniki, Weidmüller Sp. z o.o. Współczesna automatyka przemysłowa stawia coraz większe wymagania systemom sieciowym. Taki system powinien być niezawodny, prosty w obsłudze i konfiguracji oraz elastyczny, aby móc go dowolnie rozbudowywać. Szybkość transmisji danych i kompaktowa budowa to kolejne ważne cechy wpływające na decyzje klientów. Podczas eksploatacji system powinien umożliwiać szybką identyfikację awarii i wymianę uszkodzonych elementów, bez odłączania całego systemu. Wszystkie te wymagania spełnia system u-remote firmy Weidmüller. Coraz częściej jest on wybierany w aplikacjach maszynowych, tam gdzie wysoka jakość idzie w parze z rozsądną ceną. Dla klientów ważne jest również wsparcie techniczne, jakie otrzymają od producenta, zarówno na etapie projektowania, jak też integracji z systemem nadrzędnym. |
Podsumowanie
Nowe zagrożenia są wyzwaniem nie tylko dla producentów urządzeń przemysłowych i twórców standardów Ethernetu przemysłowego ale przede wszystkim dla inżynierów projektujących współczesne układy sterowania, którzy wkraczają coraz śmielej w obszar zastrzeżony do tej pory tylko dla specjalistów z działów IT. Koniecznością staje się zatem szkolenie wykwalifikowanej kadry potrafiącej połączyć wiedzę i doświadczenie z dziedziny automatyki przemysłowej z nowoczesnymi rozwiązaniami z zakresu technologii informacyjnych. Na szczęście wraz z ewolucją sieci przemysłowych rośnie świadomość zagrożeń płynących z cyberprzestrzeni, o czym świadczą coraz powszechniej dostępne urządzenia pomagające budować infrastrukturę sieciową z zastosowaniem najnowocześniejszych osiągnięć z zakresu bezpieczeństwa. Należy pamiętać, że zapewnienie bezpieczeństwa sieci przemysłowej jest procesem ciągłym, ponieważ ciągle pojawiają się nowe zagrożenia.
źródło: Automatyka 11/2016
Komentarze
blog comments powered by Disqus