/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
PHP og sessions
Fra : Thomas Rokamp


Dato : 23-07-04 09:54

Hey!

Jeg anvedner PHP og sessions til at styre om en bruger er logget ind eller
ej. Men inden jeg benytter alt for meget, vil jeg gerne sikre mig, at der
ikke er noget sikkerhedsmæssigt forkert i at anvende sessions sådan.
Altså - kan man som bruger "hacke" sin session, så man kan skifte session
variable ud?

Mvh.
Thomas Rokamp



 
 
Jacob Atzen (23-07-2004)
Kommentar
Fra : Jacob Atzen


Dato : 23-07-04 11:01

"Thomas Rokamp" <nospam@crax.dk> writes:

> Jeg anvedner PHP og sessions til at styre om en bruger er logget ind eller
> ej. Men inden jeg benytter alt for meget, vil jeg gerne sikre mig, at der
> ikke er noget sikkerhedsmæssigt forkert i at anvende sessions sådan.
> Altså - kan man som bruger "hacke" sin session, så man kan skifte session
> variable ud?

Nej, sessionens indhold lagres på serveren. Klienten får kun et
sessions id der bruges til at identificere sessionen. Det er
naturligvis et sikkerhedsproblem, at brugeren kan dele sit sessions id
med andre. Om det er et problem må du vurdere i det konkrete
tilfælde.

--
Med venlig hilsen
- Jacob Atzen

Christian Joergensen (23-07-2004)
Kommentar
Fra : Christian Joergensen


Dato : 23-07-04 14:08

On Fri, 23 Jul 2004 12:01:08 +0200, Jacob Atzen wrote:

> Nej, sessionens indhold lagres på serveren. Klienten får kun et
> sessions id der bruges til at identificere sessionen. Det er
> naturligvis et sikkerhedsproblem, at brugeren kan dele sit sessions id
> med andre. Om det er et problem må du vurdere i det konkrete
> tilfælde.

Det kan være jeg tager fejl. Men jeg mener at PHP fra PHP5 begynder at
skifte session-ID for hver enkelt forespørgsel.

Det vil sige hvert ID kun er gyldigt en gang, hvorfor det bliver lidt
sværere at fuske med det.

--
Christian Jørgensen
http://www.razor.dk

Få kontrol over dine nyhedsbreve: <http://www.ebrev.info>


Jacob Atzen (23-07-2004)
Kommentar
Fra : Jacob Atzen


Dato : 23-07-04 22:17

Christian Joergensen <mail@razor.dk> writes:

> On Fri, 23 Jul 2004 12:01:08 +0200, Jacob Atzen wrote:
>
> > Nej, sessionens indhold lagres på serveren. Klienten får kun et
> > sessions id der bruges til at identificere sessionen. Det er
> > naturligvis et sikkerhedsproblem, at brugeren kan dele sit sessions id
> > med andre. Om det er et problem må du vurdere i det konkrete
> > tilfælde.
>
> Det kan være jeg tager fejl. Men jeg mener at PHP fra PHP5 begynder at
> skifte session-ID for hver enkelt forespørgsel.
>
> Det vil sige hvert ID kun er gyldigt en gang, hvorfor det bliver lidt
> sværere at fuske med det.

Det lyder umiddelbart som en god ide. Selvom der også kan være en del
problemer i det, hvis programmørerne selv vil lave ting baseret på
id'et. Jeg synes dog ikke jeg kan finde noget om det, hverken på
php.net eller i Zends "PHP5 changes" dokument:

<http://www.zend.com/php5/articles/engine2-php5-changes.php>

--
Med venlig hilsen
- Jacob Atzen

Peter Brodersen (23-07-2004)
Kommentar
Fra : Peter Brodersen


Dato : 23-07-04 17:51

On 23 Jul 2004 12:01:08 +0200, Jacob Atzen <jacob@aub.dk> wrote:

>Det er
>naturligvis et sikkerhedsproblem, at brugeren kan dele sit sessions id
>med andre. Om det er et problem må du vurdere i det konkrete
>tilfælde.

<kritik>
Det kan også være et sikkerhedsproblem, at sessions default kan deles
på tværs af webhoteller på en webserver i et standard-setup - også i
safe_mode og med open_basedir-restriction:
http://stock.ter.dk/session.php

Uden open_basedir-restriction (men stadigvæk i safe_mode) kan man
tillige tilgå samtlige session-data pga. dårligt glob()-tjek i
safe_mode:
http://stock.ter.dk/phpdev.php
</kritik>

Min erfaring siger mig, at mange webhoteller kører i safe_mode, nogle
kører også med open_basedir-restriction, men ikke særligt mange har
individuel session.save_path.

--
- Peter Brodersen

Ugens sprogtip: te (og ikke the)

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408929
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste