[php] hoe kan dit nu

Pagina: 1
Acties:
  • 40 views sinds 30-01-2008

  • jvvv
  • Registratie: November 2002
  • Laatst online: 08-05 15:37
Mijn site: www.spam.com

Nu het volgende:
U komt op mijn site, u klikt op enter en uw krijgt

Warning: open_basedir restriction in effect. File is in wrong directory in /usr/local/psa/home/vhosts/juan.be/httpdocs/site.php on line 119

Warning: Failed opening 'news3/news&PHPSESSID=5777a14f5a5f98722856aace72b330e6.php' for inclusion (include_path='.:/usr/local/psa/apache/lib/php') in /usr/local/psa/home/vhosts/juan.be/httpdocs/site.php on line 119

k de site is dus zo opgebouwd uit een page : site.php en daar wordt met een require de page geladen dat opgeroepen wordt in de querystring: dus voor
zever.php te hebben in site.ph neem ik juan.be/site.php?zever
zo dus:
<?
include "$QUERY_STRING.php";
?>

nu dit systeem lukt perfect op alle pages behalve van index.php naar site.php?news3/news

U zult zien als u op de page dan op www.spam.com klikt in de nav-balk laad het ding wel.

Enig idee hoe dit oplossen??


dank

[ Voor 5% gewijzigd door drm op 28-01-2003 22:42 . Reden: niet overbodig spammen, ajb ]


  • chem
  • Registratie: Oktober 2000
  • Laatst online: 04-08 07:59

chem

Reist de wereld rond

ja, na 1x weet ik de URL van je site wel hoor :)

Je ISP gebruikt Safe Mode, zie www.php.net voor meer info. Het komt er op neer (oa.) dat je niet zomaar files kan openen en includen.

Klaar voor een nieuwe uitdaging.


  • jvvv
  • Registratie: November 2002
  • Laatst online: 08-05 15:37
ja ok mor hoe komt ie dan op
Warning: open_basedir restriction in effect. File is in wrong directory in /usr/local/psa/home/vhosts/juan.be/httpdocs/site.php on line 119

Warning: Failed opening 'news3/news&PHPSESSID=5777a14f5a5f98722856aace72b330e6.php' for inclusion (include_path='.:/usr/local/psa/apache/lib/php') in /usr/local/psa/home/vhosts/juan.be/httpdocs/site.php on line 119


PHPSESSID=5777a14f5a5f98722856aace72b330e6 dit duwt ie er even tussen.....

  • supakeen
  • Registratie: December 2000
  • Laatst online: 09-09-2025
jvvv schreef op 28 January 2003 @ 22:36:
ja ok mor hoe komt ie dan op
Warning: open_basedir restriction in effect. File is in wrong directory in /usr/local/psa/home/vhosts/juan.be/httpdocs/site.php on line 119

Warning: Failed opening 'news3/news&PHPSESSID=5777a14f5a5f98722856aace72b330e6.php' for inclusion (include_path='.:/usr/local/psa/apache/lib/php') in /usr/local/psa/home/vhosts/juan.be/httpdocs/site.php on line 119


PHPSESSID=5777a14f5a5f98722856aace72b330e6 dit duwt ie er even tussen.....
File staat dus blijkbaar niet in dezelfde directory :?

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 15:09
Ik zou eens naar drm's PHP tiplist kijken voor je opmerkingen krijgt over het quoten van variablen ;)

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 12:28

Janoz

Moderator Devschuur®

!litemod

Maar je probleem hier is dat de query string niet is wat je denkt dat het is (en als je ff had gekeken dan had je dat ook duidelijk kunnen zien). PHP plakt er namelijk zelf nog een sessieID achter!

Of sloop je sessie gedoe eruit, of haal uit de query string datgene dat je nodig hebt.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • jvvv
  • Registratie: November 2002
  • Laatst online: 08-05 15:37
doe ik er nu

site.php?PAGE=popof

en dan als include
<?
include "$PAGE.php";
?>

zal et ok zijn?

of duwt die et sessie spul er dan terug bij?

[ Voor 26% gewijzigd door jvvv op 28-01-2003 22:40 ]


Verwijderd

Ik zou zeggen, geef gewoon een simpel argument mee (?pagina=tekst), en dan
PHP:
1
require "./".$_GET['pagina'].".php";

edit: je geeft zelf mijn oplossing ook al aan. Let alleen even op het quoten van variabelen

[ Voor 36% gewijzigd door Verwijderd op 28-01-2003 22:41 ]


  • Sybr_E-N
  • Registratie: December 2001
  • Laatst online: 21-08 19:22
Het zal misschien wel werken maar of het ook veilig is? Zou als ik jouw was ff een safty check om heen bouwen.

  • jvvv
  • Registratie: November 2002
  • Laatst online: 08-05 15:37
als ik mag vragen? hoe quoten?

mij pagina zit dus nu in google mor da kind neemt enkel den index mee... zou google zoiets niet kunnen volgen ofzo?

  • jvvv
  • Registratie: November 2002
  • Laatst online: 08-05 15:37
waar zou het onvelig zijn?

want ik ben geen phpguru

[ Voor 35% gewijzigd door jvvv op 28-01-2003 22:44 ]


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Je kunt ook enable_trans_sid oid uitzetten in je configuratie. Scheelt weer.

Verder moet je niet te makkelijk zijn met dit soort constructies. Voor je weet include iemand pagina's die niet geinclude mogen worden. Bouw daar dus wel een check voor in
ik kan me een site herinneren van een user op GoT die daar na herhaald gewaarschuwd te zijn niets aan gedaan heeft, en prompt een "hele aparte homepage" vond op haar site

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • jvvv
  • Registratie: November 2002
  • Laatst online: 08-05 15:37
hoe dan?

edit dat misbruiken ok, maar appart homepage?

[ Voor 76% gewijzigd door jvvv op 28-01-2003 22:46 ]


  • supakeen
  • Registratie: December 2000
  • Laatst online: 09-09-2025
En draait daar dan geen php nieuwer dan 4.2 :?

Dan is het namelijk neem ik aan zo:
[php]
<?php
include(". $_GET["PAGE"] .".php);
?>
[/php
index.php?PAGE=blaat

Roept dus blaat.php aan. Maar echt veilig is het niet want zo kan ik alle files aanroepen die ik maar wil :X

Maak zoiets als dit:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
//Files die mogen:
 $trusted_files = array (
                   'news'
                   'guestbook'
 );

//Check of de aangeroepen file wel trusted is:
 if(in_array($_GET["PAGE"], $trusted_files) {
  //Als dat zo is mag je includen:
  include($_GET["PAGE"] .".php");
 }else{
  //Als het niet zo is doe je zoiets als dit:
  AddIp2Blacklist($_SERVER["REMOTE_ADDR"]);
 }
fouten voorbehouden :X

[ Voor 82% gewijzigd door supakeen op 28-01-2003 22:59 ]


  • jvvv
  • Registratie: November 2002
  • Laatst online: 08-05 15:37
je moet zel dan wel kennen en veel is er niet te pikken.... mor als ik dus in een phpke al die files zet en aan een variable sluit zou het veiliger zijn. Dus

[code]
<?
include (". $_GET["PAGE" .".php);
?>

met dus index.php?1458

en 1458 zou voor zever.php staan.

haalbaar?

  • jvvv
  • Registratie: November 2002
  • Laatst online: 08-05 15:37
zmn schreef op 28 January 2003 @ 22:46:
En draait daar dan geen php nieuwer dan 4.2 :?

Dan is het namelijk neem ik aan zo:
PHP:
1
2
3
<?php
 include(". $_GET["PAGE"] .".php);
?>

index.php?PAGE=blaat

Roept dus blaat.php aan. Maar echt veilig is het niet want zo kan ik alle files aanroepen die ik maar wil :X

Maak zoiets als dit:
PHP:
1
2
3
4
5
6
7
8
9
$trusted_files = array (
                  'news'
                  'guestbook'
);
if(in_array($_GET["PAGE"], $trusted_files) {
 include(". $_GET["PAGE"] .".php");
}else{
 AddIp2Blacklist($_SERVER["REMOTE_ADDR"]);
}
fouten voorbehouden :X
blacklist ni wa overdreven?

  • supakeen
  • Registratie: December 2000
  • Laatst online: 09-09-2025
jvvv schreef op 28 januari 2003 @ 22:52:
je moet zel dan wel kennen en veel is er niet te pikken.... mor als ik dus in een phpke al die files zet en aan een variable sluit zou het veiliger zijn. Dus

[code]
<?
include (". $_GET["PAGE" .".php);
?>

met dus index.php?1458

en 1458 zou voor zever.php staan.

haalbaar?
Nee lees mijn edit je gooit de waarden die wel mogen in een array en je kijkt of $_GET["PAGE"] wel mag en als het niet mag dan ehm kies zelf maar :P

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Ja een blacklist is overdreven, 't gaat om het idee.

En die edit knop zit er niet voor niets, jvvv

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Sybr_E-N
  • Registratie: December 2001
  • Laatst online: 21-08 19:22
blacklist ni wa overdreven?
Security voor je website is nooit overdreven. Jij wilt toch niet je iemand jouw website gaat zitten hacken?

Voorkomen is beter dan genezen!

Edit: was niet gericht op die blacklist maar op de $trusted_files.

[ Voor 16% gewijzigd door Sybr_E-N op 28-01-2003 23:04 ]


  • supakeen
  • Registratie: December 2000
  • Laatst online: 09-09-2025
Sybr_E-N schreef op 28 January 2003 @ 22:56:
[...]


Security voor je website is nooit overdreven. Jij wilt toch niet je iemand jouw website gaat zitten hacken?

Voorkomen is beter dan genezen!
OMG Ik vul voor de gein een andere waarde bovenin de url in "leuk" en dan mag ik meteen niet meer komen, dat gaat wel heel ver, zeker als je al zeker maakt dat er niks fout kan gaan :X

Verwijderd

jvvv zou je a.u.b. de moeite kunnen nemen om wat meer tijd aan je typwerk te besteden, want eerlijk gezegd zijn je posts niet te lezen zo :X

Een whitelist mag misschien wat overdreven lijken, maar naar mijn mening is dat wel een voorbeeld van juist programmeren. Ook al kunnen er alleen php-files ingesloten worden en dus niet alle bestanden (wat hier beweerd wordt), dan nog is het niet wenselijk dat men zomaar van buitenaf het eea kan includen wat misschien helemaal niet de bedoeling is.

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

ach toch irritant als er perongeluk een verkeerd linkje op je site staat, en daardoor komen opeens al je allervriendelijkste bezoekers in je blacklist te staan ;)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • jvvv
  • Registratie: November 2002
  • Laatst online: 08-05 15:37
kzal et morge es testen

momenteel de luie en 'onveilige' oplossing erop


dank

  • supakeen
  • Registratie: December 2000
  • Laatst online: 09-09-2025
jvvv schreef op 28 January 2003 @ 22:58:
kzal et morge es testen

momenteel de luie en 'onveilige' oplossing erop


dank
Dan ga ik nu proberen wat ik kan, ik schrijf namelijk een prachtig voorbeeld voor je :X

Nog een keer:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?
//Kijken of page niet leeg is.
 if(!isset($_GET['PAGE']) {
  $page = "news";
 }else{
  $page = $_GET['PAGE'];
 }

//Files die mogen: 
 $trusted_files = array ( 
                   'news' 
                   'guestbook' 
 ); 

//Check of de aangeroepen file wel trusted is: 
 if(in_array($page, $trusted_files) { 
  //Als dat zo is mag je includen: 
  include($page .".php"); 
 }else{ 
  //Als het niet zo is doe je zoiets als dit: 
  AddIp2Blacklist($_SERVER['REMOTE_ADDR']); 
 }
?> 

Is het nou echt zoveel werk om dat erin te gooien :X

[ Voor 23% gewijzigd door Glimi op 28-01-2003 23:09 ]


Verwijderd

offtopic:
Waarom praat iedereen hier over een blacklist? Is toch echt een whitelist geloof ik hoor :)

[ Voor 11% gewijzigd door Verwijderd op 28-01-2003 23:01 ]


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

offtopic:
euhm... de mensen die je (voortaan) niet (meer) toe wilt laten zet je toch op een blacklist :? of snap ik nou iets verkeerd :D

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • supakeen
  • Registratie: December 2000
  • Laatst online: 09-09-2025
drm schreef op 28 januari 2003 @ 23:02:
offtopic:
euhm... de mensen die je (voortaan) niet (meer) toe wilt laten zet je toch op een blacklist :? of snap ik nou iets verkeerd :D
offtopic:
Nu ben je dus gefopcode

-of nelske bedoelt dat er zoveel mensen zijn die dit gaat misbruiken dat iedereen die het goed doet op de lijst mag :>

Verwijderd

drm schreef op 28 januari 2003 @ 23:02:
offtopic:
euhm... de mensen die je (voortaan) niet (meer) toe wilt laten zet je toch op een blacklist :? of snap ik nou iets verkeerd :D

Edit aarghh, ik zit niet op te letten :P

Bovenstaande is een blacklist ja $trusted_files is een whitelist ;)

  • jvvv
  • Registratie: November 2002
  • Laatst online: 08-05 15:37
zmn schreef op 28 januari 2003 @ 23:00:

[...]

Dan ga ik nu proberen wat ik kan, ik schrijf namelijk een prachtig voorbeeld voor je :X

Nog een keer:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?
//Kijken of page niet leeg is.
 if(!isset($_GET['PAGE']) {
  $page = "news";
 }else{
  $page = $_GET['PAGE'];
 }

//Files die mogen: 
 $trusted_files = array ( 
                   'news' 
                   'guestbook' 
 ); 

//Check of de aangeroepen file wel trusted is: 
 if(in_array($page, $trusted_files) { 
  //Als dat zo is mag je includen: 
  include($page .".php"); 
 }else{ 
  //Als het niet zo is doe je zoiets als dit: 
  AddIp2Blacklist($_SERVER['REMOTE_ADDR']); 
 }
?> 

Is het nou echt zoveel werk om dat erin te gooien :X
op zich ni mor ik weet begot ni al die files vanbuiten... da is gewoon wa werk das al

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 24-08 23:08
Kun je de mensen die je proberen te helpen tenminste enig respect tonen door fatsoenlijk Nederlands te typen? De nietszeggende topic titel zie ik dan nog over het hoofd.

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

mja...

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz

Pagina: 1

Dit topic is gesloten.