Kom ihåg mig?

sha1 och salt

 
Ämnesverktyg Visningsalternativ
Gammal 2009-10-09, 14:00 #1
Johan_S Johan_S är inte uppkopplad
Medlem
 
Reg.datum: Aug 2006
Inlägg: 99
Johan_S Johan_S är inte uppkopplad
Medlem
 
Reg.datum: Aug 2006
Inlägg: 99
Läsning: http://us3.php.net/manual/en/function.sha1.php

Testa att köra salt och kontrollera manuellt om salten stämmer, kan vara små saker som att du inte har tillräcklig längd på fältet i databasen som strular.

Lite exempel som jag tror ska vara duliga (otestat):

//Definera salt
$salt = "abcdefhijklmn";

//Ta emot formulärdata
$user = mysql_real_escape_string($_POST['username']);
$pass = mysql_real_escape_string(($_POST['pass']);

//Salta lösen
$pass_salted = sha1($salt.$pass));


$result_getUser = mysql_query("SELECT password,active FROM members WHERE username='$user' AND password = '$pass_salted'");

if (mysql_num_rows($result_getUser) == 0){

//Fel lösen eller ingen användare
exit;

} else {

//Sätt session för inloggning eller visa hemlig sida

}
Johan_S är inte uppkopplad   Svara med citatSvara med citat
Gammal 2009-10-09, 14:23 #2
AnOnYmUs AnOnYmUs är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Feb 2004
Inlägg: 868
AnOnYmUs AnOnYmUs är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Feb 2004
Inlägg: 868
Citat:
Ursprungligen postat av Johan_S Visa inlägg
Läsning: http://us3.php.net/manual/en/function.sha1.php

Testa att köra salt och kontrollera manuellt om salten stämmer, kan vara små saker som att du inte har tillräcklig längd på fältet i databasen som strular.

Lite exempel som jag tror ska vara duliga (otestat):

//Definera salt
$salt = "abcdefhijklmn";

//Ta emot formulärdata
$user = mysql_real_escape_string($_POST['username']);
$pass = mysql_real_escape_string(($_POST['pass']);

//Salta lösen
$pass_salted = sha1($salt.$pass));


$result_getUser = mysql_query("SELECT password,active FROM members WHERE username='$user' AND password = '$pass_salted'");

if (mysql_num_rows($result_getUser) == 0){

//Fel lösen eller ingen användare
exit;

} else {

//Sätt session för inloggning eller visa hemlig sida

}
Du hade helt rätt, varchar(12) <- där hade vi ett stort problem
AnOnYmUs är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-10-09, 14:27 #3
Johan_S Johan_S är inte uppkopplad
Medlem
 
Reg.datum: Aug 2006
Inlägg: 99
Johan_S Johan_S är inte uppkopplad
Medlem
 
Reg.datum: Aug 2006
Inlägg: 99
Citat:
Ursprungligen postat av AnOnYmUs Visa inlägg
Du hade helt rätt, varchar(12) <- där hade vi ett stort problem
Perfekt, då kan man ta helg snart med hedern ibehåll.
Johan_S är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-10-09, 17:01 #4
tartareandesire tartareandesire är inte uppkopplad
Supermoderator
 
Reg.datum: Jan 2004
Inlägg: 11 585
tartareandesire tartareandesire är inte uppkopplad
Supermoderator
 
Reg.datum: Jan 2004
Inlägg: 11 585
Citat:
Ursprungligen postat av AnOnYmUs Visa inlägg
Du hade helt rätt, varchar(12) <- där hade vi ett stort problem
Hehe, det blir lite mer av en utmaning att logga in då Har själv råkat göra samma sak, ganska lätt hänt om man är lite för snabb i phpMyAdmin.

Som Simon säger så bör du helst lägga salt på bägge sidor och då gärna ett användarspecifikt sådant.
__________________
Full-stack developer, free for smaller assignments

Senast redigerad av tartareandesire den 2009-10-09 klockan 17:05
tartareandesire är inte uppkopplad   Svara med citatSvara med citat
Oläst 2009-10-12, 06:55 #5
BjörnJ BjörnJ är inte uppkopplad
Mycket flitig postare
 
Reg.datum: May 2009
Inlägg: 971
BjörnJ BjörnJ är inte uppkopplad
Mycket flitig postare
 
Reg.datum: May 2009
Inlägg: 971
Citat:
Ursprungligen postat av Johan_S Visa inlägg
//Ta emot formulärdata
$user = mysql_real_escape_string($_POST['username']);
$pass = mysql_real_escape_string(($_POST['pass']);
Det är onödigt att köra mysql_real_escape_string() på lösenordet eftersom det hashas och aldrig skickas i klartext till databasen.

Använd gärna trim() också (på både lösenord och annat).
BjörnJ är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 
Ämnesverktyg
Visningsalternativ

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 03:26.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017