Egy sebezhetőség, ami a Log4j-nél is rosszabb (és amely létesítményeket robbanthat fel és lelőheti a hálózatot)

Joe Weiss egyike az USA legnevesebb ICS kiberbiztonsági szakembereinek. Egy időben szoros együttműködésben dolgoztak Robert M. Lee-vel, a szakma egyik legnagyobb hatású, legkarakteresebb gurujával, a Dragos vezérigazgatójával. Aztán útjaik külön váltak, de mindkettőjük megnyilvánulásaira továbbra is érdemes odafigyelni.

Joe egyik figyelemre méltó posztját néhány hete „Egy sebezhetőség, ami a Log4j-nél is rosszabb (és amely létesítményeket robbanthat fel és lelőheti a hálózatot)” címmel január 2-án publikálta az Unfettered Blogján.

Nem akarván spoilerezni a kissé clickbait gyanús című, de megfontolandó tartalmat, most csak poszt egy mozzanatát emelem ki.

Joe kísérletet tesz arra, hogy szabályokat – avagy ahogy Joe írja – törvényeket fogalmazzon meg a folyamatmérések kiberbiztonságával kapcsolatban.

Joe huzamosabb ideje nyomja a vészcsengőt a Purdue modell legalsó – 1., de különösen 0. – szintjeibe sorolandó eszközök sérülékenysége tekintetében. Ennek ismeretében nem meglepő, hogy ezen eszközök biztonságára vonatkozóan megpróbál elővigyázatossági szabályokat, „törvényeket” megfogalmazni.

Joe Weiss 1. törvénye a vezérlőrendszerek kiberbiztonságáról:

A folyamatmérés integritása =
Engedélyezés + Hitelesítés + Pontosság

A folyamatmérés integritása biztosítja, hogy:

  • minden változtatást csak az végezzen, aki erre jogosult (Engedélyezés),
  • a jel az érzékelőtől származzon (Hitelesítés),
  • az érzékelő mérése vegye figyelembe az eltéréseket, akár nem szándékos, akár rosszindulatú (Pontosság).

Joe megállapítása szerint (az USA-ban) sem a kiberbiztonsági, sem a megbízhatósági sem a biztonsági szabványok nem foglalkoznak a folyamatmérések integritásával.

Joe Weiss 2. törvénye a vezérlőrendszerek kiberbiztonságáról:

A folyamatérzékelőkből származó „szemét” =
a hálózatokból kikerülő „szeméttel”

Avagy a kissé laza szöveget átfogalmazva:

Egy folyamatérzékelőből származó hibás bemeneti információ
szükségképpen a rendszer hibás kimeneti információját okozza.

A Joe szövegében említett „szemét” lehet:

  • nem szándékos (pl. szenzorok driftje (eltolódása, elmászása), üzemeltetők hibái, gyártási hibák stb.),
  • vagy rosszindulatú (fizikai vagy kiber eredetű) információ.

Joe „törvénye” célszerűen azzal a megszorítással kezelendő, hogy a rendszerbe beépített „önvédelmi” funkciók (pl. hihetőségvizsgálat) esetén a hibás bemeneti információ nem szükségképpen okoz hibás kimeneti információt.

Joe Weiss 3. törvénye az irányítástechnikai rendszerek kiberbiztonságáról (azaz a Commonsense Risk Index (CRI)) (megjelenésében sorokra bontva, a logikai kapcsolatokat kiemelve):

HA a folyamatmérés integritása sérül,
ÉS az érzékelő(k) katasztrofális meghibásodást okozhat(nak),
VAGY ahhoz hozzájárulhat(nak)
ÉS a kockázat magas,
AKKOR sürgős beavatkozás szükséges.

(Pl. atomerőmű keringtető szivattyúról érkező mérések, jelzések iránti magas megbízhatósági követelmény.)

Kommentárok Joe törvényeihez:

  1. Joe fenti „törvényei” jelenlegi szövegezésük mellett leginkább a folyamatmérésekre utalnak. Ugyanakkor nézetem szerint ezek kiterjeszthetők a folyamatjelzésekre (állás-, állapot- és hibajelzésekre) is.
  2. Joe logikája alapján a „törvények” – némi pontosítással – az alábbiak szerint kiterjeszthetők a folyamatba beavatkozó/működtető eszközökre is.

Úgyhogy most jól nekilátok „törvénykezni”… 😀

Azaz:

Joe Weiss 1. törvényének GéPé általi kiterjesztése:

A folyamat működtetés/beavatkozás integritása =
Engedélyezés + Hitelesítés + Pontosság

A működtetés/beavatkozás biztosítja, hogy:

  • minden változtatást csak az végezzen, aki erre jogosult (Engedélyezés),
  • a működtető/beavatkozó parancs az arra feljogosított eszköztől származzon (Hitelesítés),
  • a működtető/beavatkozás ismerje fel és kezelje az üzemszerűtől eltérő, akár nem szándékos, akár rosszindulatú működtetéseket/beavatkozásokat (Pontosság).

Joe Weiss 2. törvényének GéPé általi kiterjesztése:

A felsőbb szintekről érkező helyes működtető parancs is súlyos
– anyagi, vagy akár emberi –
következménnyel járhat, ha megszűnik a beavatkozó/működtető elem, eszköz integritása.

Joe Weiss 3. törvényének GéPé általi kiterjesztése:

Ha a beavatkozó/működtető eszköz integritása sérül,
ÉS a beavatkozó/működtető eszköz
katasztrofális következményt okozhat,
VAGY ahhoz hozzájárulhat
ÉS ennek magas a kockázata,
AKKOR sürgős beavatkozás szükséges.

A témának különös aktualitást ad pl. a digitális alállomások terjedése. Ezek egyik meghatározó jellemzője a folyamatcsatoló (jelző, mérő, működtető) elemek digitális kialakítása, ezzel ezek lehetséges sérülékenysége, integritásuk sérelme.

A Joe által következetesen „piszkált” probléma egyik – ha nem a legfontosabb – oka az lehet, hogy a korábban elterjedt „buta”, fix, ROM-ba beégetett programmal működő eszközök – így a technológia közeliek is – egyre inkább programozható kialakításúak, sőt üzemeltetői „kényelmi” okból akár távoli eléréssel is felszereltek. Ezekre a támadók akár a részükre „gyárilag beépített backdoor-ként” is tekinthetnek.

A probléma megoldása lehet egy „régi jó gyakorlat” visszahozatala, azaz

az érintett folyamatcsatoló eszközökbe a programok ROM memóriába égetése.

E megoldás előnye, hogy távolról az eszköz programja nem módosítható, ezzel az eszköz sem kényszeríthető hibás működésre.

Ugyanakkor a megoldás kétségtelen üzemeltetői hátránya, hogy bármely esetleges működési – azaz program – módosítás csak helyben, „fizikai beavatkozással” végezhető, ilyen módon komoly előkészületeket kíván. De ez a hátrány egyben előny is lehet, mert a programmódosítás a „tét nagysága”, költsége miatt bizonyára nagyobb odafigyeléssel történik.

És végül nehogy azt higgyük, hogy a fentebb megfogalmazottak valamiféle új és teoretikus problémát jelentenek.

Hát nem. A támadó már a 2009-2010. évi Stuxnet támadás során – azaz több, mint 10 éve! – képes volt az uráncentrifugák fordulatszámát úgy megváltoztatni – és ezzel tönkremenetelüket előidézni – hogy mindeközben a folyamatirányító rendszer a diszpécsereknek folyamatosan névleges fordulatszámot jelzett. Igaz, hogy adott esetben a támadó nem 0., hanem 1. (ill. 2.) szintű eszközöket sértett, de ettől még érvényes volt:

  • Joe 1. „törvénye” alapján GéPé első „törvénye”, hiszen a támadás következtében megszűnt az uráncentrifugák fordulatszámát szabályozó eszköz integritása,
  • egy 1. (vagy 2.) szintű eszközre vonatkoztatva Joe 2. törvénye is, hiszen az 1. (vagy 2.) szintű eszköz „szemét információkkal etette” a diszpécsereket,
  • végül Joe és GéPé harmadik törvénye, hiszen az integritás sértés több száz uráncentrifuga tönkremenetelét okozta.

Úgyhogy vigyázó szemeteket a Purdue 0., 1. (vagy 2.) szintre (is) vessétek!

[29]

***

Szívesen vesszük a fentiekkel akár egyetértő, akár azokkal vitatkozó üzeneteket. Ezekre pl. újabb posztban reagálva akár érdemi szakmai eszmecsere is megindulhat.