Valaki meg akarja változtatni a jelszavadat

Szombat este beesett két levél. Mindkettő arra figyelmeztetett, hogy valaki meg akarja változtatni valamelyik blogom jelszavát. Nézegettem a leveleket. Hát, ugye, az ilyesmi eleve gyanús, különösen, ha a levélben jelszóváltoztató link is van. De minden rendben volt. A link tényleg jó helyre mutatott, a levél útvonala is rendben volt.

A blogok admin adatai között nem a fő postafiókom van megadva, hanem egy régebbi, melyet direkt erre a célra tartok még fent. Onnan minden levél továbbpattan a rendes postafiókomra.

A levelek ezen az útvonalon érkeztek.

Oké, az ördög nem alszik – különösen, ha informatikus – beléptem mind a két blogba és jelszót változtattam. De azért nem tértem könnyen napirendre a történtek felett, rákerestem a neten, hogy mi lehet ez.
Óh, Irgalom Atyja, ne hagyj el.
Az általános vélemény az volt, hogy spam. Néhányan azt is hozzátették, hogy a levélben xml szkript(?) van, melyre a link átirányít és így szerzi meg a jelszavadat. Ennek ugye a fele sem tréfa. Lekértem a levelek teljes részletezését. Abszolút rendben voltak. Semmi szkript. A levelek határozottan a szolgáltatómtól jöttek. SPF tökéletes. Digitális aláírás mindkét levélben. Borítékon, levélben ugyanaz a reply address. Azaz valami hülyegyerek azzal szórakozik, hogy vagy kézzel, vagy szkripttel nyomogatja a blog bejelentkezési oldalán az “elfelejtettem a jelszavamat” linket. Persze nem megy vele semmire, mert az emaileket én kapom meg, nem ő, a levélben lévő linkhez meg van egy kulcs, melyet nem fog kitalálni.

Nem is ez az ijesztő. Hanem az, hogy az internet mennyire átment vajákolásba, hozzá nem értő idióták észosztásába. Emlékszem, valamikor még egy sikeres keresés megoldást jelentett komoly informatikai problémákra is. Ma hályogkovácsolás folyik ezerrel, ordítóan hibás módszerek hajtogatásával.

Még félelmetesebb, hogy vannak, akik az internetet használják egészségügyi problémáik megoldásához is. Ember… látod, mi van. Ne légy magad ellensége.

8 Comments

  1. Azért ez nem egyértelmű. WordPress olyan, mint egy ementáli. Simán lehet, hogy valamelyik korábbi verziója, vagy a php valamelyik korábbi verziója könnyen kitalálható tokent generált abba a linkbe, amire kattintva megadhatsz új jelszót.
    Vagy pl rövid a token, és nincs limitálva a próbálkozások száma. Akkor küld neked egy mailt, ezzel létrejön a token a db-ben, aztán elkezdi kipörgetni. Ahol nem 400 forbiden megy vissza, oda beadja az új jelszót, máris övé a blog, telerakhatja spam-linkekkel a bejegyzéseket, amiket soha nem tudsz kipucolni, azután sem, ha visszavetted a blogot tőle.

    • Itt van egy token: CbX1URGAKtGB1ueMvZye.
      Szerintem elég nagy.

      • Nem a hossz a lenyeg (foleg, ha tudod, hogy ez egy Base64 enkodolt string, maris 33%-al csokken a merete), hanem hogy az alapot alkoto kod mennyire kiszamithato. Ha timestamp, vagy valami fix-based cucc, akkor hamar torheto, ha true random, akkor talan nehezebben.

        • Ha true random, akkor nem talán nehezebb, hanem törhetetlen. Mivel semmi alapom nincs arra, hogy mi lehet a levélben, így csak a brute force maradna. De az meg csak feltűnne a szolgáltatónak, hogy hirtelen több millió rossz linkre mutató jelszóváltási kísérlet történik egy blognál.
          Timestamp azért nem valószínű, mert itt nem hash játszik, pontosabban nincs szükség arra, hogy az én gépem is le tudja gyártani ugyanazt a hash-t. Ha meg egy kulcsot kell előállítanom, miért használnám a time() függvényt, ha van rnd() is? :)

          • Mert a rand() az eleve idoalapu (igy a gyorsabb a generalas), tehat nem true random. Van Linuxon egy specialis karaktereszkoz, a /dev/random, ami tobbe-kevesbe true randomot allit elo, viszont ki van teve annak, hogy elfogy az entropia (akar mar par bajt utan is), es eleg hosszu idot kell allni a rendszerhivasnak, mire jon eleg entropia a kovetkezo par random bajthoz. PHP oldalon ez pl beleszaladhat a max_execution_time limitbe, vagy Apache timeoutba.

            Pont emiatt nyelvi frameworkokbe, plane webesekbe nagyon kevesse szeretik a /dev/random (illetve az annak megfelelo melykerneli rendszerhivas) hivasat tenni, inkabb a kicsit kevesbe random /dev/urandom -ot veszik alapul, vagy meg inkabb az aktualis timestampot bolonditjak meg, mert ezek instant elerhetoek, nem kell ra varni semennyit, es pont eleg veletlenszeru mondjuk egy megjegyezhetetlen token legyartasahoz. Hogy az a sztring valojaban nem lesz random, az nem biztos, hogy az egyszeri parasztnak feltunik. Sajnos.

          • Kis korrekcio: a mondat eleje helyesen ugy hangzik, hogy “… a rand() az eleve jo esellyel idoalapu…”

  2. Nem jobb ilyenkor nem a levélben lévő kinkre kattintani, hanem a rendes úton belépni? Onnan még mindig kérheted a jelszó-változtató oldal küldését. És akkor már tudod, hogy te tetted.

    Nekem amúgy a kedvenceim a régi időkből:
    “Nagyon veszélyes vírus terjed a neten, a Microsoft is kiadta a piros riasztást!!! Annyit kell tenned csak a gép megőrzése érdekében, hogy a C:\system32\xyz.dll-t töröld el, és akkor a vírus nem férhet hozzá a gépedhez.”
    Persze ez az xyz.dll egy olyan fájl, amit ha letörölsz, többé nem indul el a windows.

Leave a Reply

Your email address will not be published. Required fields are marked *