Početak › Forumi › Linuks › Programiranje › php, logovanje: kako zapamtiti korisnika???
- This topic has 10 odgovora, 5 glasova, and was last updated 20 years, 2 months ranije by
jboban.
-
AutorČlanci
-
20. maj 2006. u 1:18 pm #7392
zchira
UčesnikKorisnik dodje na sajt, i od njega se trazi da popuni formu sa poljima username i password, i postoji checkbox ‘zapamti me’. Kad je chekiran ovaj chekbok, prilikom sledece posete sajtu korisnik je automatski logovan. (Isto kao na http://www.linuxo.net).
Kako se ovo realizuje. Ne teba mi kod, trebi mi koncept.
Koje informacije se nalaze u cookie-u ?Po mojoj pocetnickoj logici u cookie-u bi trebao da stoji session_id, koji ce postojati u i u bazi. (npr. u tabeli gde se cuva info o korisnicima postoji jedno polje koje cuva session_id).
Kada se korisnik loguje, generise se session_id, i upisuje u cookie i u bazu. Ako chekbox cekiran kukiju se daje veliki lifetime (recimo 30dana), a ako nije daje mu se lifetime 0 (to je valjda samo dok se browser ne zatvori).
Kada se korisnik ponovo dodje na sajt, iz cookie-a se procita session_id i na osnovu njega se iz tabele ocitaju podaci o korisniku i stampa pozdravna poruka.
Ako je cookie prazan, stampa se forma za logovanje.Kada se korisnik izloguje, brise se cookie, i u tabeli se za tog korisnika u polju session_id upisuje null.
_________________
da li je ovo dobar i bezbedan nacin ili se u praksi to tako ne radi?20. maj 2006. u 3:02 pm #44414DVSoftware
Učesnikpo meni nije bezbedno drzhati session id, ovo se lako bruteforcuje. Bolje drzhi md5 passworda i username
medjutim mozhda greshim…21. maj 2006. u 4:51 pm #44415zchira
UčesnikZnaci md5(password) i usename, ili id_user.
Kakvo je ovo resenje sto se tice bezbednosti, i uopste koliki su rizici od drzanja ovakvih informacija u cookie-u?
21. maj 2006. u 7:14 pm #44416pedjaman
UčesnikZnaci md5(password) i usename, ili id_user.
Kakvo je ovo resenje sto se tice bezbednosti, i uopste koliki su rizici od drzanja ovakvih informacija u cookie-u?
Slobodno baci u cookie samo username and password i uživaj 🙂
25. maj 2006. u 12:09 pm #44417memphis
UčesnikKakvo je ovo resenje sto se tice bezbednosti, i uopste koliki su rizici od drzanja ovakvih informacija u cookie-u?
Sav http saobracaj izmedju klijenta i servera putuje u obicnom tekstu. Pa tako sa njim i kuki i sve ono sto on sadrzi.
Pored putovanja samog kukija i opasnosti od presretanja kuki se cuva jos na klijentovom kompjuteru i na serveru.
Na klijentovom kompjuteru lezi recimo opasnost od trojanaca/virusa/… koji salju tvoje kukije negde.
Sto se servera tice kukiji se cuvaju u obicnom fajlu u nekom tmp direktorijumu. Obicno je to /tmp ciji je vlasnik server, pa razmisli i o promeni putanje funkcijom session_save_path(), ako ne zelis da pamtis sesiju u bazi.
Kuki se recimo jos moze ukrasti prostim javascript programcetom ako se nisi obezbedio od XSS-a. itd…
Principi bezbednosti su ukratkom da kuki sto krace traje i da nosi sa sobom sto manje informacija, da ne duzim dalje.
Sto se kriptovanja tice md5 se ne smatra pouzdanim sistemom kriptovanja http://en.wikipedia.org/wiki/MD5, bolje je koristiti sha1 ako se vec ide na trajnu sesiju sa cuvanjem username-a i passworda u kukiju. U tom slucaju takodje promeni nazive promenljivih username i password (obfuskacija), da iskljucis automatske tragace za parovima username/password.
Id sesija u php-u iznosi 32 bajta, sto je sasvim dovoljno, tako da ne vidim razlog za cuvanjem username-a/passworda u kukiju.
25. maj 2006. u 11:17 pm #44418DVSoftware
Učesnikako se ne varam 32bitni broj se lakshe bruteforcuje od nasumichnog para username i password.
26. maj 2006. u 12:32 am #44419memphis
Učesnikako se ne varam 32bitni broj se lakshe bruteforcuje od nasumichnog para username i password.
Da lakse je, medjutim u tom slucaju neko je u posedu para username/md5(password) i ima na raspolaganju neograniceno vremena za dekodiranje, bez obzira kada ce da istekne sessionid.
Praksa kod seseija koje ostaju nakon zatvaranja browsera je da se kreiraju dva kukija jedan dugotrajan koji omogucava prepoznavanje username-a, readonly pristup ne tako kriticnim informacijama i drugi kratkotrajan koji je u opticaju dok se ne zatvori browser.
Za neke ne tako kriticne aplikacije nije problem ostaviti samo sessionid, jer se olaksava razvoj aplikacije.
27. maj 2006. u 4:26 pm #44420memphis
Učesnikbas sam hteo da probam md5,
http://gdataonline.com/seekhash.phpukucam a9cbff02c8f4499beb16d11f31d1bbfc , submit i dobijem memphis
😀i jos kaze
Page generated in 0.00305 seconds.17. jun 2006. u 12:44 am #44421jboban
Učesnikukucam a9cbff02c8f4499beb16d11f31d1bbfc , submit i dobijem memphis
Ali zato za ‘cf7dfb80f961450b3d46b7361b37e92e’ daje nekoliko znakova pitanja. Kako si pravio md5?
17. jun 2006. u 8:01 am #44422memphis
UčesnikU firefoxu imam plugin MD-5 hash tool i sa njime sam dobio za memphis: a9cbff02c8f4499beb16d11f31d1bbfc.
a md5sum:
19d771ee5dd527d6f4f3ae55b8235dada9cbff02c8f4499beb16d11f31d1bbfc
-
AutorČlanci
Moraš biti prijavljen da bi postavio komentar u ovoj temi.