SMS lístky sa zneužiť dajú, tvrdí expert

Zraniteľný systém virtuálnych lístkov sa používa v celej strednej Európe. Riešenie však môže byť jeho likvidáciou.

Pavol Lupták je majiteľom firmy zaoberajúcej sa penetračnými testami a bezpečnostnými auditmi. Je jedným z autorov prezentácie bezpečnostnej analýzy SMS lístkov. Tvrdí, že hakerov by dopravný podnik neodhalil. O možnostiach, ako je tento systém zraniteľn(Zdroj: SME - OLIVER FILAN)

Kupovanie lístkov mobilom sa dá pomerne jednoducho zneužiť, tvrdí počítačový odborník PAVOL LUPTÁK. Na riziko vraj upozorňoval dopravný podnik ešte pred zavedením virtuálnych lístkov. Tvrdí, že mu vôbec nešlo o útok na dopravný podnik.

Kedy ste informovali dopravný podnik o nebezpečenstve, ktorý systém predaja lístkov cez SMS zahŕňa? Bolo to ešte pred jeho zavedením?
"V prípade bratislavského dopravného podniku to bolo ešte pred spustením služby SMS lístkov. Tento systém ešte predtým, než prišiel na Slovensko, existoval už v Prahe. Popisovaný spôsob zneužitia mi teda napadol už pri tom pražskom, vedel som, že takýto systém má byť spustený aj v Bratislave, tak som si začal pripravovať technickú prezentáciu, ako sa to dá zneužiť a poslal som to trom dopravným podnikom - do Bratislavy, do Prahy a do Viedne. V súčasnosti majú takýto systém napríklad aj v Košiciach či vo Varšave.

Zareagoval jedine dopravný podnik z Prahy, napísali mi, že je to nezneužiteľné a poslali mi tiež výstrahu, že mi to neodporúčajú publikovať a upozornili ma na prípadnú žalobu za napomáhanie trestného činu. Z bratislavského dopravného podniku nezareagovali vôbec."

V čom je zraniteľnosť tohto systému?
"SMS lístky, ktoré sa používajú v dopravných podnikoch, buď nie sú zviazané úplne s ničím, teda so žiadnym atribútom pasažiera, alebo ak sú zviazané, tak len s mobilným číslom daného pasažiera. V oboch prípadoch je to nedostačujúce.

Neexistuje žiadny jednoduchý a funkčný spôsob, ktorým revízor dokáže overiť, že mobilné číslo, z ktorého bola žiadosť o kúpu SMS lístka zaslaná, je skutočne číslo kontrolovaného cestujúceho."

Ako sa to dá zneužiť?
"Existujú dva prístupy, buď pasažier požiada centrálny SMS hack server o lístok, a ten pošle oficiálnu žiadosť o SMS lístok dopravnému podniku, dostane ho a tento lístok rozdistribuuje všetkým členom komunity, alebo druhá možnosť - pasažier požiada centrálny SMS server o lístok, ten nejakým spravodlivým algoritmom vyberie jedného člena z komunity a z jeho mobilu zašle žiadosť o SMS lístok a potom samotný SMS lístok bezpečným kanálom rozdistribuuje všetkým ostatným členom. V tomto prípade je skutočne veľmi ťažké odhaliť uvedenú SMS hack komunitu."

Kto a ako sa môže stať členom hackerskej komunity?
"V podstate ktokoľvek, kto si napíše implementáciu (nasadenie - pozn. red.) tohto útoku, si môže vytvoriť vlastnú komunitu t.j. každý sebeinteligentnejší študent informatiky."

Koľkí ľudia by mohli takýto jeden lístok využívať? Dá sa to odhadnúť?
"Závisí to od toho, aká dôsledná a detailná bude implementácia popisovaného SMS hacku. Ak bude podporovať mobilnú „peer-to-peer" sieť (t.j. žiadosť o originálny SMS lístok bude môcť zaslať ľubovoľný člen komunity vždy z iného čísla a spätne vydistribuovať ostatným členom komunity) a geografickú detekciu prípadných kolízií (t.j. ošetrovať situáciu, keď sa členovia s tým istým lístkom k sebe dostatočne fyzicky priblížia, kedy SMS hack server vyhodnotí geografickú kolíziu a jednému z nich regeneruje SMS lístok), tak uvedená hack-komunita pasažierov dokáže byť skutočne veľká a veľmi ťažko odhaliteľná. Ak teda uvážim, že revízor nebude realizovať detailnú forenznú analýzu mobilov pasažierov, ktorých kontroluje a súčasne dopravný podnik nebude spolupracovať so všetkými mobilnými operátormi, čo je drahé a právne ťažko uchopiteľné riešenie - dopravný podnik by musel totiž poznať buď približnú geografickú polohu kontrolovaného pasažiera alebo približnú vzdialenosť kontrolovaného pasažiera od revízora, ktorý ho práve kontroluje.
Takáto dôkladná implementácia je ale minimálne už na diplomovú prácu :-)"

Keď dopravný podnik zavádzal túto službu, propagoval ako výhodu to, že človek môže na svoj telefón kúpiť SMS lístok aj svojmu spolucestujúcemu.
"Áno, to je určite výhoda. Oba SMS lístky by mali byť ale zviazané s identitou kupujúceho pasažiera, čo nie sú.

Ak by bol tento kupujúci pasažier členom komunity, ktorá sa rozhodne daný systém zneužívať, tak len požiada centrálny SMS hack server o dva validné lístky a server mu ich pridelí a lokálny SMS hack klient v mobile pasažiera kompletne vygeneruje. Vizuálne budú vyzerať absolútne identicky ako originál SMS lístky.

Pri prípadnej kontrole revízorom budú teda plne validné. Tieto isté SMS lístky ale dokáže SMS hack server prideľovať iným členom tejto komunity, ktorí si tým pádom žiadny ďalší SMS lístok nemusia kupovať."

Keby chcel cestujúci takýto SMS lístok využívať, musel by pri jeho kúpe kontaktovať namiesto dopravného podniku akýsi hackserver?
"Áno, ten človek musí byť členom komunity. Je to komunita ľudí, ktorí si navzájom plne veria. SMS hack server môže byť pokojne fyzicky umiestnený napríklad v Dominikánskej republike (teda bavíme sa o použití mobilnej peer-to-peer siete), čo je nad dosahom slovenského právneho systému. Akákoľvek komunikácia medzi členmi komunity a daným SMS hack serverom by bola kompletne šifrovaná so silnou klientskou autentizáciou."

Reálne ale útok na SMS lístky ešte nikto nevytvoril?
"Neviem o tom. My sme spravili len čisto teoretickú analýzu a vyskúšali, či je možné lokálne vygenerovať SMS správy, ktoré vyzerajú vizuálne úplne identicky ako akákoľvek iné. To sa nám podarilo. Všetko ostatné je otázka pár dní programovania. Naša firma neplánuje a ani nechce spraviť implementáciu tohto útoku.

Ale dá sa to pomerne ľahko. A keď to niekto spraví a zverejní na Internete funkčný SMS hack server/klient ako opensource pre všetky druhy „smart" telefónov, tak to môže mať katastrofálne dôsledky pre všetky dopravné podniky. Ktokoľvek si potom bude môcť uvedený SMS hack server/klient stiahnuť a behom pár minúť plne používať (a zakladať vlastné komunity). Nebude to vyžadovať žiadne špeciálne technické znalosti."

Dopravný podnik ale tvrdí, že systém SMS lístkov je bezpečný.
"Áno, tvrdia to, lebo si dôkladne neprečítali moju technickú analýzu. Keby to spravili, tak pochopia, že sa to bez problémov dá (potvrdí to akýkoľvek technicky zdatnejší človek). Dopravný podnik tvrdí, že aj napriek tomu dokáže ale hackerov odhaliť. Ja si ale myslím, že pokým SMS hack klient/server bude dôsledne implementovaný (vrátane mobilnej „peer-to-peer" siete a geografickej detekcie kolízií členov komunity), tak bez detailnej forenznej analýzy mobilných zariadení cestujúcich (čo si fakt neviem predstaviť, ako by to vyzeralo v praxi) alebo spolupráce so všetkými mobilnými operátormi a zisťovaní fyzickej polohy cestujúcich (čo sa dá, ale je to drahé a právne ťažko uchopiteľné) je skutočne nemožné uvedený útok odhaliť. Pokým si ale dopravný podnik myslí, že napriek tomu to odhaliť vie, tak nech popíše a zverejní spôsob ako a ja ich veľmi rád presvedčím o opaku. Pokým to ale nezverejnia, tak nevidím dôvod, prečo by som mal veriť, že uvedený spôsob existuje."

Aké systémy sú bezpečné?
"Najbezpečnejšie systémy sú otvorené systémy. To znamená také systémy, ktoré sú verejné prístupne (čo sa týka architektúry a zdrojových kódov) a ktoré dokáže overiť komunita ľudí (a v princípe ktokoľvek, kto neverí danému systému a mysli, že daný systém by mohol byť zraniteľný). Pri SMS lístkoch napríklad nikto nevie, akým spôsobom je počítaný daný SMS token, ktorý funguje ako unikátny identifikátor lístka. Je teda možné, že ak je to nejaký proprietárny algoritmus, ktorý nebol overený skúseným kryptoanalytikom, tak je možné determinovať generovanie všetkých SMS lístkov. Otvorený systém by bol, keby dopravný podnik zverejnil, akým presne algoritmom je daný token generovaný. Ak by použili bezpečný verejne dostupný a overený algoritmus, tak uvedené SMS lístky dokážu byť skutočne bezpečné, aj keď každý na svete bude presne vedieť, ako celé toto riešenie funguje. Otvorený systém je taký, že všetci vedia, ako funguje, všetko je verejné a napriek tomu tento systém nemá bezpečnostné zraniteľnosti (bezpečnosť je založená napríklad na neznalosti kľúča)."

Takže taký systém by bol pre dopravný podnik lepší?
"Určite áno, každý by sa mohol na ten systém pozrieť a analyzovať ho. Veľa uzavretých bezpečnostných systémov je po čase zlomených, lebo chýba spätná väzba komunity. A samotní vývojári tohto systému jednoducho nedokážu dôkladne analyzovať a odhaliť všetky potenciálne bezpečnostné riziká."

Kde funguje takýto otvorený systém?
"Otvorené systémy funguje kdekoľvek na svete. Celá súčasná kryptografia (a množstvo jej otvorených implementácií), ktorá chráni vaše bankové transakcie, je otvorená a verejná.

Dalo by sa povedať, že aj súčasný systém SMS lístkov je otvorený, čo nie je otvorené, je, ako som spomínal spôsob, akým sa generuje ten unikátny identifikátor - čiže token, ktorý príde cestujúcemu pri kúpe SMS lístka na mobil. Ale aj napriek tomu, že vôbec nevieme algoritmus, ako sa tento token generuje, je možné SMS lístok distribuovať veľkej skupine ľudí a uvedený systém zneužívať."

Je systém SMS lístkov v iných krajinách bezpečný?
"Je to zneužiteľné vo všetkých veľkých mestách strednej Európy, kde sa SMS lístky používajú (s bezpečnou implementáciou, ako sme navrhovali som sa ešte nestretol). Netvrdím, že sa súčasný systém SMS lístkov začne nejako masovo zneužívať, to určite nie, ale osobne som prekvapený, že keď sa investovali nemalé peniaze do takéhoto riešenia, tak nebol realizovaný žiadny bezpečnostný audit, ktorý by túto principiálnu bezpečnostnú chybu architektúry SMS lístkov odhalil. Z bezpečnostného hľadiska je totiž úplné nedostatočné, že uvedený SMS lístok nie je spárovaný s ničím alebo len s mobilným číslom pasažiera.

Podstatne bezpečnejšie sú napríklad parkovacie SMS lístky, lebo SMS lístok je spárovaný s identitou samotného auta (teda jeho ŠPZ), a to nejde nejako jednoducho obísť, ak teda nebudete vyrábať a distribuovať kópie tej istej ŠPZ, na ktorú si zaplatíte len jeden parkovací SMS lístok, čo je veľmi pracné a ľahko odhaliteľné."

V čom sú SMS lístky iné?
"Zraniteľnosť pri SMS lístkoch sa dá urobiť kompletne softvérovo, nič špeciálne k tomu nepotrebujete (teda len SMS hack server načo môže poslúžiť ľubovoľný server na platforme Unix/Windows, ktorý sa dá úplne lacno kdekoľvek prenajať).

Nie je potrebné fyzicky tlačiť papier (čo je nutné v prípade falzifikátov normálnych lístkov), ani vyrábať plechové kópie ŠPZ.

Pri hotovej implementácii popisovaného SMS hack klienta/servera, dokáže byť jeho prípadné zneužitie veľmi lacné, ľahko realizovateľné a tým pádom nebezpečné."

Aké sú možné riešenia?
"Prvé najjednoduchšie a najlacnejšie riešenie je lístok viazať s osobnou identitou cestujúceho."

No to je asi nereálne, aby vyberal revízor pri kontrole aj občianske preukazy?
"Môže sa to zviazať buď s občianskym preukazom, pasom, rodným číslom alebo s akýmkoľvek identifikátorom, ktorým sa dokáže pasažier preukázať revízorovi. Problémom tohto riešenia je, že revízor musí mať fyzický prístup k občianskemu preukazu (mať možnosť ho prečítať) alebo inému osobnému dokumentu, čo nie je technický problém, ale legislatívny.

Dá sa to vyriešiť viacerými spôsobmi, napríklad tak, že by to bolo zahrnuté v zmluvných podmienkach využívania služby SMS lístka - každý kto chce uvedenú službu používať, bude musieť súhlasiť s tým, že osobnú informáciu ako napríklad číslo svojho občianskeho preukazu poskytne revízorovi.

Alebo druhá možnosť je vymyslieť nejaký identifikátor, ktorý nie je osobný, čisto teoreticky by tie SMS lístky išli spárovať so sériovým číslom bankovky, ktorú máš práve v peňaženke. Ale to nie je moc použiteľné riešenie."

Aké je druhé riešenie?
"Ďalšie účinné riešenie by bolo SMS lístok spárovať s IMEI telefónu pasažiera. IMEI telefónu je jednoznačný identifikátor každého telefónu."

Ako ho zistím?
"To je sériové číslo telefónu, ktoré sa každému zobrazí pri zadaní * # 06 #. IMEI je unikátny pre každý telefón.

Keď ti ukradnú telefón, tak by sa podľa IMEI mal dať vypátrať. Samozrejme IMEI telefónu je možne zmeniť - to je ale v mnohých krajinách zákonom zakázané.

Riešením by teda bolo, že by sa tento SMS lístok spároval s IMEI telefónu pasažiera, vyžadovalo by to ale špeciálnu zmluvu dopravného podniku so všetkými mobilnými operátormi, ktorí by dopravnému podniku podľa IMEI poskytovali špeciálnu službu - približná odhadnutá vzdialenosť telefónu revízora a kontrolovaného pasažiera.

Revízor by si automaticky naskenoval IMEI telefónu pasažiera, zaslal by to online na uvedenú službu a tá by len vrátila, či je možné, aby sa vlastník platného SMS lístka, ktorý je spárovaný s daným IMEI, mohol fyzicky nachádzať v blízkosti revízora.

V podstate by sa revízor touto cestou pýtal, či človek, ktorý požiadal o SMS lístok z daného IMEI telefónu, stojí skutočne oproti nemu.

Podotýkam, že som prišiel aj na spôsob, ako sa dá kompromitovať toto zabezpečenie (SMS lístok zviazaný s IMEI telefónu pasažiera), tento spôsob je ale veľmi nákladný a prakticky ťažko realizovateľný."

Je toto riešenie reálne?
"Pravdepodobne áno, ale je to veľmi nákladné. Prípadná implementácia tejto služby by pre mobilných operátorov bola dosť drahá a revízor by musel mať špeciálne zariadenie na scanovanie a rozpoznávanie IMEI telefónu pasažiera. Prvé riešenie je podstatne jednoduchšie. Pri ňom revízorovi ukážeš len občiansky preukaz (alebo iný osobný doklad), nemusíš ani svoj mobilný telefón a on automaticky nascanovaním zistí, či bol na tento preukaz zakúpený validný SMS lístok. Je to dokonca z používateľského hľadiska jednoduchšie riešenie ako to súčasné, kedy revízor na správne overenie pasažiera musí odpísať a skontrolovať všetky alebo niektoré znaky SMS tokenu, ktorý sa v SMS lístku momentálne nachádza."

Obávate sa žaloby, ktorú dopravný podnik zvažuje?
"Priznám sa, že ma to prekvapilo, pôvodne som myslel, že prídu za mnou a poďakujú sa mi - nie ani tak za návrh potenciálneho zneužitia, ale za riešenia, ktoré som im navrhol.
Prekvapilo ma tiež, že prehlásili, že hack uvedeného systému nie je možný, lebo akýkoľvek technicky zdatný človek, ktorý si moju prezentáciu prečíta, zistí, že to možné určite je a ak si niekto myslí, že to možné nie je, tak do toho nevidí."

Podobne však reagovali aj Košice, tvrdili, že tento systém nie je možné zneužiť.
"Áno a ja som im odpovedal v danom fóre imhd.sk, že to možné je."

Môže dopravný podnik odhaliť prípadných hackerov?
"Ako som hovoril, myslím, že pri dôslednej implementácii SMS hacku je to nemožné. Samozrejme, že sa môžem mýliť, ale rád sa nechám presvedčiť o opaku. Ak si dopravný podnik myslí, že to možné je, tak nech presne popíše a zverejní spôsob, ako by tento útok odhalili. Som pripravený im samozrejme oponovať. Skutočne neviem o žiadnom použiteľnom. Na forenznú analýzu telefónu a jeho zabavenie pasažierovi by musel mať revízor podozrenie (a to neviem, ako by získal). Spolupráca so všetkými mobilnými operátormi v snahe získať od nich geografické dáta kontrolovaných pasažierov (podľa ich čísel/IMEI) mi príde zase veľmi drahé a právne ťažko uchopiteľné riešenie.

V každom prípade veľmi rád by som vedel o inom spôsobe ako je možné tento útok efektívne odhaliť - venujem tomu určite pár slidov v novej verzii mojej prezentácie."

Uvažovali ste o takomto napadnutí dopravného podniku?
"Určite nie. Osobne MHD vôbec nepoužívam, jazdím všade autom.

Moja analýza nie je namierená voči žiadnemu konkrétnemu dopravnému podniku. Popisuje jednoducho len bezpečnostnú chybu v dizajne celého riešenia, ktoré je masovo v strednej Európe všade implementované.

Hovoril som o tom v Rakúsku, v Krakove na bezpečnostnej konferencii a ďalšiu prezentáciu tejto zraniteľnosti budem mať na konferencii v Holandsku.

Aby sa podobne zraniteľné systémy nenavrhovali a nenasadzovali, je myslím úplne nevyhnutné, aby sa o takýchto veciach verejne diskutovalo.

Inak podotýkam, že ja nie som jediný autor tejto bezpečnostnej analýzy SMS lístkov, je to komunitný projekt - svojimi myšlienkami mi pri tom pomáhalo množstvo mojich kamarátov. Som teda zvedavý, ako chce dopravný podnik zažalovať celú komunitu ľudí, ktorí na tom participovali."

Čo ste čakali od upozornenia dopravného podniku?

"Čakal som, že dopravný podnik uzná, že je tam isté bezpečnostné riziko, spraví si jednoduchú analýzu rizík a v prípade, že mu z nej vypadne, že potenciálne zneužitie je veľmi malé a náklady na prípadnú opravu príliš veľké, tak to jednoducho len akceptuje. Nie každá bezpečnostná zraniteľnosť sa totiž opravuje - pokým náklady na prípadnú opravu presiahnu potenciálne straty jej zneužitia.

Mohli by zareagovať napríklad v štýle - „sme presvedčení o tom, že komunita, ktorá by náš SMS systém zneužívala je dostatočne malá, náklady na vami navrhované riešenie príliš veľké, takže to nebudeme jednoducho riešiť a riziko akceptujeme."

To si myslím, že by bol seriózny a rozumný prístup zo strany dopravného podniku - nie tvrdiť veci, ktoré nie sú pravdivé."

Boli by ste ochotný ako firma, dopravnému podniku pomôcť, čo sa týka bezpečnosti tohto systému SMS lístkov?
"Keď si nás objednajú, tak určite."

Najčítanejšie na SME Tech


Hlavné správy zo Sme.sk

ŠPORT

Čo sa deje v hokeji? Je to divadlo, vinníkmi sme všetci, tvrdí Graňák

Zlá skúsenosť s Cígerom a Švehlom mohla odradiť hráčov z NHL od štartu na majstrovstvách sveta, hovorí skúsený obranca.

KULTÚRA

Iva Bittová: Nemôžem si dovoliť strácať čas a báť sa

Česká speváčka žije v USA. Koncertuje u nás so skupinou Čikori.

TECH

Vedci sú na stope tajomstvu DNA

Vďaka úžasnému technologickému vývoju vznikajú nové vedné odbory.

TECH

Na čom hrať hry? Na PC či konzolách?

Porovnávať má zmysel hlavne produkty najväčších hráčov na trhu.

Neprehliadnite tiež

Drobné prepeličky môžu pomáhať v boji proti rakovine

Vedecký výskum na zvieratách vždy bol a aj bude otázkou rôznych názorov. Výskum na vtáčích vajciach a embryách však prináša nové rozmery.

Vedci sú na stope tajomstvu DNA

Vďaka úžasnému technologickému vývoju vznikajú nové vedné odbory. Jedným z nich je aj bioinformatika.

TECH_FM

Odhalili, prečo sú veľryby také obrovské

Gigantizmus veľrýb bol dlho záhadou. Už nie je.

Vzdali sa ropy, ponúknu tenisky z morských rias

Nerozpadnú sa po jednom daždi, nový materiál je určený na štandardné použitie.

Inzercia - Tlačové správy


  1. Táto dvojica stojí za zrodom slovenského internetu. Ako začínal?
  2. 14 tipov na exotickú dovolenku, ktorú si môžete dovoliť (aj vy)
  3. Štatutári, máte už prístup k elektronickej schránke?
  4. Zabudnite na nové a neekologické PC. Je tu Refurbished!
  5. Volkswagen Arteon je výkladná skriňa technológií
  6. Yeme chce byť výnimočný obchod aj vďaka výnimočným zamestnancom
  7. Lepšie bývať na vidieku, alebo v meste? Hľadali sme výhody
  8. Poznáte pôvod slovenských slov? Otestujte sa
  9. Plavba po Karibiku na luxusnej lodi
  10. Hyundai H350 je dokonale spoľahlivým partnerom pre biznis
  1. Táto dvojica stojí za zrodom slovenského internetu. Ako začínal?
  2. Aj vy môžete mať pekný trávnik, poradí vám expert
  3. Výrobky, ktoré chutia a voňajú ako z domácej zabíjačky
  4. 14 tipov na exotickú dovolenku, ktorú si môžete dovoliť (aj vy)
  5. Profesionálne sa predaj nehnuteľností dá robiť jedine exkluzívne
  6. HÝBSA Slovensko odštartovalo turné po Slovensku. Buďte pri tom!
  7. Každý štvrtý 70-tnik na Slovensku má cukrovku, pribúdajú mladší
  8. 5 hviezdičkové apartmány priamo na pobreží - Dubrovník
  9. Stavba domu na kľúč – úspora času aj financií
  10. Štatutári, máte už prístup k elektronickej schránke?
  1. Poznáte pôvod slovenských slov? Otestujte sa 16 831
  2. Táto dvojica stojí za zrodom slovenského internetu. Ako začínal? 14 580
  3. 14 tipov na exotickú dovolenku, ktorú si môžete dovoliť (aj vy) 11 782
  4. Lepšie bývať na vidieku, alebo v meste? Hľadali sme výhody 11 687
  5. Volkswagen Arteon je výkladná skriňa technológií 7 412
  6. Yeme chce byť výnimočný obchod aj vďaka výnimočným zamestnancom 6 630
  7. Čím všetkým som si prešla, aby som sa naučila po anglicky 6 400
  8. Zabudnite na nové a neekologické PC. Je tu Refurbished! 5 571
  9. Plavba po Karibiku na luxusnej lodi 4 028
  10. Hyundai H350 je dokonale spoľahlivým partnerom pre biznis 3 882