Toon posts:

[php] md5 password "normaal" mailen

Pagina: 1
Acties:
  • 132 views sinds 30-01-2008

Verwijderd

Topicstarter
Hallo,

voor een inlogsysteem heb ik middels een aanmeldformulier de mogelijkheid om jezelf in te schrijven.

Alles in de db zetten werkt perfect. Alleen wil ik nu echter een mailtje sturen naar mijzelf (als webmaster) om te bevestigen of iemand al dan niet toegang krijgt (club van 30 man dus alleen die toegang).

Middels deze code zet hij de $ in de db en stuurt hij een mailtje:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?
    // De user in de tabel zetten
    if (!@mysql_query("INSERT INTO 
                    leden 
                (naam,achternaam,bijnaam,adres,postcode,woonplaats,geboortedatum,emailadres,telefoonnr,mobielnr,wachtwoord,actief) 
                    VALUES 
                ('".addslashes($HTTP_POST_VARS['naam'])."',
                 '".addslashes($HTTP_POST_VARS['achternaam'])."', 
                 '".addslashes($HTTP_POST_VARS['username'])."',
                 '".addslashes($HTTP_POST_VARS['adres'])."',  
                 '".addslashes($HTTP_POST_VARS['postcode'])."', 
                 '".addslashes($HTTP_POST_VARS['woonplaats'])."', 
                 '".addslashes($HTTP_POST_VARS['geboortedatum'])."', 
                 '".addslashes($HTTP_POST_VARS['emailadres'])."', 
                 '".addslashes($HTTP_POST_VARS['telefoon'])."',
                 '".addslashes($HTTP_POST_VARS['mobiel'])."', 
                 '".md5($HTTP_POST_VARS['password'])."', 
                 '0') 
                ")) 
    { 
        exit("Kan niets in tabel zetten, is de tabel wel aangemaakt?"); 
    } 

    // Nu even de user mailen 
    // mysql_insert_id() is de net ingevoerde ID in de tabel 
    
    $email=$HTTP_POST_VARS['emailadres'];
    $user=$HTTP_POST_VARS['username'];
    $pass=$HTTP_POST_VARS['password']; 

    $to="webmaster@site.nl";
    $from="From:$user\nReply-to:$email";
    
    $subject="Nieuwe aanmelding voor ledensysteem";
    $tekst="Er is een nieuwe aanmelding binnen van $user met password $pass.
    Om de registratie te bevestigen klik hier:
    http://www.site.nl/bevestig.php?userid=".mysql_insert_id()."&username=$user&pass=$pass";

    mail($to,$subject,$tekst,$from);
?>


Hij doet alles behalve het password meesturen. Hier geeft hij de volgende error voor weer:

Warning: Undefined index: password (2 lines beide lines waarin $pass wordt gebruikt)

Ik heb ook al geprobeerd $pass aan te maken voordat alles naar de db gestuurd wordt maar zelfde fout.

Wat doe ik fout? en / of hoe kan ik een md5 weer terug zetten naar string?

  • TheDane
  • Registratie: Oktober 2000
  • Laatst online: 23-08 15:30

TheDane

1.618

heet 't password veld in je formulier wel 'password' ?

en komt 't echte wachtwoord (gehashed) uberhaupt wel in de database te staan?

  • kvdveer
  • Registratie: November 2000
  • Laatst online: 06-11-2025

kvdveer

Z.O.Z.

[blaat]

Die addslashes in je query zijn trouwens niet nodig - daar hebben we magic-quotes-gpc voor...

[ Voor 76% gewijzigd door kvdveer op 30-01-2003 16:47 ]

Localhost, sweet localhost


  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

md5 terugzetten gaat niet. is een one-way hashing algoritme. Maar daar zit je probleem ook niet in.

Doe eens een var_dump ( $HTTP_POST_VARS ) en kijk of je die password wel doorkrijgt vanaf je formulier

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • Sybr_E-N
  • Registratie: December 2001
  • Laatst online: 21-08 19:22
je kolom naam is wachtwoord. Heet die ook zo in he html form? Dan moet je password ff in wachtwoord veranderen.

En md5 kun je niet simpel terug zetten! (alleen brute force)

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Sybr_E-N:
En md5 kun je niet simpel terug zetten! (alleen brute force)

Brute force heeft weinig nog met terugzetten te maken. In dat geval probeer je een string te vinden die dezelfde md5 hash heeft, en dat hoeft dan nog niet perse dezelfde te zijn als die gebruiker heeft ingevuld ;)

Maar zoals ik al zei, daar zit je probleem niet in, want die md5 produceer je zelf, dus het "origineel" krijg je ook binnen. Het heeft geen enkele zin om zelf iets te hashen, en dan vervolgens weer terug te rekenen (als dat al mogelijk is, uiteraard)

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


  • D2k
  • Registratie: Januari 2001
  • Laatst online: 09-01 11:25

D2k

basic debuggen

Doet iets met Cloud (MS/IBM)

Pagina: 1

Dit topic is gesloten.