Látva a felzúdulást, ami jószándékú, hibát jelző programozó vegzálása miatt tört ki, a T+BKK külön-külön bocsánatkéréssel elkezdte a visszavonulást. Valószínűleg beszéltek néhány PR-ossal, miszerint ekkora öngólt sorozatban lassítva visszajátszani a nagy kivetítőn nem a legszerencsésebb ötlet.
Ami egyrészt mutatja a közösségi szolidaritás erejét és lehetőségét, ami érvényesíthető lenne akár nagyobb léptékű társadalmi problémák esetén is.
Másrészt az eset újfent felmutatta annak a szakócás pattintott fudalizmusnak az érvkészletét és működési mechanizmusát, amivel a hatalom jelenleg fogolyként kezeli saját állampolgárait (lásd az előző posztot: Dunai hekk).
Ennek főbb pontjai:
- A hivatal működésében nem lehet hiba.
- Amiben nincs hiba, azt nem is kell megjavítani.
- Az állampolgár nem megrendelője, tulajdonosa, kizárólag elszenvedője lehet a hivatal cselekedeteknek.
- Ennek megfelelően minden állampolgári oldalról érkező aktivitás támadásnak felel meg.
- A támadást azonnal meg kell torolni
Hogy a kiberbiztonsági területet nem ismerők is kicsit jobban megérthessék ennek a kérdésnek a jelentőségét, idehoznék egy, az előző posztra érkezett kommentet, ami kezdeti napok hivatali kommunikációt visszhangozza:
“Nem hekkelünk meg senkit és semmit - erre szóló jogszerű megbízás hiányában. Vannak erre cégeg, akik ezt legálisna űzik.
Egyszerű, nem?
A bolti lopást sem tekinti senki a bolti biztonsági rendszerek tesztjének.
A normális emberek egészen biztosan nem.”
A komment sugalmazásával ellentétben a közt nem érte kár, nem történt lopás, a fiatal azonnal nyilvánosságra hozta a hibát, és nem élt vissza vele.
De hogy tágabban is tudjuk értelmezni az esetet, egy egyszerű példával szeretném megvilágítani, hogy mi a társadalmi szerepe az etikus hacknek.
Tegyük fel, hogy egy iskola “Titanic emléktúra” névvel hajós osztálykirándulást szervez a gyerekeknek. Miután kifutottak, az egyik szintén a hajón utazó mérnök apukának gyanússá válik az iskola által a kirándulásra beszerzett Hapci gőzös, és lemegy a hajófenékbe körülnézni. Itt azt találja, hogy a széteső félben lévő, rozsdaette Hapciba számos résen keresztül szivárog be a víz, a kormánylapátot csak egy hajszál tartja, bármikor eltörhet, a rádió csak arra alkalmas, hogy fogja a Kossuth adót, vészjelzést leadni vele nem lehet, mentőcsónakok és mentőmellények pedig nincsenek. Gyorsan csinál pár fotót a problémákról, és bemutatva a bizonyítékokat értesíti a szülőket, hogy kurva nagy gáz van, sürgősen el kellene érni az első biztonságos kikötőt.
A kapitány reakciója erre, hogy lefogatja az aggódó apukát, szabotőrnek és terroristának kiáltja ki, aki engedély nélkül ment üzemi területre, azzal a céllal, hogy elsüllyessze a hajót, de szerencsére időben megakadályozták ebben a gonosz és aljas tervében. Egyben kinyilatkoztatja, hogy a hajó tökéletesen biztonságos, semmilyen veszély nem fenyeget, és most, hogy a terrorveszélyt elhárították, az osztály nyugodtan folytathatja útját a festői jéghegyek felé.
A T+BKK páros hanyagságból, hozzá nem értésből ilyen Hapci gőzösön utaztatta a rendszerbe regisztrálókat (a rendszer a biztonságos működést ellenőrző audit-programokon sorra “rendkívül gyenge” szuper-sebezhetőnek minősített osztályzatokat kapott). A rendszer pofonegyszerűvé tette a köz megkárosítását (a BKK nem magáncég, a mi pénzünkből működik), és tálcán kínálta az érzékeny felhasználói adatainkat. A hatóság mégsem a valódi veszélyt igyekezett elhárítani és nem a hiba elkövetői ellen indított nyomozást, hanem a hibák feltáróit vette célkeresztbe.
A köz jó érzékkel vállalt szolidaritást azokkal, akik elvégezve más munkáját, feltárták ezeket a súlyos problémákat, megelőzve egy nagyobb katasztrófát.
A biztonsági szakértők világszerte folyamatosan keresik a sebezhetőségeket a közérdekű rendszerekben, akkor is, ha arra a gyártó cég nem kéri fel őket. Egyszerűen azért, mivel a közérdek magasabb prioritású, mint a gyártó cég hiúsága, lassúsága, fiygelmetlensége vagy szimpla trehányssága. Mindezek a hiányosságok ugyanis óriási károkat képesek okozni, ha nem segítő, hanem ártó szándékú személyek találják meg őket. És itt tök mindegy, hogy az adott cég kitűzött-e úgynevezett Bug Bounty-t, azaz hibakereső díjat vagy sem, saját érdekünk, hogy a köztulajdon ne sérüljön, és ne lopják el az adatainkat. Más kérdés, hogy okos cégek igyekeznek megelőzni az ilyen blamát, és még a kibocsátás előtt ellenőrzik az általuk készített programokat, és az után is igénybe veszik a közösség segítségét a biztonság megőrzésében.
A T+BKK esetében egyik sem sikerült, megbuktak biztonságtechnikai, válságkezelési és kommunikációs szempontból egyaránt.
Mostanra eljutottak odáig, hogy elkezdjék a visszavonulást. Tekintsük ezt a botrányt mind a hivatal, mind a társadalom szempontjából optimistán egy tanulási folyamat kezdetének.
________________________________
UPDATE:
Már nem gyanusítják az etikus hekkert.
Nem gyanúsítják többet azt a fiút, aki felhívta a BKK figyelmét a rendszerének hiányosságára, mire a közlekedési vállalat cserébe rászabadította a rendőrséget.
"Az ügyészség helyt adott az engem védő Társaság a Szabadságjogokért ügyvédje által tett panasznak az ügyemben, ezáltal nem tekintenek a továbbiakban gyanúsítottnak, felmentettek" - írta a hekker a Facebookon.
"Az ügyészség megállapította, hogy a célom valóban és nem cáfolhatóan a biztonsági rés feltárása és ennek közlése volt a BKK felé, amelyet két e-mail címre is megtettem, de erre választ nem kaptam. Megállapították, hogy ahhoz, hogy kétséget kizáróan meggyőződjek a rendszerhibáról, szükséges volt a vásárlás befejezése; továbbá azt is, hogy a cselekményem vezetett ezen informatikai rendszer olyan módon történő kijavításához, mely kizárja a hasonló cselekmények kivitelezését a továbbiakban; a fentiek alapján pedig azt, hogy cselekményem nem veszélyes a társadalomra, mely a bűncselekmény megállapíthatóságának törvényi előfeltétele."
"Emellett megállapították, hogy a bejelentésem közérdekű bejelentésnek minősül (ami büntethetőséget kizáró ok), mivel olyan körülményre hívta fel a figyelmet, melynek orvoslása a közösség érdekét szolgálja, de mivel cselekményem a társadalomra való veszélyesség hiánya miatt alapból nem minősül bűncselekménynek, ezt a továbbiakban nem vizsgálták."
________________________________
UPDATE:
Azok számára, akiket érdekelnek a technikai részletek, idézem egy informatikai szakember összefoglalóját az e-jeggyel kapcsolatos hibák és sülékenységek természetéről:
"TL;DR: ha regisztráltál a BKK rendszerébe, érdemes jelszót cserélni, és új személyi igazolványt igényelni.
-----
Amit szerintem elsősorban meg kell érteni egy laikusnak, hogy az interneten egy bűncselekmény elkövetője tökéletesen el tud bújni, ezért a "bűnüldöző" logika nem működik, csak a "bűnmegelőző".
A második amit kontextusként meg kell érteni, hogy egy szolgáltató aki mások adatait kezeli az felel minden felhasználó adatainak biztonságáért. Ha őt feltörik, akkor azzal nem csak a saját biztonsága kompromittálódik, hanem a felhasználók biztonsága is.
Ebben a kontextusban menjünk végig a hibákon:
--- 50 forintos bérlet ---
Adott egy termék ára. A szerver megmondja a böngészőmnek, hogy mennyibe kerül a bérlet, a böngészőm pedig megmondja a banknak, hogy mennyit szeretne fizetni. Senki nem ellenőrzi, hogy ugyanazt a számot mondtam, amit nekem mondtak. Hasonlatnak azt tudom mondani, hogy ez olyan mintha a közértben a hentes lemérne a kért felvágottat, majd megmondaná nekem, hogy mennyit kell majd a kasszánál fizetnem, de nem írja fel sehova. Ez után a kasszás pedig minden további nélkül elhiszi amit mondok árnak, akkor is ha azt mondom 1 forint. Ha csupa becsületes ember lenne a világon, akkor ezzel nem lenne gond, csak hát az internet tele van kevésbé jó szándékú emberekkel is.
--- Plain text jelszavak ---
Minden szolgáltatónál előfordul, hogy minden erőfeszítés ellenére mégis bejutnak támadók az adatbázisba. Ilyen esetben az egyik legfontosabb megvédendő információ a felhasználók jelszava. Sajnos sokan ma is ugyanazt a jelszót használják több oldalon is (akár például a net bankjukhoz is), így ha kikerülnek a jelszavak, az különösen nagy baj.
Erre az iparági szabvány az, hogy a jelszavakat nem tároljuk, hanem egy úgynevezett egy irányú függvénnyel titkosítjuk. Így ha egy támadó hozzájut ezekhez a jelszavakból készített úgynevezett hash-ekhez, akkor még nem tudja megmondani az eredeti jelszót. (Annyi számítási kapacitás kellene hozzá, hogy ha a világ összes gépe ezen dolgozna, akkor is évekbe telne visszafejteni a jelszavakat.) Amikor valaki megadja a jelszavát, akkor arra újra kiszámítjuk a hash-t, és azt hasonlítjuk össze a tárolt hash-el.
Ezt az amúgy törvényben is előírt szabványt nem követte a T-systems fejlesztő csapata, ezzel veszélybe sodorva a felhasználókat.
A hasonlat az, mintha rám bíznák egy falu összes házának kulcsát, és én azokat a kocsimban hagynám jól látható helyen. Persze fel kell törni az autómat, hogy valaki hozzájusson, de csak az én autómat kell feltörnie, és akkor mindenki kulcsához hozzájut.
Amúgy azt nem tudjuk, de sejthetjük, hogy a többi adatot sem titkosítva tárolták. Így például a személyi igazolvány számokat sem. Tehát ha valakinek sikerül feltörni az adatbázist, akkor hozzájut több ezer ember olyan személyes adataihoz titkosítatlan formában amivel akár jelzálog hitelt is felvehet, vagy másként élhet vissza az emberek személyazonosságával.
--- E-mail-ben visszaküldött jelszó ---
Ez az előzőhöz annyiból kapcsolódik, hogy emiatt derült fény rá. Az e-mail-ről érdemes tudni, hogy eredetileg egyetemen belüli kommunikációra tervezték kísérlet képen, csak aztán véletlen elterjedt. Ezzel az a baj, hogy egyáltalán nem tervezték biztonságosra, út közben bárki elkaphatja, elolvashatja, sőt módosíthatja. (Ezért érdemes érzékeny információkat GPG alkalmazással titkosított formában küldeni ha e-mail-t használunk.)
Magyarul elküldeni valakinek egy jelszót e-mail-ben olyan mintha valakinek a lakás kulcsát egy átlátszó borítékban adnád fel, abban reménykedve, hogy a postás nem másolja le, és nem adja el utána betörőknek a másolatot a címmel együtt. (Megint csak fontos megjegyezni, hogy az emberek általában több helyen is használják ugyanazt a jelszót...)
--- Nyiltan elérhető profil adatok ---
Itt annyi történt, hogy el kérhetem a saját adataimat a rendszertől, de ehhez meg kell mondanom a nevem. A rendszer viszont nem ellenőrizte, hogy aki be van jelentkezve az azonos azzal a személlyel, akinek a profilját kérte a bejelentkezett felhasználó. Épp ezért bármely másik felhasználó adataihoz hozzá lehetett férni.
Magyarul egy személy azonossággal visszaéléshez szükséges adatokat bármely felhasználóról meg lehet tudni programozási ismeret, vagy az adat bázis feltörése nélkül. Szinte bárki megszerezhetett nyomok nélkül ilyen adatokat, és azzal akár - kedvenc példámnál maradva - jelzálog kölcsönt is felvetett volna.
--- Ellenőrizetlenül törölt regisztráció ---
Ez már a hackerkedésnek egy olyan területe, ami laikusoknak is könnyen érthető. Úgy nevezett social engineering. Ilyenkor arra apellálsz, hogy az ügyfél szolgálatos nincs felkészítve megfelelően és nem ellenőrzi a személyazonosságod mielőtt adatot ad ki, vagy teljesíti egy kérésedet. Ezzel gyakorlatilag úgy lehet kiszúrni valakivel, hogy regisztrálsz egy hasonló e-mail címet mint az övé (mondjuk kovacs.istvan@gmail.com helyett k0vacs.istvan@gmail.com) és a nevében kéred a regisztráció törlését. Legközelebb mikor utazni próbál a bérletével azt fogja tapasztalni, hogy már nem elérhető. Ez persze inkább gyerekes csíntevésre jó, de azért bosszantó tud lenni.
Sokkal aggasztóbb, hogy adott esetben elképzelhető, hogy hasonló social engineering technikával érzékeny adatok megadására sikerül rávenni az ügyfél szolgálatost.
--- SSL DROWN sérülékenység ---
Ez az egyetlen hiba, amire azt tudom mondani, hogy nem számít amatőr hibának. Nehéz is lenne laikusok számára érthetően részletezni mi a hiba. A lényeg az egészben, hogy a böngésző és a szerver közötti titkosított kommunikáció volt nem megfelelően beállítva, emiatt az lehallgatható volt. Itt is a jelszavak és személyes adatok kerülhettek rossz kezekbe, ha valakinek sikerül ezt kihasználva lehallgatni egy kommunikációt.
--- A BKK és a T-systems reakciója ---
Fontos megérteni, hogy a webes világban semmilyen körülmények között nem apellálhatunk a felhasználók jóindulatára, különösképp olyan esetben, mikor érzékeny adatokat tárolunk. Hibákat azonban mindenki elkövet. Éppen ezért a webfejlesztők között az a kultúra alakult ki, hogy ha megsejtünk egy sérülékenységet a másik rendszerében, akkor ellenőrizzük, hogy a sejtésünk helytálló-e (reprodukáljuk a hibát) és amennyiben igen, akkor azonnal értesítjük a szolgáltatót.
Ezt követően szoktunk időt adni a szolgáltatónak a hiba javítására, vagy legalább arra, hogy jelezze, hogy tudomásul vette a hibát, és javítani fogja mielőbb. Amennyiben azonban a szolgáltató nem reagál akkor nyilvánosságra szokás hozni a sérülékenység tényét, annak érdekében, hogy ha szolgáltató nem jár el felelősségteljesen (nem javítja a hibát) akkor a felhasználók tehessék meg a szükséges óv intézkedéseket. (Például jelen esetben indokolt az összes jelszó lecserélése, és új személyi igazolvány igénylése ha valaki regisztrálva volt a BKK oldalán.)"
Utolsó kommentek