Jump to content
php.lv forumi

Drošākais login veids


m8t

Recommended Posts

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?

Link to comment
Share on other sites

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"

Link to comment
Share on other sites

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 ...

Link to comment
Share on other sites

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ā" :)

Link to comment
Share on other sites

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.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...