Skip to content

Régi „szép” kibertámadások az ukrán villamosenergia-rendszer ellen (1. rész)

Table of Contents

6 éve kibertámadás érte az ukrán villamosenergia-rendszert. Kijev északi része 1 órára ellátatlanná vált. Manapság Ukrajna bizonyára sokat megadna azért, ha „csak” Kijev egy részén és „csak” 1 órára lenne áramszünet. Ennek ellenére nem tanulságok nélküli a 6 évvel ezelőtti támadás történéseinek felelevenítése.

2 éve, az Elektrotechnika szakfolyóiratban megjelent cikkben idéztem fel az 1996. december 17-ei támadás tanulságait, közte a támadás villamos vonatkozásait.

Bár Ukrajnának ma összehasonlíthatatlanul súlyosabb kihívásokkal kell szembesülnie, azonban súlyos tévedés lenne azt hinni, hogy csökkent volna az újabb – és akár még súlyosabb kihatású – támadások veszélye. Az idén áprilisi INDUSTROYER2 és PIPEDREAM támadásik kizárólag azért nem okoztak súlyos zavart a villamosenergia-ellátásban, mert Ukrajna a 2016. december 17-ei (illetve a 2015. december 23-ai) támadás nyomán jelentősen megerősítette a kibervédelmét.

A 6 évvel ezelőtti támadást azért is indokolt felidézni, mert az INDUSTROYER2 malware éppen a 6 évvel ezelőttinek a jelentős továbbfejlesztése.

Az alábbi szöveg a 2 évvel ezelőtti cikk szerkesztett változata.

A támadás lépései, összetevői

A kelet-ukrajnai szeparatista törekvések, valamint a Krím elszakadása miatti 2015. évi feszültség 2016-ban is fennállt. 2016. decemberében számos szenzitív ukrán célpontot ért kibertámadás (1. ábra).

1. ábra: Az Ukrajnát ért 2016. decemberi kibertámadások Forrás: https://www.slideshare.net/MarinaKrotofil/s4-krotofil-morningsesh2017

Ennek a támadássorozatnak volt az egyik mozzanata az ukrán villamosenergia-ipari rendszerirányító, az Ukrenergo Kijev északi része villamosenergiaellátását biztosító Pivnichna-észak 330/110/10 kV-os átviteli hálózati alállomása (2. ábra) elleni támadás. [1, 2]

2. ábra: Képernyőkép Pivnichna (észak) 330/110/10 kV-os alállomás diszpozíciójáról (2014. február 12-ei állapot) Forrás: https://enpaselectro.com/en/tehnologii/sistemy-upravleniya.html

Az alállomás elleni kibertámadás következtében december 17-én 23:53-kor üzemirányítói szándék nélküli sorozatos megszakító kikapcsolódásokra került sor. Ennek következtében Kijev északi részén kb. 200 MW összteljesítményigényű, pontosan nem ismert számú fogyasztót érintően megszűnt az áramszolgáltatás, melyet másnap 01:05-re sikerült helyreállítani. Mint az elemzések megállapították, a támadás kiterjedt volna az alállomáson működő Siemens SIPROTEC védelmekre is, de ez később részletezendő okból meghiúsult. A támadás zárásaként adatok törlődtek az alállomás irányítástechnikai rendszeréből.

A támadó 2016. augusztusától adathalászattal igyekezett az Ukrenergo-tól és annak beszállítóitól adatokat szerezni. Egyebekben az előkészítés során a támadó vélhetően alapos, nyílt forrású információszerzést (OSINT) végzett. Ennek egyik célja minden bizonnyal a kulcsfontosságú pozíciókat betöltő és/vagy az Ukrenergo-val kapcsolatos speciális ismeretekkel rendelkező alkalmazottak (pl. rendszergazdák, védelmi és irányítástechnikai mérnökök) azonosítása volt. Az OSINT másik célja az Ukrenergo ügyviteli és technológiai informatikai rendszereinek, a használt eszközöknek, operációs rendszereknek, az informatikai hitelesítő adatoknak a megszerzése lehetett. A Pivnichna-i alállomásra vonatkozó információk laza kezelése miatt a támadó az OSINT keretében minden bizonnyal értékes adatokhoz juthatott. Ennek egyes konkrétumaival, valamint általánosságban a villamosenergetikai OSINT fontosságával a cikksorozat III. része foglalkozik. [3]

A fegyver

A manuálisan végrehajtott 2015. decemberihez képest a 2016. decemberi nagymértékben „automatizált” – azaz a támadó operatív közreműködését nem igénylő – támadás volt. A támadás automatikus végrehajtását egy egyedileg kifejlesztett, az elvégzett elemzések szerint igen fejlett, moduláris felépítésű, utóbb INDUSTROYER-nek (avagy CrashOverride-nak) elnevezett malware végezte. Ezt az elemzések szerint kifejezetten a villamos hálózati elemeket támadni képes malware-t vélhetően az Electrum néven emlegetett, feltételezetten orosz kötődésű csoport fejlesztette ki. A CrashOverride veszélyességét mutatja, hogy az iráni urándúsítót támadó Stuxnet után ez volt a második, kifejezetten ipari működés megzavarására kifejlesztett és bevetett malware. Az elemzések szerint a CrashOverride-ot nem arra tervezték, hogy a megtámadott hálózatból adatokat szerezzen, hanem kifejezetten arra, hogy áramszüneteket, sőt fizikai kárt okozzon.

Az elemzések szerint az INDUSTROYER egyik modulját célirányosan arra tervezték, hogy az RTU-kat támadva a megszakítók kikapcsolását idézze elő. További cél volt, hogy a Siemens SIPROTEC védelmeken szolgáltatásmegtagadást (DoS) váltson ki. Egy további modul szolgált az alállomás távfelügyeleti lehetőségének a kizárására. Végül egy wiper (ablaktörlő) nevű modul a támadás utánra, december 18-án 02:20-ra időzítve lépett működésbe és törölte a fontosabb konfigurációs és egyéb rendszerfájlokat, ezzel nehezítve az üzemzavar-elhárításához szükséges helyreállítást. A malware bizonyos ABB fájlokat is keresett, hogy törölje azokat, de az ABB készülékekben nem talált olyan sérülékenységet, melyen keresztül ezt meg tudta volna tenni. [4]

Az RTU-k elleni támadás

Meglepő módon a támadásról készült elemzések nem túl mélyrehatók az RTU-kat érintő történések tekintetében, továbbá nem tartalmazzák az RTU-k és a switch-ek típusát. Végül e cikk írásakor ezeket némi kereséssel sikerült beazonosítani: ABB RTU560 és REC670, ill. a CISCO különféle termékei. A keresés során szerzett benyomások további – a cikksorozat III. részében részletezendő – következtetések levonására adnak módot.

Az elemzések szerint a támadó az INDUSTROYER-t úgy tervezte, hogy az IEC 101, 104 vagy 61850 protokollt alkalmazva az alállomási RTU-k működésében képes legyen olyan végtelen hurkokat kiváltani, melyek egyrészt kikapcsolták az egyes RTU-khoz csatlakozó megszakítókat, másrészt azok esetleges távbekapcsolása után ismételten kikapcsolták azokat. Ezzel egyrészt lehetetlenné vált a megszakítók távoli visszakapcsolása, másrészt a támadó rákényszerítette az üzemeltetőt, hogy a nagyobb áttekintést adó, ezért biztonságosabb távkapcsolás helyett közvetlenül az alállomáson, helyi, kézi kapcsolásokkal igyekezzen visszakapcsolni a megszakítókat. Ezzel a támadó miközben lelassította a helyreállítást, kockázatosabbá is tette azt. Nem érhető el arra vonatkozó információ, hogy a támadás nyomán melyik feszültségszinten melyik megszakítók kerültek kikapcsolásra.

A védelmek elleni támadás

A 2012. évi kiépítettségre elérhető információk alapján a Pivnichna-i alállomáson 330 kV-on ABB, Siemens és GE védelmek, 110 kV-on pedig ABB védelmek működtek.

Az ICS-CERT 2015. július 21-én ICS biztonsági javaslatot hozott nyilvánosságra a Siemens SIPROTEC 4 és SIPROTEC Compact védelmeinek, valamint EN100 Ethernet kártyáinak sérülékenysége kapcsán azt követően, hogy egy orosz szakember felfedezte, majd bejelentette azt a Siemensnek, amely ennek nyomán firmware frissítést adott ki. A felfedezett sérülékenység kihasználásával az érintett védelmekben szolgáltatásmegtagadás (DoS) lett volna előidézhető, melynek következtében a védelmek nem lettek volna képesek ellátni védelmi funkciójukat. Arra vonatkozóan viszont nincs információ, hogy a Pivnichna-i alállomás SIPROTEC védelmein a támadás időpontjáig végrehajtották-e a firmware frissítést. Az elemzések szerint a malware megkísérelte a SIPROTEC védelmek támadását, a DoS kiváltását, melynek nyomán azok „firmware frissítés” módba váltottak volna. Ez azonban a védelmek korlátozott erőforrásai (főleg memóriája) miatt egyben a védelmi képességek elvesztését is jelentette volna. Ezzel a támadási elemmel a támadó sikerrel azonosította a védelmek egyik jellemző hiányosságát, a védelmi funkciók mellett a kiberbiztonsági funkciók futtatását is biztosítani képes erőforrás-többlet hiányát.[5]

Elsőre ránézésre furcsa lehet a kikapcsolt megszakítók mellett a védelmek támadásának a szándéka, célszerűsége. Az elemzések szerint a támadó a 2015. évi támadásra adott üzemeltetői reagálásokból azt a következtetést vonhatta le, hogy az elektrikusok kellő pillanatnyi állapotismeret, ennek részeként a minden bekapcsolási előfeltételről – közte a védelmek működőképességéről – való meggyőződés nélkül is amilyen gyorsan csak lehet, visszakapcsolnak, azaz akár működő védelmek nélkül állítják helyre a villamosenergiaellátást. A védelem nélküli visszakapcsolás magában hordozhatta a hálózati elemek súlyos károsodásának a veszélyét. Szándéka szerint a támadó ezzel a taktikával a megszakítók kikapcsolásával okozott kiterjedt ellátatlanság mellé egy második, a hálózat fizikai károsodásának a lehetőségét is magában hordozó támadási lépcsőt is beiktatott. A támadó mondhatni a kezelőszemélyzet ellen tervezett ún. túlterheléses támadást végrehajtani arra alapozva, hogy a mielőbbi visszakapcsolás miatti időszűkében a kezelőszemélyzetet hibára kényszerítse. Azonban szerencsére a támadó a malware készítésekor kódolási hibát vétett, így a malware nem volt képes kompromittálni és használhatatlanná tenni a SIPROTEC védelmeket.

Az elérhető információk alapján még egy a SIPROTEC védelmek elleni maradéktalanul sikeres támadás esetén sem maradtak volna védelem nélkül távvezetékek, transzformátorok, gyűjtősínek, mert a támadással nem érintett ABB védelmek működőképesek maradtak volna.

Bár a támadó a védelmek tekintetében nem érte el minden tervezett célját, azonban különösen fontos felismerni a támadó szándékainak ezt a különösen veszélyes aspektusát. Az eset egyebek mellett arra hívja fel az üzemeltetők figyelmét, hogy egy ellátatlanságot okozó kibertámadás után sem lehet abszolút cél a minél gyorsabb feszültség alá helyezés, mivel a megtörtént eset alapján a támadó éppen a gyorsaság miatt lankadó elővigyázatosságra építve próbálhat még nagyobb kárt kiváltani.

Tanulságok

A támadó demonstrálta, hogy képes befolyásolni a villamosenergiarendszer egyes elemeinek működését, hibákat okozni bennük, valamint megzavarni azok távfelügyeletét, ezzel kikényszeríteni, hogy a normál üzem helyreállítása csak a helyszínen legyen lehetséges. A történtek azt bizonyították, hogy van olyan támadó, amely képes akár hosszú és erőforrásigényes művelet keretében mindazon komplex – informatikai és villamosenergetikai – szaktudás és helyismeret megszerzése, melynek birtokában a célpont sajátosságaira „testreszabott”, eredményes támadást képes végrehajtani.

Bár a támadó kétségtelenül hibát követett el a SIPROTEC védelmek támadásakor, ill. még esetleges sikeres támadást feltételezve is alábecsülte az átviteli hálózat ellenállóképességét, mindezek ellenére is kimondható, hogy a támadó nem használta ki a rendelkezésére álló összes lehetőséget, így a hálózattulajdonosok részéről súlyos hiba lenne alábecsülni a történteket.

Végül az elemzések egyik ijesztő következtetése, hogy a támadási módszer és eszköz nem a Pivnichna-i alállomás irányítástechnikai és védelmi rendszere és az azt alkotó konkrét eszközök elleni támadásra volt specifikus. A szakértők kis igazítással Ukrajnán kívül más – jellemzően európai, Közel-Keleti, valamint egyes ázsiai – országok villamosenergia-rendszerei ellen is alkalmazhatónak ítélték.

Összegzés

A 2016. évi támadás szofisztikált, többlépcsős kialakításával a támadó a fogyasztói ellátatlanság mellett lehetetlenné tette az üzemirányítói távfelügyeletet, működésképtelenné akarta tenni a védelmeket, arra számítva, hogy a kikényszerített helyszíni, kézi visszakapcsolással a védelem nélkül maradó hálózati elemeket fizikai károsodás is érheti. Ilyen hosszú előkészületre, nagy erőforrásokat igénylő „hadműveletre” csak állami hátterű támadó képes.

Az ukrajnai támadások óta nem csökkent a villamosenergiarendszer veszélyeztetettsége. Éppen ezért indokolt e támadások máig érvényes tanulságainak az ismerete, de főleg az abból fakadó intézkedések folyamatos megtétele.

Források

[1] http://fifthdomain.com/2017/01/29/how-a-power-grid-got-hacked/

[2] https://ics.sans.org/media/E-ISAC_SANS_Ukraine_DUC_6.pdf

[3] https://www.fifthdomain.com/home/2017/01/29/how-a-power-grid-got-hacked/

[4] https://dragos.com/wp-content/uploads/CRASHOVERRIDE.pdf

[5] https://www.us-cert.gov/ics/advisories/ICSA-15-202-01

Latest