Sjark Skrevet 12. oktober 2006 Del Skrevet 12. oktober 2006 Hey, har laget et lite loginn script å lurer på hvor sikkert det er evt. hvordan andre kan komme inn uten brukernavn/passord <?php session_start(); if (!empty($_POST['username']) && !empty($_POST['password'])) { if (($_POST['username'] == "brukernavn") && (md5($_POST['password']) == "md5 hash av passord")) { $_SESSION["access"] = "Admin"; header("Location: menu.php"); } } else { echo "Feil Brukernavn eller Passord! Klikk <a href='login.form.php'>her</a> for å prøve igjen!"; } ?> og <?php if ($_SESSION["access"] !== "Admin") { echo "Feil brukernavn eller passord, klikk <a href='login.form.php'>her</a> for å prøve igjen"; } else { masse kode } ?> på alle sidene, er det da mulig og komme seg inn? Lenke til kommentar
Equerm Skrevet 13. oktober 2006 Del Skrevet 13. oktober 2006 Ingenting er 100 % sikkert egentlig, det er fullt mulig å opprette en session som er lik din session med et annet script (men da må man finne ut hva den heter da, og det er kanskje ikke så enkelt..?) Dessuten er md5 veldig enkelt å cracke Lenke til kommentar
MC2 Skrevet 13. oktober 2006 Del Skrevet 13. oktober 2006 Dessuten er md5 veldig enkelt å cracke 7059942[/snapback] Hvordan? Det går an å bruteforce en md5 hash, men det går på alle. Og hvis du tenker på rainbowtables kan man fikse det med å legge til et salt. Lenke til kommentar
Equerm Skrevet 13. oktober 2006 Del Skrevet 13. oktober 2006 Dessuten er md5 veldig enkelt å cracke 7059942[/snapback] Hvordan? Det går an å bruteforce en md5 hash, men det går på alle. Og hvis du tenker på rainbowtables kan man fikse det med å legge til et salt. 7060612[/snapback] Om man legger til et salt så er det vanskeligere ja, men uten salting så tar det 5 sekunder med rainbowtables Nå hadde ikke han salting i scriptet sitt da Lenke til kommentar
MC2 Skrevet 13. oktober 2006 Del Skrevet 13. oktober 2006 ok, nå er jeg veldig prkete her: det heter da ikke 'cracking' Lasso, se litt i denne tråden: https://www.diskusjon.no/index.php?showtopic=548329&hl= Lenke til kommentar
Peter Skrevet 13. oktober 2006 Del Skrevet 13. oktober 2006 One thing to note in comparison with == When we make a comparison with == php automaticly converts strings to integers when either side of the comparison is an integer, f.e.: <? $value = 0; if($value == "submit") { echo "Let's submit"; } ?> Above would be succesful, since "submit" is converted to an integer (eq 0) and the equation is would return true; (that's why (1 == "1submit") would also return true) That's why we should use strcmp or === (checks type also), for string comparisons. So my conclusion is that when comparing string, you'd better not make use of == (use strmp or === instead). For integer comparisons the == equation can be usefull, since our values will always be casted to an integer (1 == "1" returns true). Lenke til kommentar
BigJackW Skrevet 14. oktober 2006 Del Skrevet 14. oktober 2006 Du må sjekke databasen HVER gang når noen har logga inn, ikke bare sessions. Lenke til kommentar
olemedkrutt Skrevet 14. oktober 2006 Del Skrevet 14. oktober 2006 Utifra disse to scriptene kan ikke greiene hackes, men de kan jo hackes via andre scripts eller noe annet. Lenke til kommentar
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å