/ 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
Farer ved register_globals=on
Fra : Bo Dudek


Dato : 07-09-03 17:58

Hej

Jeg vil lige høre, om der er nogen, der kan give nogle grumme
historier (gerne fiktive) på, hvor galt det kan gå, når
register_globals er sat til on?

Sagen er den, at jeg har et par websites, som tidligere har kørt på en
server, hvor register_globals har været on. Nu har jeg flyttet dem til
en server, hvor jeg selv kan styre register_globals.

Jeg vil selvsagt ikke sætte register_globals til on, hvis det giver
katestrofale sikkerhedsproblemer, men omvendt, så er der - desværre -
en del steder i mine sider, der skal rettes, hvis ikke jeg gør det.

Anyone?

Mvh
Bo Dudek
www.bodudek.dk


 
 
Johan Holst Nielsen (07-09-2003)
Kommentar
Fra : Johan Holst Nielsen


Dato : 07-09-03 20:07

Bo Dudek wrote:
> Jeg vil lige høre, om der er nogen, der kan give nogle grumme
> historier (gerne fiktive) på, hvor galt det kan gå, når
> register_globals er sat til on?
>
> Sagen er den, at jeg har et par websites, som tidligere har kørt på en
> server, hvor register_globals har været on. Nu har jeg flyttet dem til
> en server, hvor jeg selv kan styre register_globals.
>
> Jeg vil selvsagt ikke sætte register_globals til on, hvis det giver
> katestrofale sikkerhedsproblemer, men omvendt, så er der - desværre -
> en del steder i mine sider, der skal rettes, hvis ikke jeg gør det.

Så længe man har 100% styr på sine variabler bør der i princippet ikke
være et problem :)

Men PHP har selv noget om sagen :)
http://www.php.net/manual/en/security.registerglobals.php

Og Google er din ven:
<http://www.google.dk/search?q=register+globals+security&ie=UTF-8&oe=UTF-8&hl=da&meta=>

mvh
johan


Dennis Møllegaard Pe~ (07-09-2003)
Kommentar
Fra : Dennis Møllegaard Pe~


Dato : 07-09-03 20:22

On Sun, 07 Sep 2003 18:57:56 +0200, Bo Dudek wrote:

> Jeg vil lige høre, om der er nogen, der kan give nogle grumme historier
> (gerne fiktive) på, hvor galt det kan gå, når register_globals er sat
> til on?

Der står lidt her:
http://www.php.net/manual/en/security.registerglobals.php
http://forums.devshed.com/t38817/s.html

> Jeg vil selvsagt ikke sætte register_globals til on, hvis det giver
> katestrofale sikkerhedsproblemer, men omvendt, så er der - desværre -
> en del steder i mine sider, der skal rettes, hvis ikke jeg gør det.

Basalt set gør register_globals ikke meget fra eller til mht sikkerheden.
Det er ikke svært at lave huller selvom register_globals er off, så det
garantere ikke noget. Hvis du laver input-checks på de variabler du
bruger i din kode, samt husker at initialisere alle dine variabler før du
bruger dem, skulle du ikke have problemer.

Jeg bruger selv altid register_globals til off (samt
error_reporting(E_ALL)). Jeg syntes det er pærnere at jeg skal "hente"
koden fra $_GET/$_POST/etc og tildele det til min egne variabler.

Dog løser "register_globals off" de problemer som der står på
php.net-linket beskriver. Selvom jeg vil mene at det er *GRIMT*, ikke at
initiere variabler før brug.

--
Dennis Møllegaard Pedersen,
PGP fingerprint = 5A23 2E7D 7F4F 7FBE 39AC CDEF 55A0 FF70 87C0 59D9


Bo Dudek (07-09-2003)
Kommentar
Fra : Bo Dudek


Dato : 07-09-03 22:32

[...]

>at initialisere alle dine variabler

... ehm.. er det normalt settype($var,"string") osv. man bruger eller
er der alternativer?

Mvh
Bo Dudek
www.bodudek.dk


Dennis Møllegaard Pe~ (07-09-2003)
Kommentar
Fra : Dennis Møllegaard Pe~


Dato : 07-09-03 22:58

On Sun, 07 Sep 2003 23:32:28 +0200, Bo Dudek wrote:

>
>>at initialisere alle dine variable
> .. ehm.. er det normalt settype($var,"string") osv. man bruger eller
> er der alternativer?


Nej jeg tænker nærmere på:

$var = '';

Hvis brugeren så kalder dit script
domain/url.php?var=noget+skadeligt

Så vil din initialisering fjerne "noget skadeligt". Basalt set, drejer det
bare om at holde en god programmeringsskik, og som alle andre steder, bør
man altid sætte sine værdier til noget. Ikke antage de er tomme (det vil
de jo være med mindre man sætter den til en værdi i url'en - hvilket
"register_globals off" løser).

--
Dennis Møllegaard Pedersen,
PGP fingerprint = 5A23 2E7D 7F4F 7FBE 39AC CDEF 55A0 FF70 87C0 59D9


Kim Emax (07-09-2003)
Kommentar
Fra : Kim Emax


Dato : 07-09-03 23:03

Dennis Møllegaard Pedersen wrote:

> Så vil din initialisering fjerne "noget skadeligt". Basalt set,
> drejer det bare om at holde en god programmeringsskik, og som alle
> andre steder, bør man altid sætte sine værdier til noget. Ikke antage
> de er tomme (det vil de jo være med mindre man sætter den til en
> værdi i url'en - hvilket "register_globals off" løser).

Kod i klasser, så er man ude over problemet

--
Take Care
Kim Emax - master|minds: http://www.masterminds.dk
http://www.emax.dk - http://www.ayianapa.dk
Køb din vin online på http://www.gmvin.dk,
Danmarks måske mest avancerede VinWebShop



Søg
Reklame
Statistik
Spørgsmål : 177518
Tips : 31968
Nyheder : 719565
Indlæg : 6408647
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste