Mennyire biztonságos a jelszavak többsége?
Ma egy átlagos, interneteléréssel rendelkező felhasználó legalább hat, jelszóval védett, on-line szolgáltatással rendelkezik. Ilyenek például a munkahelyi rendszereken kívül az elektronikus levelezés, az internetes banki szolgáltatások vagy a népszerű közösségi oldalak. Nem meglepő, hogy vannak néhányan, akik ravasz trükkökkel, időt és fáradságot nem kímélve próbálják mások jelszavait megszerezni. Fontos tisztában lenni azzal a ténnyel, hogy bár a jelszólopások motivációi között szerepet játszik az anyagi haszonszerzés, nem csak azok a jelszavak vannak veszélyben, melyekkel közvetlenül pénzügyi szolgáltatásokat szoktunk igénybe venni.
Cikkünkben a jelszavak használatával kapcsolatos biztonsági kérdéseket vizsgáljuk meg mind az otthoni felhasználó, mind a vállalati környezetben tevékenykedők szemszögéből. Megpróbáljuk közérthetően összefoglalni azokat az elveket és módszereket, melyekkel minimálisra csökkenthetjük annak a veszélyét, hogy mi magunk, vagy felhasználóink jelszólopás áldozataivá váljanak. Az alábbiakban ismertetünk néhány, felhasználók kikérdezésével készült felmérést és olyan eseteket, melyek során nagy számú felhasználó ellopott jelszava került nyilvánosságra.
2009 októberében több mint tízezer, a Microsoft Windows Live Hotmail webes mail szolgáltatásait igénybe vevő felhasználó vált phishing (a későbbiekben pontosabban leírjuk ezt a módszert) támadás áldozatává. Pontosan 10.028 A és B kezdőbetűvel rendelkező e-mail cím és a hozzájuk tartozó jelszavak váltak rövid ideig elérhetővé a pastebin.com oldalon, ami egyébként egy, a programozók által kódrészletek megosztására használt honlap. Feltehetően ez csak egy hosszabb lista töredéke volt. Ellenintézkedésként az érintett felhasználókat a jelszavaik azonnali megváltoztatására kérték. A RockYou.com közösségi oldalak és on-line szolgáltatások kialakítására alkalmas építőelemek szolgáltatója több milliós üzleti és magán felhasználói bázissal.
2009 decemberében hackereknek sikerült az oldal egy sebezhetőségét kihasználva hozzáférni a felhasználói adatbázishoz. Röviddel azelőtt, hogy a szolgáltató a hibát egy biztonsági cég figyelmeztetésére válaszul kijavította volna. A felhasználók jelszavait az adatbázisban titkosítás nélkül tárolták, azok kivétel nélkül (pontosan 32.603.388 jelszó!) a támadók birtokába kerültek. Az eset további érdekessége, hogy az adatbázis olyan jelszavakat tartalmazott, melyek a RockYou partneroldalainak (pl. MySpace) felhasználóihoz tartoztak. A támadók a jelszavakat nyilvánosságra hozták, azok listája a felhasználónevek nélkül bittorrent formájában a mai napig letölthető.
A nyilvánosságra került jelszavak betekintést engednek a felhasználók jelszóhasználati szokásaiba, a kérdőíves felmérések esetleges torzításai nélkül. A legfontosabb következtetésként levonhatjuk, hogy a felhasználók többsége a szolgáltatás által elfogadott legkevésbé összetett – így kevésbé biztonságos jelszavak – megadásával megelégszik. A felhasználók nagyjából fele ad meg olyan könnyen megjegyezhető jelszavakat, mint az egymás után következő karakterek (pl. abc123, Qwerty), népszerű keresztnevek vagy szótári szavakon, esetleg szleng kifejezéseken alapuló jelszavak. A felhasználók jelentős része (30 százaléka) nem ad meg hat karakternél hosszabb jelszavakat. Többnyire egy csoportba tartozó karaktereket használ (pl. csak kisbetű, csak nagybetű, csak szám) a felhasználók 60 százaléka. A valóban erősnek tekinthető jelszavak speciális karaktereket (!@#$%&) is tartalmaznak. A felhasználók kevesebb, mint négy százaléka használ ilyen jeleket a jelszó megválasztásakor. A legnépszerűbb jelszó a RockYou és a Hotmail felhasználók körében egyaránt az 123456 volt. Használata bármely célra erősen ellenjavallt.
Több neves informatikai cég is közölt az utóbbi években felhasználók jelszóhasználati szokásaira vonatkozó felméréseket. Ezek alapján a következő néhány következtetést vonhatjuk le. A felhasználók nagyjából fele csak akkor cseréli le a jelszavát, ha azt a rendszer kikényszeríti, egy jelszó átlagos élettartama 31 hónap. A felhasználók jelentős része mindössze néhány jelszót, illetve azok variációit használja az összes szolgáltatás elérésére. A felhasználók ötöde több, mint 20 szolgáltatáshoz használ jelszót. A könnyen megjegyezhető jelszavak mellett gyakori hogy papíron, vagy szöveges dokumentumban tárolják azokat. A felhasználók kis része használ csak a jelszavaik titkosított tárolására szolgáló szoftvert (ingyenesek pl. KeePass, Password Safe).
Érdemes tisztázni milyen módszerekkel próbálhatják illetéktelenül megszerezni jelszavainkat. A következőekben bemutatjuk a fontosabb támadások működését és tanácsokat adunk a kockázatok csökkentésére:
- Phishing: A támadó az eredeti weboldalhoz, alkalmazáshoz mindenben hasonlító felületet hoz létre, a felhasználókat egy félrevezető üzenetben (pl. email) próbálja meg rávenni, hogy ezt a felületet használva adják meg a jelszavukat. Ebben az esetben a támadó nem csak a jelszót, de az SMS azonosítót, egyszer használatos kódot is megszerezheti, ha a felhasználó lépre megy. Tartsuk észben, hogy minden olyan üzenet, ami rendkívüli helyzetre hivatkozva a jelszavunkat és egyéb azonosító adatainkat kéri, eleve gyanús. A valódi szolgáltató, internetbank soha nem kéri jelszavunkat e-mailben, telefonon, a normálistól eltérő weblapon. Ma már minden, a biztonságra valamit is adó szolgáltatás titkosított SSL csatornát hoz létre a felhasználó böngészőjével történő kommunikációra, ilyenkor a böngésző a szerver tanúsítványát, ezáltal a hitelességét ellenőrizni tudja. Sajnos a böngészők által adott hibaüzenetet könnyű figyelmen kívül hagyni és az OK-ra kattintani. Szintén sajnálatos, hogy léteznek legális szolgáltatások, melyek hanyag konfiguráció miatt eleve hibás szervertanúsítvánnyal rendelkeznek, így a felhasználók könnyen hozzászokhatnak a hibához.
- Keylogger: Ha a felhasználó számítógépe rosszindulatú programmal fertőződik, nagy az esélye, hogy az a billentyűleütéseket (jelszavakat, felhasználóneveket) egy illetéktelenek által működtetett hálózati helyre továbbítja. Ezért mindig javasolt a vírusvédelem alkalmazása, szerencsére számos vírusirtó rendelkezik otthoni felhasználásra szánt ingyenes változattal. Mielőtt megbízhatatlan forrásból származó programot telepítenénk, gondoljunk a kockázatokra. Amennyiben mégis a telepítés mellett döntöttünk, előtte futtassunk vírusellenőrzést a programon.
- Jelszó próbálgatás: Ilyenkor a támadó a bejelentkező oldalon találomra próbálja a valós jelszót kitalálni. Ha az alkalmazás az érvénytelen próbálkozásokat kizárással, vagy egyre növekvő várakozási időkkel korlátozza, még egy egyébként gyengének tekintett pl. 6 karakteres jelszó kitalálásának is kicsi a valószínűsége. A támadó némileg jobb esélyekkel indul, ha a felhasználó személyéhez köthető adatokat (pl. születési dátum, kedvenc autómárka) használt a jelszó megválasztásához.
- Jelszó próbálgatása egyszerre sok felhasználóhoz: Vállalati környezetben általában alkalmaznak kizárást a jelszópróbálgatáson alapuló támadások kivédésére. Vegyünk példaként egy olyan céget, ahol több ezer felhasználó dolgozik és 5 sikertelen próbálkozás után lép életbe a kizárás. A támadó ekkor több ezerszer próbálkozhat jelszavak kitalálásával, néhány kísérlet után mindig más felhasználót választva. Míg egy adott felhasználó jelszavának kitalálására kicsi az esélye, a több ezerből legalább néhányat viszont nagy valószínűséggel megszerezhet a támadó. Felmerülhet a kérdés: ki próbálkozna ilyennel? Például a számítógépes vírusok eszköztárában jellemzően szerepel ez a támadási forma. Itt fontos kiemelni, hogy az erős jelszó alkalmazása az egyén szempontjából nem mindig tűnik fontosnak, a szervezet számára mégis lényeges, hogy azt kikényszerítse.
- Jelszóadatbázis felhasználása: Mint láttuk, a RockYou felhasználói adatbázisát megszerző támadóknak a titkosítás nélkül tárolt jelszavak miatt könnyű dolga volt. Szerencsére a legtöbb esetben az alkalmazások, szolgáltatók titkosított formában tárolják a jelszavakat. Ekkor nem elég e jelszóadatbázis megszerzése, a titkosított jelszavak feltörése igencsak számításigényes feladat lehet. A jelszavak erőssége itt is kulcsfontosságú, míg egy 5 karakteres csak kis- és nagybetűt tartalmazó jelszó megtörése perceket, egy 10 karakteres kis-, nagybetűket és számokat is tartalmazó jelszó feltörése akár évezredeket vehet igénybe a jelenlegi számítógépek teljesítményét figyelembe véve. A pontos időtartam a jelszó erőssége mellett természetesen függ a titkosításra használt matematikai algoritmustól is. Amennyiben egy jelszó szótári szón alapul, nagyban növeli a sikeres megtörés esélyét.
- Jelszó kilesése (shoulder surfing): Szerencsére nagyon könnyen észrevehető, ha valaki a hátunk mögött állva próbálja megtudni milyen billentyűket ütünk le belépésnél. A képernyőn található egyéb, bizalmas adatok védelme érdekében fontos a használt képernyőket nem a sokak számára látható helyekre tenni (pl. a földszinti, utcára néző nagy üvegablakkal szemben nem szerencsés).
- Közös számítógép használata: Közös számítógép használata során fontos, hogy a böngészőkben található jelszókiegészítő funkciókat ne használjuk, mert a böngészőben megjegyzett jelszavakat utánunk más is használhatja.
Foglaljuk össze, felhasználóként mire kell odafigyelnünk, hogy ne váljunk áldozattá:
- Bizalmas adatok hozzáféréséhez kizárólag megbízható (munkahelyi, otthoni), naprakész antivírus védelmet alkalmazó számítógépet használjunk.
- Ne írjuk jelszavainkat papírra vagy szöveges állományba. Ha mégis ezt választanánk, a tényleges jelszavak helyett inkább egy arra emlékeztető, de nem egyértelműen utaló mondatot jegyezzünk fel.
- Ne használjuk ugyanazt a jelszót egy kisebb biztonságot szavatoló on-line szolgáltatáshoz, mint a fontos üzleti levelezésünk vagy az internetbankunk eléréséhez.
- Csak titkosított csatornát használó, ellenőrzött SSL tanúsítványt felmutató weboldalról higgyük el, hogy az, aminek mondja magát. Jelszavainkat ne adjuk meg nem titkos, nem ellenőrizhető kommunikációs csatornákon: emailben, telefonon.
- Alkalmazzunk minél hosszabb, kis- és nagybetűket, számokat és speciális karaktereket is tartalmazó jelszavakat.
Vállalati környezetben fontos a megfelelően erős, speciális karaktereket is tartalmazó jelszavak használatát és a jelszavak rendszeres cseréjét a megfelelő beállítások alkalmazásával kikényszeríteni. Az erős jelszavak használatát nem szabad és nem is érdemes kizárólag a felhasználók felelősségeként kezelni. A jelszóhasználat szabályait a rendszerek specifikációiban, vagy vállalati előírásokban kell rögzíteni. Foglaljuk össze, mire kell odafigyelni a fejlesztés-tesztelés időtartama alatt, milyen alapvető kontrollokat kell beépíteni a rendszereinkbe:
- A jelszó hossza minimum 8 karakter legyen
- Kis- és nagybetűket tartalmazzon
- Betűket és számokat tartalmazzon
- Időszakonként változzon meg
- Legyen kizárva a túl egyszerű jelszó
- Legyen kizárva a régi jelszóhoz nagyban hasonlító jelszó. Pl.: régi: asdfGH12, új: asdfGH123
Ahhoz, hogy minél kevésbé váljanak a felhasználók a fenti példák áldozataivá, a szoftvereknek kell kikényszeríteni a megfelelő jelszóhasználatot! Erre már a tervezéskor érdemes gondolni, ha nyomát sem látjuk a specifikációban jelszóbiztonsági elvárásoknak, kezdjünk el lobbizni az ügy érdekében. Továbbá a szoftverek tesztelése során a többi követelménnyel együtt a beépített jelszókontrollok hatékonyságát is ellenőrizni kell. Így minél jobban rávezetjük a felhasználót a biztonságosabb jelszavak használatára, annál kisebb lesz az esélye egy esetleges sikeres támadásnak. Természetesen az emberi tényezőt nem lehet 0-ra redukálni, mindig lesz gyenge pontja a rendszernek.
Ha kíváncsiak vagyunk, hogy a saját rendszereinkben használt jelszavak mennyire biztonságosak, a jelszóadatbázisokban tárolt jelszavak erősségének ellenőrzésére számos ingyenesen letölthető eszköz áll rendelkezésünkre. Az egyik legnépszerűbb a John the Ripper nevű program, ami a legtöbb, széles körben elterjedt, titkosított jelszóformátumot ismeri. Magyar fejlesztésű ingyenesen letölthető eszközök például a woraauthbf és a cudadbcracker. Előbbi az Oracle adatbázis-kezelő által használt jelszóformátumokat támogatja, mind a nyers erő alapú próbálgatás, mind szótárfájl alkalmazásával. Utóbbi a ma használt számítógépekben található, központi feldolgozó egységhez képest lényegesen gyorsabb videokártyák speciális képességeit használja fel Oracle és Microsoft SQL Szerver adatbázis felhasználók jelszavainak nyers erő alapú törésére.
Szerző: Major Marcell
A szerző
- Marcell jelenleg a Deloitte IT-biztonsági csapatának tagja. Több mint 5 éves tapasztalattal rendelkezik betörési tesztek és egyéb informatikai biztonsági vizsgálatok terén. Tanulmányait a szoftverfejlesztésre és az informatikai biztonságra fóku- szálva végezte. Tapasztalatokat szerzett az alkalmazások biztonsági tesztelése, a reverse engineering, a kriptográfiai algoritmusok és protokollok megvalósítása terén. Az előadók névsorában rendszeresen megtalálhatjuk hazai és külföldi hacker konferenciákon.