09. juni 2004 - 12:09Der er
17 kommentarer og 1 løsning
include med værdier
Hej eksperter.
Jeg har en ret stor kode, i min index.php, med forskellige div tags.
Hvis noget går galt skal denne kode køres:
$sitename1 = $_SERVER["HTTP_REFERER"] .'taxa/index.php?kuponnr=0'; include "$sitename1"; print "<script language='javascript'>"; $msg = "alert('Du skal skrive de første 7 cifre på kuponnummert')"; print $msg;
Det virker også fint i min php expert editor, men så snart jeg kopier den ud min webserver, får jeg bare index.php siden frem som om jeg bare skrev include "index.php";
er der en anden måde man kan skrive ovenstående på?
Måden vi mødes på har ændret sig. Så hvorfor ser vores mødelokaler stadig ens ud?
Slettet bruger
09. juni 2004 - 12:16#1
Du kan ikke include med get værdier som du prøver. Prøv sådan her:
$sitename1 = $_SERVER["HTTP_REFERER"] .'taxa/index.php'; $kuponnr = 0; include "$sitename1"; print "<script language='javascript'>"; $msg = "alert('Du skal skrive de første 7 cifre på kuponnummert')"; print $msg;
du inkludere noget som brugeren kan bestemme via referen han sender med. Dvs at han faktisk kan inkluderer kode i dit program og lave mange uheldige ting.
Hvad er det du vil lave? Inkludere en fil fra dit eget domæne?
"det er noget internt! så det gør ik noget det ik er super sikkert!!!"
Problemet er bare, at hvis du kigger på min side .. og så går derefter over på din egen, så vil din kode forsøge at hente en fil fra min side.. Og så kan jeg snildt lægge en source op der sletter alle de filer den kan komme i nærheden af.. Og det vil se ud som om det er dit script (det er det jo egentlig også).
Nogle disabler så man ikke kan bruge include("http://") da mange ikke kan finde ud af at bruge det og de der kan ofte bruger den forkert (jeg har aldrig haft behov for det).
Med nok kendskab kan jeg da sagents linke til den interne side (som virker for den bruger der har adgang til begge, fx dmg). Det er måske omstændigt, men det er da stadig et sikkerhedsproblem.
.. og jeg håber at dmg kender sine bruger så godt at de aldrig kan finde på at smadre det for ham. Man bør aldrig stole på brugeren. Et andet problem :)
..men når det er sagt, så forstår jeg ikke rigtig hvad han prøver at opnå med referer. Hvis det virker, så vil det pludselig ikke virke hvis man disabler referer eller taster url'en direkte ind. Gad vide om det er $_SERVER["SERVER_NAME"] han mener?
.. selvom han bør inkluder direkte via filsystemet :)
referrer bliver sommetider fjernet, ja. du kan i beskrevne situation sende ham fra din side til hans, hvis han sidder indenfor, og hans lokalnet er koblet til Internettet (det står der jo ikke noget om ....). Jeg korrigere til at der ikke er noget stort sikkerhedsproblem ;)
Og ja, det er bestemt ikke en god løsning. Men det må spørgeren jo selv tage stilling til.
"Jeg korrigere til at der ikke er noget stort sikkerhedsproblem ;)"
Så du accepterer det som et problem nu? :).
Jeg tror blot vi har forskelligt syn på hvornår noget er et sikkerhedsproblem, men egentligt er enige. Så lad os lade det ligge ved det, før vi får skræmt dmg :)
hehe... jeg er ikke spooked helt væk endnu :-) meget interessant at høre om... Jeg er lige ved at teste nogen af de ting i har skrevet, så jeg må lige vende tilbage...
Som ihvertfald dennismp ved, er jeg ikke verdens hurtigste / skarpeste person til det her php ting...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.