|
| Go.php?site=links Fra : Gundersen |
Dato : 24-05-01 22:13 |
|
Hej
Jeg er igang med at lave en go.side!
Når jeg fra min menu, trykker på link, går den til: go.php?site=links
Så skal jeg have så den loader min go, side, men indholdet kommer fra
min links.php
Jeg har i forevejen følgene kode:
go.php:
--------------------------
<? require("top.php"); ?>
<? require($siden); ?>
<? require("bund.php"); ?>
---------------------------
Scriptet virker fint, men jeg skal have den til at tjecke noget!
Jeg skal have den til at tjecke hvad $site har for en værdi, og så loade
den side!
komando: go.php?site=links
----------------------------
(Jeg har forestillet mig noget i denne stil:)
<?
if $site = links then
$siden = "links.php"
end if
o.s.v.
?>
-------------------------
Jeg ved godt at dette er VB programering, men det er den nemeste måde at
forklare det på, synes jeg!
Er der en der gider at omskrive det til php?
Mvh Emil
p.s. På forhand tusinde tak for hjælpen!
--
www.ScooterZone.dk
Yamaha Neo's @ Polini Sport
| |
Jonas Delfs (24-05-2001)
| Kommentar Fra : Jonas Delfs |
Dato : 24-05-01 22:45 |
|
"Gundersen" <Gundersen@e-box.dk> skrev i en meddelelse
news:3B0D7964.797CBA3E@e-box.dk...
> komando: go.php?site=links
> ----------------------------
> (Jeg har forestillet mig noget i denne stil:)
> <?
> if $site = links then
> $siden = "links.php"
> end if
> o.s.v.
> ?>
> -------------------------
> Jeg ved godt at dette er VB programering, men det er den nemeste måde at
> forklare det på, synes jeg!
>
> Er der en der gider at omskrive det til php?
<?php
if ($site == "links") {
$siden = "links.php";
}
?>
--
Mvh. Jonas Delfs
http://delfs.dk
"Kun en tåbe rydder op. Et geni behersker kaos"
| |
Nezar Nielsen (24-05-2001)
| Kommentar Fra : Nezar Nielsen |
Dato : 24-05-01 22:51 |
|
"Gundersen" <Gundersen@e-box.dk> wrote in message
news:3B0D7964.797CBA3E@e-box.dk...
> Jeg skal have den til at tjecke hvad $site har for en værdi, og så loade
> den side!
>
> komando: go.php?site=links
> ----------------------------
> (Jeg har forestillet mig noget i denne stil:)
> <?
> if $site = links then
> $siden = "links.php"
> end if
> o.s.v.
> ?>
<?php
if($site=='links') $side='links.php';
?>
Bemærk at i php sammenligner man to ting med '==', mens man tildeler med et
enkelt '='.
Hvis du er glad for if .. else ..endif så kan du også bruge den syntax i
php, se:
http://dk.php.net/manual/en/control-structures.alternative-syntax.php
En anden måde at gøre sådan noget på er:
<?php
switch($site){
case 'links':
$side='links.php';
break;
case 'about':
$side='about.php';
break;
default:
$side='nosuch.php';
}
?>
Læs iøvrigt http://dk.php.net/manual/en/language.expressions.php for en
lille intro til expressions i php.
--
Mvh. Nezar Nielsen
http://fez.dk/
| |
Gundersen (24-05-2001)
| Kommentar Fra : Gundersen |
Dato : 24-05-01 23:52 |
| | |
Christian Joergensen (25-05-2001)
| Kommentar Fra : Christian Joergensen |
Dato : 25-05-01 09:58 |
|
Gundersen <Gundersen@e-box.dk> wrote:
> Jeg er nemlig van til at programere i Visual Basic! =)
Mon så ikke du skulle kigge på ASP ? :)
--
Christian Jørgensen | "Ford, you're turning into a penguin"
http://www.razor.dk | "Stop it"
| |
Gundersen (25-05-2001)
| Kommentar Fra : Gundersen |
Dato : 25-05-01 20:38 |
|
Hej
> Mon så ikke du skulle kigge på ASP ? :)
Nej! Jeg har fået nok af MicroShit!
Det er sQ da godt at der er nogle alternertiver, ik?
Desuden synes jeg at php er bedre!
Mvh Emil
--
www.ScooterZone.dk
Yamaha Neo's @ Polini Sport
| |
Henrik Jensen (24-05-2001)
| Kommentar Fra : Henrik Jensen |
Dato : 24-05-01 22:57 |
|
Gundersen <Gundersen@e-box.dk> wrote in message
news:3B0D7964.797CBA3E@e-box.dk...
> Hej
>
> Jeg er igang med at lave en go.side!
> Når jeg fra min menu, trykker på link, går den til: go.php?site=links
> Så skal jeg have så den loader min go, side, men indholdet kommer fra
> min links.php
>
> Jeg har i forevejen følgene kode:
> go.php:
> --------------------------
> <? require("top.php"); ?>
>
> <? require($siden); ?>
>
> <? require("bund.php"); ?>
> ---------------------------
Du ved godt, det er muligt at skrive flere linier indenfor samme php-tags,
ikk?
<?
require("top.php");
require($siden);
require("bund.php");
?>
> Scriptet virker fint, men jeg skal have den til at tjecke noget!
> Jeg skal have den til at tjecke hvad $site har for en værdi, og så loade
> den side!
> komando: go.php?site=links
> ----------------------------
> (Jeg har forestillet mig noget i denne stil:)
> <?
> if $site = links then
> $siden = "links.php"
> end if
> o.s.v.
> ?>
En ren omskrivning ville være noget a la:
<?
if ($site == "links"){
$siden = "links.php"
}
?>
Jeg har på min egen side ( http://www.netwerk.dk) et lignende system, hvor
jeg benytter følgende princip, og derfor undgår et hav af sammenligninger:
<? include $incfile.".php" ?>
Hver gang man så klikker på et link (f.ex. "linksamling" - linkes der
tilbage til samme fil (index.php) men med incfile sat til navnet på den fil
der skal includes, blot uden extension´en:
<a href="index.php?incfile=view_links">Linksamling</a>
Håber det kan bruges
Vh
Henrik
| |
Gundersen (24-05-2001)
| Kommentar Fra : Gundersen |
Dato : 24-05-01 23:50 |
|
Hej
> Du ved godt, det er muligt at skrive flere linier indenfor samme php-tags,
> ikk?
Jo, men jeg var ikke sikker på at man kunne gøre det når det var flere sider
den henter sammen i en!
> <?
> require("top.php");
> require($siden);
> require("bund.php");
> ?>
Mvh Emil
--
www.ScooterZone.dk
Yamaha Neo's @ Polini Sport
| |
Henrik Jensen (25-05-2001)
| Kommentar Fra : Henrik Jensen |
Dato : 25-05-01 00:00 |
|
Gundersen <Gundersen@e-box.dk> wrote in message
news:3B0D9014.FA4609D6@e-box.dk...
> Hej
>
>
> > Du ved godt, det er muligt at skrive flere linier indenfor samme
php-tags,
> > ikk?
>
> Jo, men jeg var ikke sikker på at man kunne gøre det når det var flere
sider
> den henter sammen i en!
>
> > <?
> > require("top.php");
> > require($siden);
> > require("bund.php");
> > ?>
>
Det ka du sagtens.
Jeg er også tilbøjelig til at anbefale dig at bruge include fremfor require.
Mest fordi dit script vil exit´e totalt hvis en 'required' fil ikke kan
åbnes. Med include får du højst en grim fejlbesked om at den og den fil ikke
kunne åbnes.
Desuden kan include benyttes i betingelser og løkker, det kan require ikke
(på samme fede måde).
Require benyttes som regel kun der hvor resten af scriptet er "dybt
afhængig" af den pågældende fil (f.ex. i forb. med validering af brugere der
ikke må se noget som helst hvis de ikke først er logget ind).
God fornøjelse
--
/Henrik
- Personlige online bookmarks - http://www.netwerk.dk
- Rhythm! - Machine! - Music! - http://www.neotek.as
| |
Gundersen (25-05-2001)
| Kommentar Fra : Gundersen |
Dato : 25-05-01 00:41 |
|
Hej
> Jeg er også tilbøjelig til at anbefale dig at bruge include fremfor require.
> Mest fordi dit script vil exit´e totalt hvis en 'required' fil ikke kan
> åbnes. Med include får du højst en grim fejlbesked om at den og den fil ikke
> kunne åbnes.
> Desuden kan include benyttes i betingelser og løkker, det kan require ikke
> (på samme fede måde).
> Require benyttes som regel kun der hvor resten af scriptet er "dybt
> afhængig" af den pågældende fil (f.ex. i forb. med validering af brugere der
> ikke må se noget som helst hvis de ikke først er logget ind).
oki!
men med denne kode finder den bare main siden hvis siden ikke findes! =)
<?
switch($site){
case 'links':
$side='links.php';
break;
case 'about':
$side='about.php';
break;
default:
$side='main.php';
}
require("$side");
?>
Mvh Emil
--
www.ScooterZone.dk
Yamaha Neo's @ Polini Sport
| |
Thor Dreier (25-05-2001)
| Kommentar Fra : Thor Dreier |
Dato : 25-05-01 01:27 |
|
"Gundersen" <Gundersen@e-box.dk> skrev i en meddelelse
news:3B0D9C1B.E21CB17F@e-box.dk...
> <?
> switch($site){
> case 'links':
> $side='links.php';
> break;
> case 'about':
> $side='about.php';
> break;
> default:
> $side='main.php';
> }
> require("$side");
> ?>
Prøv denne:
if( !@include($side."php") )
include("main.php");
Hvis siden findes bliver den inkluderet, ellers er det main der bliver
inkluderet. Det fylder lidt mindre.
--
http://dreier.nu http://www.leninisme.org http://www.wildjumpers.com
- Med denne udtalelse repræsenterer jeg på ingen måde mig selv!
- Det er bedre at være destruktiv på en konstruktiv måde,
end at være konstruktiv på en destruktiv måde.
| |
Henrik Jensen (25-05-2001)
| Kommentar Fra : Henrik Jensen |
Dato : 25-05-01 01:34 |
|
> Prøv denne:
>
> if( !@include($side."php") )
> include("main.php");
>
> Hvis siden findes bliver den inkluderet, ellers er det main der bliver
> inkluderet. Det fylder lidt mindre.
>
Yepsen,
desværre virker det bare ikke med @ foran include... (med mindre man kører
php4, hvilket nogle webhoteller desværre ikke gør)
--
/Henrik
- Personlige online bookmarks - http://www.netwerk.dk
- Rhythm! - Machine! - Music! - http://www.neotek.as
| |
Thor Dreier (25-05-2001)
| Kommentar Fra : Thor Dreier |
Dato : 25-05-01 01:45 |
|
"Henrik Jensen" <hj@netwerk.dk> skrev i en meddelelse
news:YLhP6.2946$Zs3.391068@news010.worldonline.dk...
> desværre virker det bare ikke med @ foran include... (med mindre man
kører
> php4, hvilket nogle webhoteller desværre ikke gør)
Oki, jeg testede det på min egen linuxbox (som kører php4), og her
virkede det fint. Er der egentlig særlig mange steder der kører php3?
| |
Thor Dreier (25-05-2001)
| Kommentar Fra : Thor Dreier |
Dato : 25-05-01 01:51 |
|
"Henrik Jensen" <hj@netwerk.dk> skrev i en meddelelse
news:YLhP6.2946$Zs3.391068@news010.worldonline.dk...
> Yepsen,
> desværre virker det bare ikke med @ foran include... (med mindre man
kører
> php4, hvilket nogle webhoteller desværre ikke gør)
Hvis man ikke kan undertrykke fejlmeddelelser med @, så kan man jo evt.
bruge:
if(is_file($side."php"))
include($side."php");
else
include("main.php");
Hygge
| |
Henrik Jensen (25-05-2001)
| Kommentar Fra : Henrik Jensen |
Dato : 25-05-01 14:00 |
|
Thor Dreier <news@cheater.dk> wrote in message
news:K_hP6.3020$Zs3.392744@news010.worldonline.dk...
> "Henrik Jensen" <hj@netwerk.dk> skrev i en meddelelse
> news:YLhP6.2946$Zs3.391068@news010.worldonline.dk...
> > Yepsen,
> > desværre virker det bare ikke med @ foran include... (med mindre man
> kører
> > php4, hvilket nogle webhoteller desværre ikke gør)
>
> Hvis man ikke kan undertrykke fejlmeddelelser med @, så kan man jo evt.
> bruge:
>
> if(is_file($side."php"))
> include($side."php");
> else
> include("main.php");
>
> Hygge
>
World Online (som jeg benytter) har både php3 og php4 kørende, men for at
aktivere php4-engin´en skal man kalde sine php-filer for php4 - hvilket er
lidt non-standard. Alle andre gældende php-extensions aktiverer
php3-engin´en (herunder .php)
Men det er kun lige præcis include og require der ikke understøtter @ foran,
og derfor genererer en grim parsing-error.
ha det
--
/Henrik
- Personlige online bookmarks - http://www.netwerk.dk
- Rhythm! - Machine! - Music! - http://www.neotek.as
| |
Anders Johannsen (25-05-2001)
| Kommentar Fra : Anders Johannsen |
Dato : 25-05-01 10:29 |
|
Der er mange forslag til løsninger på problemet, men tilsyneladende er alle
enige om at man kan bruge en variabel fra brugeren til at åbne en fil på
filsystemet.
Er der nogen der kan gætte hvorfor det er en _meget_ dårlig ide?
/A
| |
Thor Dreier (25-05-2001)
| Kommentar Fra : Thor Dreier |
Dato : 25-05-01 11:02 |
|
"Anders Johannsen" <anders@ignition.dk> skrev i en meddelelse
news:9el8lj$6ov$1@news.inet.tele.dk...
> Er der nogen der kan gætte hvorfor det er en _meget_ dårlig ide?
Sikkerhedshul!!!
Hva' så med denne her der checker lidt mere
if( is_file("/dir/hvor/include/filer/ligger/$side.php") &&
eregi("^[_a-z0-9-]+$",$side) )
include("/dir/hvor/include/filer/ligger/$side.php");
else
include("/dir/hvor/include/filer/ligger/main.php");
Så kan den ikke hente filer andre steder på systemet (skulle jeg da
mene)
| |
Anders Johannsen (25-05-2001)
| Kommentar Fra : Anders Johannsen |
Dato : 25-05-01 11:27 |
|
> Sikkerhedshul!!!
> Hva' så med denne her der checker lidt mere
Det er en bedre løsning, og jeg kan ikke lige se nogen alvorlige
sikkerhedsbrister i den.
Det sikkerhedsmæssigt optimale[tm] ville være at lave en switch som
inkluderer de relevante filer, som foreslået andetsteds i tråden.
/A
| |
Thor Dreier (25-05-2001)
| Kommentar Fra : Thor Dreier |
Dato : 25-05-01 11:46 |
|
"Anders Johannsen" <anders@ignition.dk> skrev i en meddelelse
news:9elc1v$j9p$1@news.inet.tele.dk...
> Det sikkerhedsmæssigt optimale[tm] ville være at lave en switch som
> inkluderer de relevante filer, som foreslået andetsteds i tråden.
Yæb, men så skulle man altid huske også og ændre i denne fil.
--
http://dreier.nu http://www.leninisme.org http://www.wildjumpers.com
- Med denne udtalelse repræsenterer jeg på ingen måde mig selv!
- Det er bedre at være destruktiv på en konstruktiv måde,
end at være konstruktiv på en destruktiv måde.
| |
Martin Højriis Krist~ (25-05-2001)
| Kommentar Fra : Martin Højriis Krist~ |
Dato : 25-05-01 12:10 |
|
"Anders Johannsen" <anders@ignition.dk> skrev i en meddelelse
news:9elc1v$j9p$1@news.inet.tele.dk...
> Det sikkerhedsmæssigt optimale[tm] ville være at lave en switch som
> inkluderer de relevante filer, som foreslået andetsteds i tråden.
Jeg har noget tilsvarende, hvor man til dels specifecerer filen direkte.
Det foregå lign.
lala.php3?type=slam
filen includer så:
/home/httpd/html/$type/enbestemtfil.html, dvs
/home/httpd/html/slam/enbestemtfil.html
Sikkerhedshul?
--
Med Venlig Hilsen
Martin Højriis Kristensen
Svar bedes baseret på RFC1855
Jeg repræsenterer med denne udtalelse mig selv og ikke TDC Internet
| |
Thor Dreier (25-05-2001)
| Kommentar Fra : Thor Dreier |
Dato : 25-05-01 12:34 |
|
"Martin Højriis Kristensen" <hoejriis@SLETDETTEiname.com> skrev i en
meddelelse news:9eleh5$s6e$1@news.inet.tele.dk...
> filen includer så:
> /home/httpd/html/$type/enbestemtfil.html, dvs
> /home/httpd/html/slam/enbestemtfil.html
>
> Sikkerhedshul?
Ved at lade $type="../.." (eller noget i den stil) kan man få fat i
filer der hedder enbestemtfil.html på hele systemet. Jeg ved ikke om
dette kan betegnes som et sikkerhedshul.
| |
Anders Johannsen (25-05-2001)
| Kommentar Fra : Anders Johannsen |
Dato : 25-05-01 12:37 |
|
> Ved at lade $type="../.." (eller noget i den stil) kan man få fat i
> filer der hedder enbestemtfil.html på hele systemet. Jeg ved ikke om
> dette kan betegnes som et sikkerhedshul.
At inkludere filer på brugerens foranledning er _altid_ et sikkerhedshul.
/A
| |
Thor Dreier (25-05-2001)
| Kommentar Fra : Thor Dreier |
Dato : 25-05-01 12:55 |
|
"Anders Johannsen" <anders@ignition.dk> skrev i en meddelelse
news:9elg54$4o9$1@news.inet.tele.dk...
> At inkludere filer på brugerens foranledning er _altid_ et
sikkerhedshul.
Det ville faktisk være bedst hvis man trak netværkskablet ud af
serveren. Derved ville man formindske antallet af sikkerhedshuller
radikalt.
Hygge
| |
Anders Johannsen (25-05-2001)
| Kommentar Fra : Anders Johannsen |
Dato : 25-05-01 13:08 |
|
> Det ville faktisk være bedst hvis man trak netværkskablet ud af
> serveren. Derved ville man formindske antallet af sikkerhedshuller
> radikalt.
Det skader nu heller ikke decideret at tænke sig lidt om når man udfører
kode baseret på usikre data (dvs. brugerinput)
/A
| |
Henrik Jensen (25-05-2001)
| Kommentar Fra : Henrik Jensen |
Dato : 25-05-01 14:07 |
|
Anders Johannsen <anders@ignition.dk> wrote in message
news:9elg54$4o9$1@news.inet.tele.dk...
> > Ved at lade $type="../.." (eller noget i den stil) kan man få fat i
> > filer der hedder enbestemtfil.html på hele systemet. Jeg ved ikke om
> > dette kan betegnes som et sikkerhedshul.
>
> At inkludere filer på brugerens foranledning er _altid_ et sikkerhedshul.
>
> /A
I mit eget tilfælde ligger der i det aktuelle dir kun filer, der ikke udgør
en sikkerhedsrisiko (så vidt jeg kan se...).
Når man siger der er et sikkerhedshul, så er det vel fordi man er bange for
at brugeren begynder at includ´e alverdens filer..?
Så er det jo bare et spørgsmål om at undgå at eventuelle 'farlige' filer kan
inkluderes - f.ex. ved at forholde sig specifikt til disse... sku man tro..?
--
/Henrik
- Personlige online bookmarks - http://www.netwerk.dk
- Rhythm! - Machine! - Music! - http://www.neotek.as
| |
Christian Laursen (25-05-2001)
| Kommentar Fra : Christian Laursen |
Dato : 25-05-01 14:15 |
|
"Henrik Jensen" <hj@netwerk.dk> writes:
> Når man siger der er et sikkerhedshul, så er det vel fordi man er bange for
> at brugeren begynder at includ´e alverdens filer..?
> Så er det jo bare et spørgsmål om at undgå at eventuelle 'farlige' filer kan
> inkluderes - f.ex. ved at forholde sig specifikt til disse... sku man tro..?
Nej, en blacklist er en markant dårligere løsning end en whitelist.
--
Med venlig hilsen
Christian Laursen
| |
Thomas Jensen - pil.~ (25-05-2001)
| Kommentar Fra : Thomas Jensen - pil.~ |
Dato : 25-05-01 14:18 |
|
On 25 May 2001 15:14:43 +0200, Christian Laursen <christian@pil.dk>
wrote:
>> Når man siger der er et sikkerhedshul, så er det vel fordi man er bange for
>> at brugeren begynder at includ´e alverdens filer..?
>> Så er det jo bare et spørgsmål om at undgå at eventuelle 'farlige' filer kan
>> inkluderes - f.ex. ved at forholde sig specifikt til disse... sku man tro..?
>
>Nej, en blacklist er en markant dårligere løsning end en whitelist.
ja, vel naermest en grundregel i al sikkerhedssnak.
--
vh
Thomas Jensen, http://pil.dk/
| |
Thomas L. Kjeldsen (25-05-2001)
| Kommentar Fra : Thomas L. Kjeldsen |
Dato : 25-05-01 14:32 |
|
Thomas Jensen - pil.dk wrote:
>>Nej, en blacklist er en markant dårligere løsning end en whitelist.
> ja, vel naermest en grundregel i al sikkerhedssnak.
Er I fulde? Jeg mener - så enige I er...
/tlk
| |
Henrik Jensen (25-05-2001)
| Kommentar Fra : Henrik Jensen |
Dato : 25-05-01 15:09 |
|
Thomas Jensen - pil.dk <tj@dev.null> wrote in message
news:3b0e5b7e.4377777@news.inet.tele.dk...
> On 25 May 2001 15:14:43 +0200, Christian Laursen <christian@pil.dk>
> wrote:
>
> >> Når man siger der er et sikkerhedshul, så er det vel fordi man er bange
for
> >> at brugeren begynder at includ´e alverdens filer..?
> >> Så er det jo bare et spørgsmål om at undgå at eventuelle 'farlige'
filer kan
> >> inkluderes - f.ex. ved at forholde sig specifikt til disse... sku man
tro..?
> >
> >Nej, en blacklist er en markant dårligere løsning end en whitelist.
>
> ja, vel naermest en grundregel i al sikkerhedssnak.
>
Det er jeg normalt også helt enig i, men hvis der nu ikke *er* nogen
'farlige' filer i det pågældende dir - er man så ikke udmærket sikret?
--
/Henrik
- Personlige online bookmarks - http://www.netwerk.dk
- Rhythm! - Machine! - Music! - http://www.neotek.as
| |
Martin Højriis Krist~ (25-05-2001)
| Kommentar Fra : Martin Højriis Krist~ |
Dato : 25-05-01 12:37 |
|
"Thor Dreier" <news@cheater.dk> skrev i en meddelelse
news:PprP6.430$rB3.19037@news010.worldonline.dk...
> > /home/httpd/html/$type/enbestemtfil.html
> > Sikkerhedshul?
> Ved at lade $type="../.." (eller noget i den stil) kan man få fat i
> filer der hedder enbestemtfil.html på hele systemet. Jeg ved ikke om
> dette kan betegnes som et sikkerhedshul.
Ja, det var også min tanke. Man kan altså ikke få php til at droppe
/enbestemtfil.html på en snedig vis?
--
Med Venlig Hilsen
Martin Højriis Kristensen
Svar bedes baseret på RFC1855
Jeg repræsenterer med denne udtalelse mig selv og ikke TDC Internet
| |
Nezar Nielsen (25-05-2001)
| Kommentar Fra : Nezar Nielsen |
Dato : 25-05-01 16:13 |
|
"Thor Dreier" <news@cheater.dk> skrev i en meddelelse
news:PprP6.430$rB3.19037@news010.worldonline.dk...
>
> Ved at lade $type="../.." (eller noget i den stil) kan man få fat i
> filer der hedder enbestemtfil.html på hele systemet. Jeg ved ikke om
> dette kan betegnes som et sikkerhedshul.
tjoeh, hvis man sender den som f.eks.
.../../../../../etc/passwd\0
så er det så vidt jeg husker /etc/passwd man får ud..eftersom
nultermineringen gør sig gældende.
--
Mvh. Nezar Nielsen
http://fez.dk/
| |
Henrik Jensen (25-05-2001)
| Kommentar Fra : Henrik Jensen |
Dato : 25-05-01 22:11 |
|
Nezar Nielsen <tumpen@fez.dk> wrote in message
news:3b0e765b$0$9992$d40e179e@nntp01.dk.telia.net...
> "Thor Dreier" <news@cheater.dk> skrev i en meddelelse
> news:PprP6.430$rB3.19037@news010.worldonline.dk...
> >
> > Ved at lade $type="../.." (eller noget i den stil) kan man få fat i
> > filer der hedder enbestemtfil.html på hele systemet. Jeg ved ikke om
> > dette kan betegnes som et sikkerhedshul.
>
> tjoeh, hvis man sender den som f.eks.
>
> ../../../../../etc/passwd\0
>
> så er det så vidt jeg husker /etc/passwd man får ud..eftersom
> nultermineringen gør sig gældende.
>
jammen.... man sætter vel alt uden for det ønskede 'webscope' til Options
None i sin httpd.conf fil - så kan det vel ikke lade sig gøre at lave den
slags..?
Noget a la:
<Directory />
Options None
[noget mere...]
</Directory>
--
/Henrik
- Personlige online bookmarks - http://www.netwerk.dk
- Rhythm! - Machine! - Music! - http://www.neotek.as
| |
Christian Joergensen (26-05-2001)
| Kommentar Fra : Christian Joergensen |
Dato : 26-05-01 09:15 |
|
Henrik Jensen <hj@netwerk.dk> wrote:
>> ../../../../../etc/passwd\0
>>
>> så er det så vidt jeg husker /etc/passwd man får ud..eftersom
>> nultermineringen gør sig gældende.
>>
>
> jammen.... man sætter vel alt uden for det ønskede 'webscope' til Options
> None i sin httpd.conf fil - så kan det vel ikke lade sig gøre at lave den
> slags..?
Det har jo ikke noget at gøre med hvor php kan inkludere filer fra.
--
Christian Jørgensen | "Ford, you're turning into a penguin"
http://www.razor.dk | "Stop it"
| |
Henrik Jensen (26-05-2001)
| Kommentar Fra : Henrik Jensen |
Dato : 26-05-01 09:36 |
|
Christian Joergensen wrote:
>
> Henrik Jensen <hj@netwerk.dk> wrote:
>
> >> ../../../../../etc/passwd\0
> >>
> >> så er det så vidt jeg husker /etc/passwd man får ud..eftersom
> >> nultermineringen gør sig gældende.
> >>
> >
> > jammen.... man sætter vel alt uden for det ønskede 'webscope' til Options
> > None i sin httpd.conf fil - så kan det vel ikke lade sig gøre at lave den
> > slags..?
>
> Det har jo ikke noget at gøre med hvor php kan inkludere filer fra.
>
Ups - nårhnej... det er der selvfølgelig noget om.
/henrik
| |
Christian Iversen (26-05-2001)
| Kommentar Fra : Christian Iversen |
Dato : 26-05-01 11:24 |
|
> > Det har jo ikke noget at gøre med hvor php kan inkludere filer fra.
> >
>
> Ups - nårhnej... det er der selvfølgelig noget om.
>
Og det er netop NU at den slags er rart at opdage...
--
Regards, Christian Iversen [FIDUSO]
-----BEGIN GEEK CODE BLOCK-----
d- s a-- C++++ U P L E- W+++ N+++ o K- w++++ O! M-- V? PS++
PE++ Y+ PGP t+ 5? X++++ R tv- b++ DI+++ D+ G++ e>+++++ h!
------END GEEK CODE BLOCK------
| |
Henrik Jensen (26-05-2001)
| Kommentar Fra : Henrik Jensen |
Dato : 26-05-01 12:05 |
|
Christian Iversen wrote:
>
> > > Det har jo ikke noget at gøre med hvor php kan inkludere filer fra.
> > >
> >
> > Ups - nårhnej... det er der selvfølgelig noget om.
> >
>
> Og det er netop NU at den slags er rart at opdage...
>
Jo, tak!
mit script includer i det mindste kun .php filer:
<? include $incfile.".php" ?>
Så password filer og den slags kommer heldigvis ikke frem... men jeg kan
godt se at det ikke holder helt (godt det ligger på et webhotel
vh
Henrik
| |
Thor Dreier (25-05-2001)
| Kommentar Fra : Thor Dreier |
Dato : 25-05-01 22:30 |
|
"Nezar Nielsen" <tumpen@fez.dk> skrev i en meddelelse
news:3b0e765b$0$9992$d40e179e@nntp01.dk.telia.net...
> tjoeh, hvis man sender den som f.eks.
> ../../../../../etc/passwd\0
> så er det så vidt jeg husker /etc/passwd man får ud..eftersom
> nultermineringen gør sig gældende.
Så er $type = "../../../../../etc/passwd", men
"/home/httpd/html/$type/enbestemtfil.html" vil stadig indeholde
"/home/httpd/html/../../../../../etc/passwd/enbestemtfil.html" (dvs
"/etc/passwd/enbestemtfil.html"), ikke "/etc/passwd" - også selv om du
nullterminerer $type.
--
Onkel morfar er ikke julemand om søndagen, men hesten er gul i
højtaleren.
| |
Mickey (25-05-2001)
| Kommentar Fra : Mickey |
Dato : 25-05-01 14:39 |
|
"Thor Dreier" <news@cheater.dk> skrev i en meddelelse
news:d4qP6.62$rB3.8012@news010.worldonline.dk...
> "Anders Johannsen" <anders@ignition.dk> skrev i en meddelelse
> news:9el8lj$6ov$1@news.inet.tele.dk...
> > Er der nogen der kan gætte hvorfor det er en _meget_ dårlig ide?
>
> Sikkerhedshul!!!
> Hva' så med denne her der checker lidt mere
>
> if( is_file("/dir/hvor/include/filer/ligger/$side.php") &&
> eregi("^[_a-z0-9-]+$",$side) )
> include("/dir/hvor/include/filer/ligger/$side.php");
> else
> include("/dir/hvor/include/filer/ligger/main.php");
jeg kører enten med et
include "$file.inc";
eller med en eregi_replace der fjerner /'er og punktummer i inputtet, så
skulle den der index.php?file=../../../etc/passwd være elimineret
--
|-|$235-|)k - Mickey
http://susie.dk - mickey(at)susie.dk
tilføj dit link: http://susie.dk/en/links
hjælp mig med min eksamen: http://susie.dk/alkohol/afstemning
| |
|
|