ugrás a tartalomhoz

Miért nem tudják megmondani az elfelejtett internetes jelszavakat a honlapok?

Anonymous · 2010. Szep. 3. (P), 13.53
A jelszó hashelésről közérthetően
 
1

teljesen jó a tartalom, de

szabo.b.gabor · 2010. Szep. 3. (P), 23.03
teljesen jó a tartalom, de külcsín.. retró :D (ha már retró, illet volna táblázatosan csinálni, css nélkül..)
2

Így aki hozzáfér az

kuka · 2010. Szep. 4. (Szo), 10.43
Így aki hozzáfér az adatbázishoz, az se tudja megmondani a jelszót, mivel csak a hash kódot látja.
Ha már hozzáfér az adatbázishoz, minek próbálkozna behatolni ?

Szerintem ez az MD5±só olyan megoldás mint a PHP safe_mode: nem megoldás, csak az első lépés. A tárolás önmagában keveset ér, ha az átvitel nem biztonságos.

Egy kis mese így szombat délelőttre. Az internet kávézók fénykorában volt egy elterjedt szívás a maflák között akik
  • ugyanazt a jelszavat használták több szolgáltatáshoz
  • elfelejtettek kilépni a Yahoo fiókjukból

Az utánuk jövő ugyan nyitva találta a levelesládájukat, de a garázdálkodás csak pünkösdi királyság lett volna, mert a jelszó ismerete nélkül később már nem térhet vissza. De volt egy megoldás
  • megkeresni más szolgáltatások feliratkozását igazoló leveleket
  • az illető szolgáltatásoktól újrakérni a jelszavakat elfelejtés ürügyén
  • a kapott jelszavakat sorra próbálni a Yahoo fiókon

Ez egy másik ok a régi jelszavak el nem küldésére: a felhasználó védelme a saját hülyeségének ellene fordításától. Sajnos webmesterkedés közben erre is gondolnunk kell.
13

Épp ezért

Joó Ádám · 2010. Okt. 9. (Szo), 23.17
Meg is válaszoltad a saját kérdésed. A hashelés védi a felhasználót akkor is, ha a ugyanazt a jelszót használja több helyen.
3

Tudom, hogy ... de mégis ...

tisch.david · 2010. Szep. 4. (Szo), 21.57
Tudom, hogy most nagyon antiszociális leszek, sőt, azt is tudom, hogy ilyet nem illik mondani, de én nem hash-elten tárolom a jelszavakat, és ezen nem is akarok változtatni. Azért nehezítsem a saját dolgomat, hogy a megrendelőm felhasználóját megvédjem önnön baromságától?!
Homályosítson már fel valaki, legyen szíves, mint türelmes anya hülye gyermekét!

Köszi! Üdv:
Dávid
4

miért lenne nehezebb?

solkprog · 2010. Szep. 4. (Szo), 23.00
Mond el légyszíves miben nehezebb hash-eket összehasonlítani mint sima jelszavakat?
Egyetlenegy dolog jut eszembe amiben "nehezebb" a hashes megoldás, mégpedig hogy nem tudsz nyers jelszavakat kiküldeni emlékeztető emailbe, ehelyett egy link-et generálni az usernek.
5

Támadás

Poetro · 2010. Szep. 5. (V), 08.07
Ha valami támadás éri az oldaladat, legyen az XSS, SQL Injection, vagy bármi más, előfordulhat, hogy hozzáfér a támadó az adatbázishoz, vagy annak egy részéhez. Ezáltal hozzáférhet a jelszavakhoz, de amennyiben azok nincsenek hash-elve, akkor nagyon egyszerűen használhatja őket, sőt kipróbálhatja más szolgáltatások esetén is, hogy működnek-e. Amennyiben azonban hash-elve van, akkor az hash algoritmus ismerete nélkül nem tudja visszafejteni, és az algoritmus ismeretében is lehet, hogy nagyon hosszú időbe telne.
6

Jogok

janoszen · 2010. Szep. 5. (V), 16.17
Azon felül, amit a többiek leírtak, van egy tippem: csinálj egy olyan táblát, amire a PHP-s felhasználódnak csak INSERT joga van. Ha valaki jelszót változtat, inserttel írd bele. Így egy potenciális security hole kapcsán nem fogják tudni kiolvasni a letárolt jelszavakat, Te viszont a megrendelődnek még mindig meg tudod mondani. A felhasználóknak autentikáció céljából meg tárold le simán hashelve, sózva.
7

Köszönöm a válaszokat!

tisch.david · 2010. Szep. 5. (V), 21.02
solkprog:
Valóban nem ügy hash-elt jelszavakat kezelni. Azt hiszem, végül is meggyőztetek. 2 terület van igazából, amiben most segít a nem titkosított tárolás: egyrészt a jelszó-emlékeztető, másrészt, hogy valamely felhasználó (általában az admin) nevében így be tudok én is jelentkezni, és szoktam így javításokat utótesztelni vagy hibabejelentéseket ellenőrizni. Ez utóbbi esetet Ti tudjátok diszkrétebben intézni?

Poetro:
Tök igazad van, ezzel a kockázattal én is tisztában voltam, csak azt gondoltam, hogy ha valaki olyan buggyant, hogy 1 jelszót használ mindenhol, az vessen magára, ha pórul jár.

proclub:
Ez jópofa. Megfontolom.

Köszi mégegyszer! Üdv:
Dávid
10

Örülök hogy

solkprog · 2010. Szep. 6. (H), 13.20
Örülök hogy meggyőztünk.
Nemsok esetet tudok elképzelni mikor az embernek szüksége volna arra hogy másik nevével bejelentkezzen. Ha olyan jogosultság kell ami csak a másiknak van, akkor magadnak is meg kell adni azt a jogot, és kész. De ha mindenképpen úgyérzed hogy neked szükséged van arra hogy valaki másik neve alatt garázdálkodj, akkor le lehet programozni hogy az admin felületen ki lehessen választani ki "legyél" az oldalon.

Köztes alternatív (gány) megoldás:
Azt is lehet hogy letárolod a jelszavakat de nem hash-elt hanem kódolt formában. Ezzel egy baj van hogy ha feltörik az oldalt akkor a titkosítási algoritum ismeretében simán visszafejthető. De ha írsz egy saját titkosítási algoritmust aminek a kimenete úgy néz ki mint egy sha1 hash, akkor a hacker pistike azt fogja hinni hogy az simán egy sha1 hash, és azt meg ugyse tudja visszakódolni alapon, hagyni fogja az egészet a fenébe. (ha már hozzáfért a db-hez akkor utána már nem szokták a forráskódod böngészni)
Két gond még van ezzel mégpedig hogy be kell határold a jelszó hosszát, és karakterkészletét, és nem szabad kiküldeni emlékeztető emailbe a jelszót. (mert akkor evidens a rosszfiúnak hogy nem hash-elve van a jelszó)
De ezt csak felvettettem, lehetőleg tárold le normálisan hash-elve a jelszavakat.

ui: Ha egy oldalon az emlékeztető emailbe kiküldik a jelszavakat, akkor azt az oldalt jó eséllyel fogják megtámadni.
12

Az utolsó megjegyzésed

tisch.david · 2010. Szep. 6. (H), 20.49
Az utolsó megjegyzésed elgondolkodtató. Ez valóban egy reális veszély. Rögtön nekilátok átírni a kódot.
8

Nem csak antiszociális vagy,

virág · 2010. Szep. 6. (H), 07.20
Nem csak antiszociális vagy, de sajnos inkorrekt is...Remélem nem egy nagy szolgáltatónál dolgozol, ahol esetleg nekem is lehet regisztrációm, mert én ugyanis nem szeretném ha a jelszavamat el tudnák olvasni annak a cégnek az alkalmazottai akik hozzáférnek egy adatbázishoz...ezért KELL kódoltan tárolni elsősorban, a többi szempontot meg már leírták mások is.
9

Hát igen...

tisch.david · 2010. Szep. 6. (H), 08.41
Szia Virág!

Számítottam ilyen reakcióra, sőt, ez a Részedről jogosnak is tűnhet. Azonban inkorrekt mégsem vagyok, mert nem csak programozzuk az alkalmazást, hanem üzemeltetjük is, ebben a minőségemben van betekintésem az adatbázisba, melyben sokkal személyesebb adatok is vannak a jelszavaknál. Az adatok kezelésére vonatkozóan pedig természetesen minket is kötnek az üzemeltetői szerződésben megfogalmazott adatvédelmi elvek. Ezeket - büntetőjogi felelősségem tudatában - természetesen én is kötelező érvénnyel betartom.

Üdv:
Dávid
11

Van pár eszmefuttatás a

kuka · 2010. Szep. 6. (H), 17.30
Van pár eszmefuttatás a jelszó átvitel biztonságáról Paul Johnston cikkeiben: Protecting Passwords és Advanced Authentication. Nem feltétlenül házi feladat, kiegészítő olvasmánynak sem utolsó.