Knebba Skrevet 29. mai 2006 Skrevet 29. mai 2006 Har laget meg en innloggingssak, og lurer på hvor sikker den er. Hva burde legges til av sjekker? Har brukt en kodesnutt fra http://no2.php.net/manual/en/function.mysq...cape-string.php for å hindre sql-injections. <?php session_start(); $brukernavn = $_POST['brukernavn']; $passord = md5($_POST['passord']); function quote_smart($value) { // Stripslashes if (get_magic_quotes_gpc()) { $value = stripslashes($value); } // Quote if not a number or a numeric string if (!is_numeric($value)) { $value = "'" . mysql_real_escape_string($value) . "'"; } return $value; } quote_smart($brukernavn); quote_smart($passord); $sql = " SELECT `brukernavn`,`passord`,`level` FROM `brukersys` WHERE `brukernavn` = '$brukernavn' AND `passord` = '$passord'"; $res = mysql_query($sql) or die(mysql_error()); // Sjekker om du er logget inn eller ikke if(mysql_num_rows($res) !== 0) { $row = mysql_fetch_object($res); $level = $row->level; $_SESSION['loggetinn'] == ja; $_SESSION['brukernavn'] = $brukernavn; $_SESSION['level'] = $level; header("location:../index.php?action=loggetinn"); } else { header("location:../index.php?action=brukerpass"); } ?>
Peter Skrevet 29. mai 2006 Skrevet 29. mai 2006 (endret) du kan jo sjekke: if($password != mysql_real_escape_string($passord)) //--> ikke godkjent, brukeren bruker spesialtegn //(et av disse: \x00, \n, \r, \, ', " and \x1a ) Endret 29. mai 2006 av Nazgul
Terrasque Skrevet 30. mai 2006 Skrevet 30. mai 2006 quote_smart($brukernavn); quote_smart($passord); burde ikke det være $brukernavn = quote_smart($brukernavn); $passord = quote_smart($passord);
Ernie Skrevet 30. mai 2006 Skrevet 30. mai 2006 quote_smart($brukernavn);quote_smart($passord); burde ikke det være $brukernavn = quote_smart($brukernavn); $passord = quote_smart($passord); 6208646[/snapback] Kan nok med fordel være slik ja.
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå