Početak›Forumi›Linuks›Programiranje›php, logovanje: kako zapamtiti korisnika???
- This topic has 10 odgovora, 5 glasova, and was last updated 17 years, 10 months ranije by jboban.
-
AutorČlanci
-
20. maj 2006. u 1:18 pm #7392zchiraUčesnik
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. maj 2006. u 3:02 pm #44414DVSoftwareUč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 #44415zchiraUč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 #44416pedjamanUč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 #44417memphisUč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 #44418DVSoftwareUčesnikako se ne varam 32bitni broj se lakshe bruteforcuje od nasumichnog para username i password.
26. maj 2006. u 12:32 am #44419memphisUč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 #44420memphisUč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 #44421jbobanUč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 #44422memphisUč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.