SCADA in drugi industrijski nadzorni sistemi so še pred nekaj leti veljali za relativno varna okolja. Nameščeni so bili v zaprtih omrežjih, brez neposrednega dostopa do interneta. Kljub temu je bil prvi napad na SCADA omrežje ruskih plinovodov izveden že leta 1982. Danes imajo naprave, na katerih so nameščeni SCADA sistemi, svoje IP naslove, vedno bolj se povezujejo z drugimi IT sistemi in so lahko ravno tako ranljive, kot katera koli druga v internet povezana naprava.
Vseeno pa obstaja ogromna razlika med napravami, na katerih je nameščen SCADA sistem in napravami z »običajnimi« sistemi. Kakšna? SCADA opravlja nadzor kritične infrastrukture – na ravni proizvodnih gospodarskih družb in na državni ravni: elektrarne, oskrbovalna omrežja, proizvodnja ključnih dobrin. Že krajši izpad takšnega sistema ima lahko kritične posledice za družbo. Zato je pomembno, da je kibernetska varnost SCADA sistemov čim bolj nadzorovana in čim bolje upravljana.
Zakaj so tudi SCADA sistemi ranljivi?
Ne glede na zgoraj napisano so industrijski nadzorni sistemi verjetno najbolje varovani informacijski sistemi. Postavljeni so v ločenem omrežju, ki je zaščiteno s požarno pregrado in drugimi varnostnimi napravami. Zakaj so vseeno lahko tarča napada?
Omrežje industrijskega nadzornega sistema si lahko predstavljate kot vsako omrežje, ki se povezuje z internetom. Podobno, kot bi bilo IT omrežje vašega podjetja internetno povezano z IT omrežjem vašega dobavitelja. Le da je SCADA omrežje slepa ulica.
Dejavniki tveganja v SCADA omrežju so komponente sistema (PCL, RTU, MTU), ki pogosto tečejo na starih operacijskih sistemih, ki niti ne omogočajo več nadgradenj in varnostnih popravkov. Če napadalci zaobidejo požarno pregrado oz. druge varnostne naprave na perimetru, lahko dosežejo jedro sistema in ga zlorabijo. Sistem lahko zaustavijo, spremenijo način delovanja, ukradejo podatke ipd.
Sodobni industrijski nadzorni sistemi temeljijo na tehnologiji IoT; torej SCADA v oblaku. Pri takšnih postavitvah se poraja vprašanja kibernetske varnosti pri nameščanju komponent, vprašanje varnostnih politik, odtekanja informacij in sledenja potencialnim napadalcem. Vse to so izzivi, o katerih se morajo odgovorni pogovoriti, preden se odločijo za oblačno rešitev. Zavedati se morate tudi, da nameščanje iz oblaka lahko potencialno pušča za seboj več odprtih vrat (angl. back door) kot namestitev »on premise«, kar morate tudi ustrezno nasloviti.
Prav »odprta vrata« so tisti izziv, ki je s stališča kombinacije tradicionalnega in oblačnega SCADA sistema zelo problematičen. Zakaj? Kot smo že uvodoma omenili, SCADA deluje na starih sistemih, ki ne omogočajo več varnostnih popravkov. Dokler je ta sistem zaprt na svojem »ozemlju« in izoliran od internetnega sveta, to niti ni tako problematično. V trenutku, ko ga povežemo z oblačno tehnologijo, pa postane zelo ranljiv in izpostavljen vsem vektorjem napada, ki jim je izpostavljen perimeter informacijskega sistema organizacije.
V luči vsega naštetega je ustrezno naslavljanje varnosti SCADA sistemov visoko na prioritetni lestvici vsakega upravljavca.
Varnostno upravljanje SCADA sistemov
Kot v članku Architecture and security of SCADA systems* navajata Yadav in Paul, se SCADA pojavlja v številnih ključnih panogah, kot so kmetijstvo, kemična industrija, promet, gradbeništvo, zdravstvo, raziskovalni sektor in seveda energetika. Slednja vključuje vse od hidroelektrarn, jedrskih elektrarn, do distribucije. Vsakršne prekinitve v teh panogah vplivajo na življenje celotne države ali celo regije, zato morajo biti skrbno načrtovane.
Varnostna neoporečnost in nemoteno delovanje sistema sta tako ključna iz več razlogov, na primer zaradi preprečevanje finančnih izgub podjetja in okoljskih katastrof ter varovanja naših življenj.
Upravljanje varnosti SCADA sistema bi moralo potekati na dveh ravneh: v produkcijskem okolju in v testnem okolju. V produkcijskem okolju ves čas preverjamo, kje bi lahko prišlo do napada in posledične prekinitve delovanja (spremljanje ranljivosti), na kakšen način bi lahko bil napad izveden (kaj so možni vektorji napada), hkrati pa z rešitvami za zaznavanje in preprečevanje vdorov (IDS in IPS rešitve) ščitimo sistem.
Vzporedno v testnem okolju izvajamo dejanska testiranja sistema. Pri tem se za zelo učinkovito rešitev lahko izkaže postavitev digitalnega dvojčka (eng. digital twin). Digitalni dvojčki SCADA sistemov že obstajajo z namenom spremljanja in izboljšanja delovanja enako konfiguriranih okolji. V digitalne dvojčke so povezani arhitekturno enaki sistemi, ki dvojčku pošiljajo poročila o delovanju. Na podlagi zbranih podatkov lahko digitalni dvojček predvidi zaplete oz. odstopanja od normalnega delovanja in v sistemih, kjer še niso naleteli na obravnavano težavo. Informacije posreduje upravljavcem, ki lahko vnaprej pripravijo konfiguracijo na spremembo oz. jo ustrezno prilagodijo, da do težave sploh ne bi prišlo.
Testiranje SCADA sistemov (t.i. SCADA testbeds)
Sistem dvojčkov se lahko uporablja tudi za penetracijska testiranja. Veliko organizacij s SCADA sistemi že uporablja t.i. testna ali razvojna okolja, v katerih testirajo predvidene spremembe na sistemu, preden jih poženejo v produkcijskem okolju. Po naših izkušnjah se tudi penetracijski testi izvajajo v testnem okolju, saj tako preprečimo izpad storitve.
Testiranje SCADA sistemov zahteva specifična znanja in dobro poznavanje arhitekture sistema. Prepoznati je treba vse možne vektorje napada glede na nameščene varnostne naprave in naprave v samem nadzornem sistemu. Penetracijski test zahteva pripravo glede na specifiko sistema, pri čemer je treba upoštevati tudi panožne standarde, direktive in priporočila.
Dodatna specifika testiranja industrijskih nadzornih sistemov je, da se testi praviloma izvajajo v demo okolju. Produkcijska okolja morajo čim bolj nemoteno delovati, kakršna koli motnja, kaj šele vdor, ima lahko hude posledice za dobavno verigo nujno potrebnih življenjskih dobrin ali pa je celo življenjsko nevarna. Testiranje produkcijskega okolja se tako praviloma izvaja po načelu »bele škatle« (ang. white-box testing), kjer pentesterji pregledajo konfiguracijo omrežja in povezanih varnostnih naprav; identificirajo potencialno nevarna področja in varnostne luknje.
Dejansko penetracijsko testiranje se izvaja v testnem okolju, ki v največji možni meri posnema stanje v produkcijskem okolju. Na podlagi rezultatov penetracijskega testa lahko enake ugotovitve prenesemo v realno okolje in jih ob skrbno načrtovanih postopkih tudi implementiramo. Pri tem je treba upoštevati vsa tveganja, ki jih takšne spremembe lahko prinesejo. Če je le možno, posege opravite, ko je sistem zaustavljen.
Cilj penetracijskega testa ni le ugotovitev stanja, temveč njegovo izboljšanje. Kakovostno in strokovno pripravljeno poročilo vsebuje priporočila, s katerimi lahko upravljavci izboljšajo varnost SCADA sistema. Želja etičnega hekerja, ki je takšno priporočilo pripravil pa je, da so ob validacijskem varnostnem pregledu vsa priporočila upoštevana, nova konfiguracija pa preverjena v testnem okolju in pripravljena na prenos v produkcijo.
* Yadav, G. in Paul, K. (2021): Architecture and security of SCADA systems. International Journal of Critical Infrastructure Protection 34.