A BKK-botrány 2017. július 23., vasárnap - 15:07


Haladjunk sorba. Rengeteg cikk foglalkozik most a BKK-s botrány dolgaival. Ezekre nem térek ki hosszan, inkább csak egy-egy rövid sort kapnak, mert sok cikk van, amit linkelek.


A BKK - nem túlzok - baromi sok és baromi nagy hibá(ka)t vétett az új, online jegyvásárló oldalán.
Egyrészt egyszerűen feltörhető - ebből indult az első botrány, itt olvasható.
Másrészt, hogy miért rossz az egész új e-jegy? Itt olvasható.
Még az ellenőrök sincsenek vele kapcsolatban tisztában a dolgokkal, ráadásul átverhetőek.

Egy fiatal, 18 éves, most érettségizett (gondolom infós) srác letesztelte, hogy tud-e csalni a megvett jegy árával, és sikerült. Ezután írt egy üzenetet a BKK-nak, hogy szar a rendszerük, ugyanis bárki megmondhatja, mennyit kell fizetnie a jegyért-bérletért. Ezt a cselekményt etikus hackerkedésnek nevezik - mikor a "hacker" nem tönkretesz egy rendszert, vagy nem kihasználja, hanem megkeres egy vagy több hibát, majd azokat jelzi a tulajdonos felé, hogy javítani kéne, mert ezt más, (nem etikus / black hat) hackerek kihasználhatják.

Erre mi történt? A BKK feljelentette a srácot, akit el is vittek a rendőrök.
Most pedig a nép összefogva, egy emberként kiáll a srác mellett.
De pl. egy informatikával foglalkozó cég ösztöndíjat ajánlott fel a szerencsétlen fiúnak (aki valóban szerencsétlen, mert ez röhejes.)
Mindeközben pedig a T-Systems vezérigazgatója (Kaszás Zoltán) "bocsánatot kért" a BKK-s dolgokért.
Ez a bocsánatkérés csak idézőjeles, valójában továbbra is hárítás.. (A T-Systems a fejlesztője a szutyok rendszernek [weboldal és a többi], amiről ez a cikk szól)

Szóval, ez lenne a történet. A két kiemelkedőbb dolog lényegében az lenne, hogy a jegyet-bérletet bárki bármennyi pénzért megveheti, ugyanis nincs rendes szerver oldali validáció vagy ellenőrzés, vagy bármi.
A másik ilyen dolog, hogy plain textként van tárolva a DB-ben a jelszó. Hogy érthetőbb legyen:


Konyhai nyelven elmagyarázva azt, hogy milyen következmények lehetnek, röviden:

Az ár megváltoztatása talán egyértelműbb - még többen bliccelhetnek, ezzel rontva a bevételét a BKK-nak, ami által (ahogy a linkek közti egyik videóban is szerepelt) járatcsökkentéshez vezet a kevesebb bevétel miatt, és közlekedési problémákat hozhat létre BP-n. Ennek senki nem örülne valószínűleg.

A plain text jelszó tárolás is alapvetően kerülendő dolog. Jelszót úgy tárolunk az adatbázisban (weblapokon, és másol is egyébként), hogy valamilyen egyirányú titkosítást (legtöbb esetben hash-elést) végzünk rajta.
Ha simán szövegként van tárolva a jelszó, ami mondjuk 'pistike123', akkor az adatbázisba is így kerül be, és ha feltörik az adatbázist, mindenki jelszavát megtudják ránézésből (erre pedig senki nem szeretne még esélyt sem adni). Ha viszont egy md5 titkosítást nyomunk rá a jelszóra, akkor máris így kerül be az adatbázisba: '472ed8fbe10e36d2c72e410607f19cbc'.
Ez máris biztonságosabb. Persze ezen még szokás variálni, mert léteznek hatalmas, milliós adatbázisok, ahol visszafejthetőek az ilyen dolgok, ha nincs bennük valami extra kis kódrész, amit salt-nak hívnak. Ha sózzuk is a kódot, pl ezzel: '$_1bPŐ:*', meg persze többszörösen egymásra nyomjuk az md5-öt (vagy sha títikosítást, vagy amit használ az oldal), mondhatjuk, hogy megközelítőleg sosem lesz visszafejthető a jelszó.

Egy kis oktatás: de ha lekódoljuk a 'pistike123'-t, akkor hogy tud beléptetni a rendszer? Az oké, hogy az adatbázisba egy fura kódként kerül be a jelszó, amit nem tud senki visszafejteni, de hogy nézi a rendszer, hogy én jó jelszót írtam-e be?
A válasz: Ugyanúgy.
Regisztrációkor a megadott jelszódat átkódolja mindenféle módszerrel, pl egy ilyen képlettel, a példa kedvéért:

md5( md5( JELSZÓ + SALT ) )
Akkor a 'pistike123'-mal behelyettesítve:
md5( md5( pistike123$_1bPŐ:* ) )
Így a végeredmény ilyesmi lesz: '6f3b4746192028d89764e29f1dc10005'

Amikor pedig belépsz, az akkor beírt szöveget pont ugyanígy átkódolja, és az akkor beírt, majd átkódolt jelszódat nézi meg, hogy ugyanaz-e, mint az adatbázisban lévő kód. Ha ugyanazt az alapszöveget (jelszót) írtad be, akkor ez a végső kód is pont ugyanaz lesz.

Szóval BKK, T-Systems, nagy háborúba kezdtetek. Valószínűleg innentől mindenki ott próbálja tönkretenni a rendszereteket, ahol éri, amíg egy ténylegesen nagyon jót nem csináltok, ha már ráköltöttetek több millió Ft-ot... (Aminek a töredékéért megcsinálta volna a mostaninál 100x jobbra és biztonságosabbra bármelyik webbel foglalkozó cég.)

Nincsenek megjegyzések: