KRÉTA-ügy: Aggasztó a kiszivárgott forráskód, de arra utal, hogy a hekkerek nem mindenhez fértek hozzá

Legfontosabb

2022. november 11. – 10:14

KRÉTA-ügy: Aggasztó a kiszivárgott forráskód, de arra utal, hogy a hekkerek nem mindenhez fértek hozzá
Fotó: Telex

Másolás

Vágólapra másolva
  • Cikksorozatunk első részében megírtuk, hogy még szeptemberben adathalász támadás érte a KRÉTA fejlesztőcégét, az eKRÉTA Informatikai Zrt.-t. A támadók a közoktatás minden intézményében kötelezően használt állami adminisztrációs rendszer adataihoz is hozzáférhettek.
  • A második részben arról írtunk, hogy a fejlesztőcég már akkoriban is tudhatott az illetéktelen behatolásról, de megpróbálta elhallgatni a történteket. Bemutattuk, hogyan reagáltak a cégen belül az incidensre, beszéltünk a támadás mögött álló egyik hekkerrel, és adatvédelmi szakértőt kérdeztünk arról, mivel járhat az adatvédelmi hatóság első cikkünk után elindított eljárása.
  • Ebben a cikkben az eKRÉTA Zrt. volt fejlesztői és egy független szakértő beszélnek arról, mekkora veszélyt jelenthet, hogy a hekkerek közzétették a KRÉTA forráskódját, illetve hogy magából a kódból mi olvasható ki.
  • A volt KRÉTA-fejlesztők arról is beszéltek, hogy a cég jelenlegi problémáihoz a nepotizmus és a szakemberek elvándorlása is hozzájárulhatott.

A kormány már szeptemberben tudta – és néhány szülő is

Ahogy szerdai cikkünkben írtuk, a fejlesztőcégnél már szeptemberben tisztában voltak azzal, hogy illetéktelen behatolás történt. A cég nem reagált a megkereséseinkre, így hivatalos megerősítést erre nem kaptunk. Nem sokkal cikkünk megjelenése után azonban ez is megérkezett, igaz, váratlan helyről: Gulyás Gergely Miniszterelnökséget vezető miniszter az aznapi kormányinfón a Telex kérdésére elismerte, hogy a kormány már szeptemberben, „a történtek után néhány nappal” értesült a KRÉTA-t ért sikeres támadásról.

Gulyás azt is elmondta, hogy „nem tudjuk, hogy hol történt mulasztás, és elkerülhető lett volna vagy sem”, de már folyik a vizsgálat ezek megállapítására. (Az nem volt világos, hogy ez a vizsgálat még akkor indult, és maga a kormány vagy valamilyen háttérintézménye vizsgálódik, vagy pedig az első cikkünk után indult adatvédelmi hatósági vizsgálatra utalt ezzel.)

Gulyás Gergelynek a KRÉTA-üggyel kapcsolatos kérdésekre adott válaszait külön videóban is összevágtuk:

Közvetve egyébként nemcsak Gulyástól érkezett megerősítés, hanem a KRÉTA-t használó néhány olvasónktól is. Egymástól függetlenül ugyanis többen is arról számoltak be, hogy szeptember végén a cég korlátozta a KRÉTA-elérésüket, mint kiderült, egy bizonyos hekkertámadás miatt.

Az egyik olvasónk a családjával Bécsbe költözött, de az egyik gyerekük egyéni tanrendben a magyarországi iskolája tanulója maradt, a tanítója pedig a KRÉTA-n keresztül adta ki a tananyagot és a feladatokat. „Ez a rendszer kiválóan működött, egészen szeptember végéig. Ekkor egyik napról a másikra elérhetetlenné vált a Kréta számunkra Bécsben. Az iskolatitkárral több körben egyeztettünk, mire neki sikerült kiderítenie a KRÉTA ügyfélszolgálatán keresztül, hogy átmenetileg korlátozták a külföldi IP-címről történő hozzáférést” – írta nekünk. Az Oktatási Hivatallal nem tudott dűlőre jutni az ügyben, de végül sikerült telefonon elérnie a KRÉTA ügyfélszolgálatát.

„A KRÉTA-t külföldi IP-címről érte támadás, ezért tiltották le a külföldi elérhetőséget. Azonban ezt nem ők tették meg, hanem a Nemzeti Infokommunikációs Szolgáltató (NISZ), méghozzá úgy, hogy nekik (a KRÉTA-nak) sem mondták meg, hogy meddig fog tartani a korlátozás. Az úr annyit tett még hozzá, hogy nagyon nagy a titkolózás, ők maguk sem tudnak semmit, csak remélni tudja, hogy a feloldásról küldenek majd nekik információt.” A NISZ biztosítja az infrastruktúrát, amelyen a KRÉTA fut, de amikor az első cikkünk megjelenése előtt megkerestük őket, hogy meg tudják-e erősíteni a támadás tényét, azt írták, a válaszadásban nem illetékesek.

„Pár nappal később kaptam még egy emailt a KRÉTA ügyfélszolgálatától, amelyben azt írták, hogy azt sikerült elérni, hogy amennyiben megadok egy fix külföldi IP-címet, ahonnan be szeretnék rendszeresen lépni a KRÉTA-ba, akkor arra a címre vonatkozólag fel lehet oldani a korlátozást. Ha ugyanis megadom az IP-címemet, ellenőrizni tudják, hogy nem én voltam a hekker, és azt is, hogy ha a jövőben ilyen lesz, nem tőlem indul a támadás” – írta olvasónk. A projektvezetőktől kiszivárgott kommunikációból egyébként úgy tudjuk, az első illetéktelen hozzáférést Göteborgból észlelték, de a valós tartózkodási helyet elfedő VPN-szolgáltatások valószínűsíthető használata miatt ez feltehetően nem sok mindent árul el arról, honnan indulhatott valójában a támadás. Olvasónk végül nem élt a felkínált lehetőséggel, és csütörtökön azt írta, a KRÉTA jelenleg is elérhetetlen Bécsből.

Egy másik olvasónk is hasonlóan járt. Ők szlovák állampolgárok, de a fiuk egy magyarországi gimnáziumban tanul. Ő azt írta, szeptember 29-től volt letiltva a KRÉTA-hozzáférés külföldi IP-címekről. „Minden héten leveleztem emiatt az eKRÉTA ügyfélszolgálatával, de eredménytelenül. A blokkolás csak múlt pénteken, november 4-én lett feloldva” – írta.

Egy harmadik olvasónk esete némileg más: „Szülőként használom a KRÉTA-t, és szeptember végén/október elején feltűnt, hogy nem tudok a tanároknak közvetlenül üzenetet küldeni. Írtam az iskolának is, akik aztán tájékoztattak is arról, hogy adathalász támadás érte a KRÉTA-t, és ezért átmenetileg le lett tiltva a funkció. Ezt a kérésemre azután visszaállították.”

A cégnél azt hihették, adat nem került ki

A kormány és egyes iskolák tehát tudhattak a történtekről, de úgy tűnik, hogy a közoktatás több szereplője is csak a héten értesült a támadásról a sajtóból. Eljutott hozzánk a Belső-Pesti Tankerületi Központ levele, amelyet az iskolaigazgatóknak küldött ki a második, szerdai cikkünk után:

„Tájékoztatom, hogy a cikkben megjelentekre tekintettel a Tankerületi Központ potenciális adatvédelmi incidensként kezeli a KRÉTA rendszer elleni lehetséges támadást, melyet […] az adatkezelő jelent a Hatóságnak, valamint a Klebelsberg Központon keresztül kérünk tájékoztatást az eKRÉTA Informatikai Zrt.-től mint a rendszer üzemeltetőjétől.”

Forrás: Olvasónk / Telex.hu
Forrás: Olvasónk / Telex.hu

Ezek az esetek azért is érdekesek, mert a jelek szerint a fejlesztőcég kommunikációja meglehetősen kusza volt az ügyben: a nyilvánosságot nem tájékoztatták, ahogy a hatóságokat sem, de a kormányt igen, és a cég ügyfélszolgálata egy-egy érdeklődő szülővel is megosztotta az információt, majdnem két hónappal azelőtt, hogy a közvélemény értesülhetett volna róla.

Úgy tudjuk, hogy az eKRÉTA Zrt.-nél szeptemberben, miután tudomást szereztek magáról a hekkerek bejutásáról, még arra a megállapításra juthattak, hogy adatszivárgás nem történt (azt pedig pláne nem tudták, hogy a hekkerek még több mint egy hónappal később is a rendszereikben vannak). Az adatok kikerülésének nyomait csak az első cikkünk után találták meg, de ők úgy látták, hogy a támadók hozzáférése korlátozottabb volt.

Azt hitték, csak ahhoz juthattak hozzá, ami az adathalász emaillel rászedett projektvezető gépén különféle okokból elérhető volt, a teljes rendszert nem – ami, ha bebizonyosodna, jó hír lenne, hiszen azt jelentené, hogy a gyakorlatban érintettek köre is jóval szűkebb lenne az elméletileg lehetségesnél. Mindezt hivatalos forrásból sajnos továbbra sem tudjuk megerősíttetni, mert a cég még egyetlen megkeresésünkre sem reagált semmilyen csatornán, amikor cikkeink megjelenése előtt a történtek tisztázására kértük.

Mit árulhat el egy forráskód?

Azután, hogy a hekkerek szerda reggel bejelentették, hogy közzé fogják tenni az eKRÉTA Zrt.-től ellopott forráskódot, a közösségi médiában és szakmai fórumokon számos szakértő figyelmeztetett arra, hogy ez azért lehet veszélyes, mert megkönnyítheti az esetleges támadásokat a sok ezer diák adatait kezelő KRÉTA ellen. Majd miután szerda este a hekkerek valóban kitettek egy kódcsomagot a Telegram-csatornájukra, elkezdtek terjedni a kódrészletekről a képernyőképek, és mindenki azon szörnyülködött, hogy milyen amatőrnek tűnő megoldásoktól – és válogatott káromkodásoktól – hemzseg.

Ezzel azonban érdemes óvatosan bánni, mert a hekkerek csak azt és csak úgy hozták nyilvánosságra, amit és ahogy azt ők jónak látták, a kódok pontos eredete, kontextusa, frissessége vagy elavultsága, illetve a közzé nem tett kódok minősége nem ismert. Ezért felkerestünk több, korábban az eKRÉTA Zrt.-nél dolgozó fejlesztőt, akiknek már nincs közük a céghez, így érdekükben sem áll szépíteni az ott folyó munka színvonalán, viszont jól ismerik a munkafolyamatokat és a KRÉTA mögötti kódbázist. (A téma körüli felhajtás miatt mindannyian csak név nélkül vállalták a nyilatkozatot.) Ezenkívül egy független, kódelemzésben jártas kiberbiztonsági szakértőt, Csermák Szabolcsot is felkértük, hogy mondjon szakvéleményt a látottakról.

Újra megkerestük a KRÉTA korábbi fejlesztési vezetőjét, Kovács Gábort is, akit az első cikkünkben már megszólaltattunk. Ő a kód részleteiről jogi okokból nem akart nyilatkozni, de annyit elmondott, hogy a nyilvánosságra hozott kódrészletek arra utalnak, hogy a támadók valóban korlátozottabb hozzáféréssel rendelkezhettek:

„A megosztott forráskód az eKRÉTA kis részét öleli fel, ez csak a KRÉTA-alaprendszert tartalmazza, a rengeteg kiegészítő modul, a fenntartóknak készült központi rendszer, a cég egyéb informatikai munkái, de akár a mobilapplikáció értelemszerűen nincsenek benne.”

Csermák Szabolcs kiberbiztonsági szakértő, etikus hekker ezzel kapcsolatban arra hívta fel a figyelmet, hogy a forráskód közzététele akkor is jelenthet kockázatot, ha csak részleges: „Egy rendszerben biztonsági hibákat keresni akkor a legegyszerűbb, ha a forráskód is rendelkezésre áll. Ezt hívják WhiteBox tesztnek. Mivel nem jártunk az eKRÉTA rendszereiben – ellentétben a hekkerrel –, kívülről nem megállapítható, hogy a kiszivárgott forráskód mekkora részt fed le a teljes rendszerből. Természetesen minden fejlesztő stílusa más és más, de azért lehet következtetni a kiszivárgott kód minőségéből az ismeretlen modulok kódminőségére is. Tehát ha a publikált részben feltárható egy biztonsági rés, akkor ezeket a hibákat már célirányosan lehet keresni a többi modulban is, akár a forráskód ismerete nélkül.” (Mivel a lopott forráskód letöltése jogilag ingoványos terület, Csermák leginkább a kódról megosztott képek alapján mondott véleményt.)

Megmosolygott megoldások és egy terhes örökség

Szakmai körökben az egyik legnagyobb visszhangot kiváltott részlet egy alapvető biztonsági megoldás, az SQL-injektálás elleni védelem gyenge kivitelezése volt. (Az SQL egy olyan programnyelv, amely adatbázisok lekérdezéséhez használatos, leggyakrabban akkor találkozhatunk vele a háttérben, amikor egy weboldalon beírjuk a jelszavunkat vagy kitöltünk egy űrlapot. Az SQL-injektálás az a támadási forma, amikor egy ilyen szövegmezőbe nem az oda szánt szöveget írják be, hanem olyan kódot, amellyel távoli parancsok futtathatók le, például ellopható vagy törölhető a teljes adatbázis. Ez egy rendkívül gyakori módszer, ezért a kivédése is alapkövetelmény.)

A lapunknak nyilatkozó egykori KRÉTA-fejlesztők szerint azonban a kiszivárgott kódban, illetve az arról készült képeken látható, valóban elégtelen megoldást – bár tényleg benne van a kódban – a KRÉTA már évek óta nem is használja. Hogy akkor hogy került oda? Régi örökség.

A KRÉTA-t ugyanis eredetileg a felsőoktatásban használt Neptun tanulmányi rendszer mögött álló SDA Informatika Zrt. kezdte fejleszteni, méghozzá a Neptunra alapozva. Ahogy a KRÉTA születésének és felemelkedésének történetét összefoglaló 2016-os cikkemben írtam, az illetékes állami szerv szerint épp azért nyerhette az SDA az új állami közoktatási rendszerre kiírt, egyszereplős, meghívásos közbeszerzést, mert a Neptun örökös licence addigra már hosszú évek óta az államé volt, így elég volt azt átszabni a közoktatásra. (Ezen egyébként akkoriban a piac többi szereplője eléggé ki is akadt.)

Csermák Szabolcs – Forrás: Egy hacker naplója / Youtube
Csermák Szabolcs – Forrás: Egy hacker naplója / Youtube

„A KRÉTA eredetileg a Neptun alapján, neptunos fejlesztőkkel készült, ami egy kezdetleges verzió volt, de még ma is ez adja a rendszer magját, illetve rengeteg, már nem használt kódrészletet. A Neptun örökségét lehet látni a hekkerek által megosztott forráskódban is, aminek egy része ma már szintén nincs használatban, ilyen az idejétmúlt SQL-injekció elleni védelem is” – mondta az egyik volt KRÉTA-s fejlesztő, hozzátéve, hogy úgy tudja, ezt a megoldást már maga a Neptun is évekkel ezelőtt ejtette.

A másik megoldás, amely nagy figyelmet kapott a nyilvánosságra hozott forráskódból, hogy abban egyszerű szövegként szerepel számos jelszó, amelyek ráadásul a Password123 komplexitása szintjén mozognak. Az általunk elért volt KRÉTA-s fejlesztők szerint azonban ez egyáltalán nem olyan nagy baj, mint amilyennek kívülről kinéz, mert a KRÉTA kódbázisát ismerők számára világos, hogy a nyilvánosságra hozott fájlok nem az éles rendszerből származnak, hanem egy tesztkörnyezetből.

Így a kódban látható jelszavak a fejlesztők által használt tesztadatok, amelyeket a rendszer élesítése előtt cserélnek, az éles rendszerbe pedig az adatok titkosítva kerülnek. „Minden tiszteletem azoké, akik fejlesztői környezetben, a tesztadatbázisokban is titkosított megoldásokat használnak, de ez nem életszerű” – mondta az egyik fejlesztő. Más lenne a helyzet, ha a hekkerek egy éles rendszerből mentették volna le ezeket a fájlokat, akkor viszont nem is ilyen formában szerepelnének a kódbázisban – tette hozzá.

„A kódbázis egy szar”

Csermák Szabolcs valamivel borúsabban látja a helyzetet: „Ha egy-egy fejlesztés vagy hibajavítás után a kód átmegy a teszteken, akkor a tesztrendszerből pakolják át éles környezetbe. Ebből kiindulva elmondható, hogy biztos vannak közös részek az éles rendszerrel, hacsak nem teljesen új rendszert fejlesztenek az alapoktól. De még csak nem is az a kérdés, hogy az éles rendszerben más jelszavak vannak-e, mert ha egy támadó a kód sérülékenységeit kihasználva bejut, akkor sokszor már nincs is szüksége a jelszavakra.

További probléma, hogy a közösség által megosztott képernyőképeken az is látszik, hogy a letöltött kódbázis tartalmaz tanúsítványokat, illetve a tanúsítványokhoz tartozó jelszavakat – amelyek például az állami egészségügyi rendszerhez, az EESZT-hez való kapcsolódáshoz szükségesek. Ezeket a tanúsítványokat minél előbb vissza kellene vonni, ha még nem tették meg” – mondta Csermák.

Az egyik volt KRÉTA-s fejlesztő elismerte, hogy maga a forráskód kiszivárgása problémás, de a közzétett kód átnézése után arra jutott, hogy abban nincs olyan szintű biztonsági kockázat, amely nagyobb veszélyt jelentene a rendszerre nézve. Hozzátette, hogy a KRÉTA több biztonsági auditon is átesett az évek során, így ha durvább problémák lettek volna az éles kóddal, az feltehetően már kibukott volna.

Akkor tehát a volt KRÉTA-sok szerint minden rendben, a forráskód valójában kifogástalan? Erről a cég volt fejlesztői szerint szó sincs. „A kódbázis egy szar, évekig ígérgették, hogy újra lehet majd írni, de sosem lehetett, mert mindig az új modulok voltak fontosabbak, mint hogy normalizáljuk a helyzetet, például kitöröljük a nem használt Neptun-maradékokat. Szerintem minimum fél évre lenne szükség, hogy normális szintre húzzák fel” – mondta az egyik volt KRÉTA-fejlesztő.

Nepotizmus és elvándorlás is közrejátszhat

A korábban az eKRÉTA-nál dolgozó fejlesztők a Telexnek arról is beszéltek, hogy a cég jelenlegi problémái részben arra vezethetők vissza, hogy – ahogy az ő esetük is mutatja – nagy az elvándorlás a fejlesztők körében. Bár a céges belső kommunikáció hiányosságai miatt azt pontosan nem tudják, összesen hányan dolgozhattak a fejlesztésen, de elmondásuk szerint nagyságrendileg a fejlesztési területen dolgozók közel fele hagyta ott a céget a közelmúltban.

Az idei évben rengetegen távoztak. A fejlesztésért felelős projektigazgató, Kovács Kornél az év elején ment el, utána következett egy távozási hullám: öt csapatvezető-fejlesztő, négy senior fejlesztő, három projektvezető és nyolc további informatikai szakember ment el, az elmúlt két évben pedig a csapatvezetést is végző fejlesztők mindegyike elment.

„Ennek is lehet eredménye, hogy a cég sokkal instabilabb lábakon áll most, és belefutott olyan esetbe, amilyenbe a korábbi évek során nem futottak volna bele”

– véli az egyik távozó fejlesztő.

A távozások mögött persze részben személyi okok álltak, de a nekünk nyilatkozó fejlesztők szerint az is fontos szerepet játszott ebben, hogy „a cég technológiailag stagnált, ami a gyorsan változó informatikai piacon jelentősen csökkentette a szakemberek maradási kedvét”.

Ez a nagyarányú lemorzsolódás szerintük várható volt azért is, mert „az eKRÉTA mindig is előnyben részesítette a nepotizmust, több rokon, barát, szerető kapott könnyen pozíciót, hogy mást ne említsek, a vezérigazgató gyerekének anyja néhány éve a HR-vezető a cégnél, de a cégcsoportban nem ritkák az ilyesfajta összefonódások” – mondta egyikük.

Az elmúlt években gyakorlatilag csak a cég vezetősége maradt állandó. Ez a vezetőség háromtagú, őket a fejlesztők körében néha a „varroda” névvel illették, mert mindannyian Szabók. Szabó Balázs vezérigazgató 2009–2011 között a Magyar Közút Zrt. informatikai igazgatója volt, de a közoktatás világába sem az eKRÉTA-nál csöppent bele, 2013-ban a Klebelsberg Központ elődjénél, a KLIK-nél volt miniszteri biztos. Mellette egy ikerpár, Szabó András és László vezetik a céget, ők a korábbi NEPTUN-@Napló fejlesztői voltak. (A @Napló a KRÉTA előtti legnépszerűbb e-napló volt, fel is vásárolta az SDA, amely aztán nem erre, hanem a saját fejlesztésű Neptunra építette a KRÉTA-t.) A cégadatbázis szerint mindhárman kisebbségi tulajdonosok is a cégben, illetve az azt tulajdonló eKRÉTA Vagyonkezelő Zrt.-ben.

Nincs még vége

Cikkeink után több fejlemény is történt az ügyben: a rendőrséghez feljelentés érkezett, a Nemzeti Adatvédelmi és Információszabadság Hatóság (NAIH) hivatalból vizsgálatot indított, Gulyás Gergely elmondása alapján pedig a kormány is vizsgálódik (már ha nem a NAIH eljárására utalt). A cég hallgatása miatt okosabbak feltehetően csak ezek lezárultával leszünk.

Az elhallgatás, majd a teljes kommunikációs zárlat kellemetlen, de logikus velejárója azonban az, hogy a felhasználók, azaz a szülők, tanárok, diákok minden korábbinál bizalmatlanabbak lehetnek a kötelezően használandó KRÉTA-val szemben, az adataikat féltik, és már egy rendszerfrissítésnél is hekkertámadásra gyanakodnak.

Mindeközben a KRÉTA-t feltörő hekkerek továbbra is aktívak. A forráskód szerdai közzététele után csütörtökön azt írták az üzenőfalként használt Telegram-csatornájukon, hogy hamarosan egy exploitot is publikálnak, azaz olyan kódot, amely lehetővé teszi a rendszer valamilyen sérülékenységének a kihasználását.

Ez új szint lenne az ügyben, mert a Telexnek korábban nyilatkozó hekker azt mondta, alapvetően a rendszer hiányosságaira akarják felhívni a figyelmet, ezért személyes adatokat nem is tesznek közzé, mert nem akarnak ártani a diákoknak. Egy exploit publikálása viszont közvetlen kárt okozhatna a rendszer felhasználóinak azzal, hogy megkönnyíti a KRÉTA feltörését más támadóknak, hiszen gyakorlatilag fegyvert adna a kezükbe.

Csütörtökön este azonban a hekkerek új üzenettel jelentkeztek, amelyben azt írták, a KRÉTA épp akkor zajló karbantartása után fogják tesztelni az exploitot, viszont ha az továbbra is működik, nem fogják rögtön közzétenni, hanem előbb elküldik a rendszert fejlesztő eKRÉTA Zrt.-nek, és szombat 23:59-ig adnak időt a cégnek, hogy javítsa a hibát vagy jelezze, hogy erre készül. Ha ez nem történik meg, akkor viszont közzéteszik a kódot.

Kedvenceink
Kövess minket Facebookon is!