m8t Posted September 25, 2009 Report Share Posted September 25, 2009 Tātad, padomā ir 2 loginu veidi: 1. veids: Saglabājam lietotāja id sesijā, vēlāk no tās arī izvelkam lietotāja id, ar to ieejam datubāzē un izvelkam lietotāja informāciju. 2. veids: Kad lietotājs ielogojas, saglabājam viņa ip adresi, lietotāja id datubāzē. Vēlāk, pārbaudam vai lietotājs ir ielogojies ieejot datubāzē, un pasaktoties, vai tur ir ieraksts ar attiecīgo ip adresi. Ja ir - lietotājs ir ielogojies, ja nav - lietotājs nav ielogojies. Kurš no šiem veidiem būtu drošāks pret hakeriem un citiem ļaundariem? Quote Link to comment Share on other sites More sharing options...
So sick! Posted September 25, 2009 Report Share Posted September 25, 2009 Nu sesijā glabājot lietas hakeri var tikt pie visa vajadzīgā, bet uz ip liekot kādam kuram nav statiskā ip arī nav droši.. Labāk tad izmanto sesijas.. Quote Link to comment Share on other sites More sharing options...
briedis Posted September 25, 2009 Report Share Posted September 25, 2009 Uz IP adresi nu noteikti nevar paļauties. Citiem tā ir dinamiska, citi sēž aiz rūtera, un vienlaicīgi redzami kā zem vienas adreses (teiksim man mājās 4 datori, viena IP) Kā lietotājs ielogojas, glabā sesijā ID. Ieteiktu arī glabāt sesijā dažādus parametrus, kā piemēram User-Agent, kaut vai to pašu IP adresi, un katru reizi pie lapas ielādes pārbaudīt, vai tie paši parametri sakrīt. Tas tā, lai sesiju nenosper tik viegli :) Googlee arī netrūkst informācijas zem atslēgvārdiem "php secure login" Quote Link to comment Share on other sites More sharing options...
briedis Posted September 25, 2009 Report Share Posted September 25, 2009 Nu sesijā glabājot lietas hakeri var tikt pie visa vajadzīgā, bet uz ip liekot kādam kuram nav statiskā ip arī nav droši.. Labāk tad izmanto sesijas.. Nejauc sesijas ar cepumiem? Kā tad viņš var "hakeris tikt pie visa vajadzīgā"? :) Quote Link to comment Share on other sites More sharing options...
Grey_Wolf Posted September 25, 2009 Report Share Posted September 25, 2009 Tas tā, lai sesiju nenosper tik viegli :) Kaa gan tu dabuusi Sesijas parametrus?? Tie tachu normala veidaa glabajas Uz servera.. taa ka tik viegli vinjiem klat netiksi , a ja tiksi klat Serverim , Tad jau ir pilnigi vienalga kur ko glaba, jo primeri vienkarshi panjems Visu DB ... Quote Link to comment Share on other sites More sharing options...
briedis Posted September 25, 2009 Report Share Posted September 25, 2009 Grey_Wolf, nepareizo laikam nocitēji :D Quote Link to comment Share on other sites More sharing options...
Grey_Wolf Posted September 26, 2009 Report Share Posted September 26, 2009 Grey_Wolf, nepareizo laikam nocitēji :D Nee Postu Nr.3 :P Quote Link to comment Share on other sites More sharing options...
briedis Posted September 26, 2009 Report Share Posted September 26, 2009 Ar to es domāju vismaz kaut kādu aizsardzību pret XSS, lai nenosper sessid, ne jau to, ka kāds var vienkārši piekļūt pašiem sesijas datiem... :) Loģiskāk būtu, ja citētu postu nr.2 - "Nu sesijā glabājot lietas hakeri var tikt pie visa vajadzīgā" :) Quote Link to comment Share on other sites More sharing options...
Aleksejs Posted September 28, 2009 Report Share Posted September 28, 2009 Pirmais veids neizslēdz otro. Sesiju padara drošāku (saraksts, protams, nav visaptverošs): 1) Pārliecinoties, ka sesijas identifikators tiek ģenerēts pietiekami neparedzams un modificējot kodu, kas ģenerē sesijas identifikatoru, ja tas nepieciešams. 2) Veicot neveiksmīgo sesijas (ar nepareiziem identifikatoriem) mēģinājumu uzskaiti un analīzi un bloķējot piekļuvi vai veicot papildu drošības pārbaudes tiem pieslēgumiem, kuri pārsniedz pieļaujamo slieksni. 3) Veicot papildu pasākumus sesijas datu aizsardzībai uz servera (failu sistēmas gadījumā, aizliedzot php lietotājam redzēt sesiju mapes saturu, taču atļaujot piekļūt, ja zin precīzu faila nosaukumu, kā arī aizliegt piekļuvi pilnīgi visiem citiem OS lietotājiem šai mapei. DB gadījumā neļaujot nolasīt visu sesiju datus, bet gan tikai atlasīt pēc konkrēta sesijas ID). 4) Veicot papildu pasākumus, lai samazinātu sesijas ID pārtveršanas iespēju klienta pusē. 5) Ja ir iespēja - vismaz lietotāja autentificēšanas datu pārsūtīšanai izmantot SSL/TLS. Quote Link to comment Share on other sites More sharing options...
Kemito Posted September 28, 2009 Report Share Posted September 28, 2009 Izvelc datus no DB un salīdzini, ja sakrīt iesāc attiecīgu sessiju, vislabākais būtu izmantojot funkciju, līdz ar to katru reizi nav jāvelk jauni dati, lai dabūtu kaut ko laukā :) Cerams, ka saprati, ja nē nu tad uzraksti man privāti! Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.