Jos käyttää session käyttäjän tietojen tallentamiseen. Niin kannattako tarkistaa joka toimenpiteen jälkeen, että sessio tiedoissa on tallennettu oikea käyttäjän tunnus ja salasana ja käyttäjällä on oikeasti on esim moderaattorin oikeudet? Vai riittäkö, että kun käyttäjä kirjautuu, niin session muuttujaan tallennetaan että kirjautuminen on OK, ja sen jälkeen kaikki toiminnot suoritetaan ilman mitään varmistuksia?
Sessions ja turvallisuus...
secure koodari
8472
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 8
Vanhimmat
Kannattaa tarkistaa että sessiossa olevalla tunnuksella on kyseiseen toimintoon oikeus. Yleensä riittänee vain tällainen tarkistus ilman salasanatarkistusta tjmv. eli tuo jälkimmäinen kohta riittää yleensä. Tietysti aina mitä kriittisemmästä sovelluksesta on kyse, pitää myös turvatarkistukset hoitaa sen mukaan. :)
Salasanaa ei ehkä kannattaisi sessioon sellaisenaan tallentaa, koska tällöin se _periaatteessa_ on luettavissa palvelimen muistissa.
Eikös sessionissa kannata liikuttaa sitä istuntotunnust, jonka avulla haetaan kannasta tarpeellinen tieto sovelluksen oikeuksien tarkistamiseen.
>Kannattaa tarkistaa että sessiossa olevalla tunnuksell
Miksi kannattaisi? Sessiotiedot säilytetään palvelimella, ja jos kerran on tarkistanut ja tallentanut tiedot, niin ne pysyvätkin siinä turvassa.
>Salasanaa ei ehkä kannattaisi sessioon sellaisenaan
Salasanat tallennetaan md5 salattuina ja sellaisessa muodossa ne voi säilyttää vaikka kekseissä. Kaiken lisäksi session tiedostoilla on vain WWW-tunnuksella oikeuden lukea/kirjoittaa joten kukaan ei pysty lukemaan vaikka olisi ssh tunnus palvelimelle.
"Miksi kannattaisi? Sessiotiedot säilytetään palvelimella, ja jos kerran on tarkistanut ja tallentanut tiedot, niin ne pysyvätkin siinä turvassa."
Olethan kuullut sessikaappauksesta?
Jos turvallista halutaan niin sessio sidotaan selaimen nimeen ja IP-osoitteeseen.
"Salasanat tallennetaan md5 salattuina ja sellaisessa muodossa ne voi säilyttää vaikka kekseissä."
Älähän nyt, md5 ei ole nykymittapuun mukaan enään kovin turvallinen. Varsinkin jos et suolaa käytä niin lyhkäsen salasanan saattaa saada selville nopsastikin. Ja todella tyhmää liikuttaa salasanaa jatkuvasti käyttäjä -> palvelin.
"Kaiken lisäksi session tiedostoilla on vain WWW-tunnuksella oikeuden lukea/kirjoittaa joten kukaan ei pysty lukemaan vaikka olisi ssh tunnus palvelimelle."
Ja tämähän riippuu palvelimen asetuksista. Joissain palvelimissa jopa toisen kotihakemiston tiedostoja pystyy lukemaan.
Mureakuhan Wikis on session teoriaa se kannattaa lukast.
md5 hajontaa EI OLE mahdollista palauttaa taksiin alkuperäiseen muotoon, teknisesti mahdotonta.
"md5 hajontaa EI OLE mahdollista palauttaa taksiin alkuperäiseen muotoon, teknisesti mahdotonta."
Olet periaatteessa oikeessa, mutta voidaan löytää alkuperäinen tai toinen merkkijono joka muodostaa saman md5 tarkistussumman, sehän kelpaa silloin salasanana. Ja nykykoneet tehokkaita joten lyhyt salasana md5 ilman suolaa ei ole kovin hyvä.
Katsoppas
http://passcracking.ru/
953e1050e2c5ce5e75e45461d37671ca murtuu sil, mut
d7c54f900150983cd24fb0d6963f7d28e17f72d37 ei koska suolaa mukana. (Jälkinmäinen on sit vielä helpompa salasana sekä löytyy ilman suolaa tuolta)
Kuten Juude kertoi, niin sessionit ovat turvassa palvelimella, joten voit tallentaa session muuttujiin mitä vain.
Käytännössä ainoa tietoturvaa parantava asia minkä voit tehdä, on nkre:n mainitsemat selaimen ja IP osoitteen tarkastaminen sivu haun yhteydessä. Eli tallennat session muuttujaan käyttäjän selaimen ja ip:n, ja aina haun yhteydessä varmistat, ettei käyttäjän ip tai selain ole muuttunut (joka viittaisi session kaappaukseen).
Salasanan tarkastaminen joka kerta on suorastaan tietoturva riski, sillä sehän edellyttäisi sitä, että salsana on käyjän koneella (jossain keksissä), jota liikutellaan joka sivu haun yhteydessä. Tällöin kaappaajat eivät saa ainoastaan sessionkeksiä haltuunsa, vaan jopa käyttäjän salasanan.
"Käytännössä ainoa tietoturvaa parantava asia minkä voit tehdä, on nkre:n mainitsemat selaimen ja IP osoitteen tarkastaminen sivu haun yhteydessä. Eli tallennat session muuttujaan käyttäjän selaimen ja ip:n, ja aina haun yhteydessä varmistat, ettei käyttäjän ip tai selain ole muuttunut (joka viittaisi session kaappaukseen)."
Ennemmin tuo kannattaa tehdä vaikkapa md5(selain ip sessio_id) ja tallentaa kantaan aikaleiman kanssa ja oikeustasokin mikäli semmoista käyttää. Joka sivu haun yhteydessä katsotaan että aikaa ei ole kulunut vaikkapa 30min edellisestä sivuhausta. Tällöin sessio vanhenee mikä lisää turvallisuutta.
Toki tuon saman voi tehdä pelkän sessionin kans.