mboost-dp1

PHP: Er dette sikkert nok til en admin side?


Gå til bund
Gravatar #1 - Jace
2. jul. 2008 11:17
Er dette en sikker nok måde at beskytte en admin side på?

Med andre ord, kan man få vist indholdet, uden at kende passwordet?

<?php
// Password variable
$password = $_GET['password'];

// Password check
if(($password == 'heste573')) {

// Show content
echo "this is the secret stuff";

// If incorrect password show login-box
} ELSE {
?>

<form action="login.php" method="get">
<input type="password" name="password" size="30">
<input type="submit" value="submit">
</form>

<?php
}
?>
Gravatar #2 - myplacedk
2. jul. 2008 11:32
1) Når du bruger systemet, vil dit kodeord stå i url'en. Dvs. du kan ikke bruge det fra en offentlig computer. Og hvis du er uheldig nok, vil siden blive indexeret i en søgemaskine med "autologin".

2) Koden står som plaintext i din kildekode. Skulle der ske noget en dag (fx. hvis PHP midlertidigt er slå fra på serveren) så andre kan se kildekoden, er dit kodeord sluppet ud.
Gravatar #3 - myplacedk
2. jul. 2008 11:35
Og selvfølgelig løsningerne:

1) Brug POST i stedet for GET

2) Gem en md5sum af dit kodeord (plus salt) i din kildekode, og sammenlign med det:

if (md5sum("iflebiflebafle".$password) == "9611909e6a03787949fcf1950f7900d9") {
// Secret stuff


Så er du kommet et godt stykke videre.
Gravatar #4 - Jace
2. jul. 2008 11:38
Okay, tak for rådene.

Men som det er nu hvor php ikke er slået fra og siden ikke er indekseret, så er det ikke muligt at se det hemmelige indhold?
Gravatar #5 - myplacedk
2. jul. 2008 11:48
Lige nu og her, skulle koden virke. Men der skal meget lidt til før den er brudt, og der skal så lidt til for at forbedre det.
Gravatar #6 - Jace
2. jul. 2008 12:08
Okay, jeg fixer det lige :)
Gå til top

Opret dig som bruger i dag

Det er gratis, og du binder dig ikke til noget.

Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.

Opret Bruger Login