Почетак › Форуми › Линукс › Програмирање › php, logovanje: kako zapamtiti korisnika???
- This topic has 10 одговора, 5 гласова, and was last updated 20 years, 2 months раније by
jboban.
-
АуторЧланци
-
20. мај 2006. у 1:18 pm #7392
zchira
УчесникKorisnik 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. мај 2006. у 3:02 pm #44414DVSoftware
Учесникpo meni nije bezbedno drzhati session id, ovo se lako bruteforcuje. Bolje drzhi md5 passworda i username
medjutim mozhda greshim…21. мај 2006. у 4:51 pm #44415zchira
УчесникZnaci 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. мај 2006. у 7:14 pm #44416pedjaman
УчесникZnaci 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. мај 2006. у 12:09 pm #44417memphis
УчесникKakvo 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. мај 2006. у 11:17 pm #44418DVSoftware
Учесникako se ne varam 32bitni broj se lakshe bruteforcuje od nasumichnog para username i password.
26. мај 2006. у 12:32 am #44419memphis
Учесникako 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. мај 2006. у 4:26 pm #44420memphis
Учесникbas 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. јун 2006. у 12:44 am #44421jboban
Учесникukucam a9cbff02c8f4499beb16d11f31d1bbfc , submit i dobijem memphis
Ali zato za ‘cf7dfb80f961450b3d46b7361b37e92e’ daje nekoliko znakova pitanja. Kako si pravio md5?
17. јун 2006. у 8:01 am #44422memphis
УчесникU firefoxu imam plugin MD-5 hash tool i sa njime sam dobio za memphis: a9cbff02c8f4499beb16d11f31d1bbfc.
a md5sum:
19d771ee5dd527d6f4f3ae55b8235dada9cbff02c8f4499beb16d11f31d1bbfc
-
АуторЧланци
Мораш бити пријављен да би поставио коментар у овој теми.