Ik heb nu een inlogsysteem gemaakt, en ik vraag me af of het veilig genoeg is.

De wachtwoorden worden zo in de db gezet:
<?php
$pass = md5($_POST['password'] . '1*@hackz0r');
$pass = mysql_real_escape_string ($pass);
?>

Als het inloggen gelukt is worden er 2 sessies aangemaakt:
<?php
$_SESSION['logged'] = md5('n00BHaxàrz1337P@#rs' . $_SERVER['REMOTE_ADDR'] . date("z-Y"));
$_SESSION['user'] = $_POST['username'];
?>
Het idee erachter was dat ik (vaak) heb gelezen dat je wachtwoorden niet op mocht slaan in een session. ik heb het ip erin gezet om te voorkomen dat ze de phpsessid stelen, en als het dan toch lukt om ip te misleiden dat het door de date maar 1 dag te gebruiken is.

Bij het controleren of er ingelogd is heb ik deze code:
<?php
if ($_SESSION['logged'] == md5('n00BHaxàrz1337P@#rs' . $_SERVER['REMOTE_ADDR'] . date("z-Y")) && preg_match ('/[a-zA-Z0-9]/', $_SESSION['user']) )
?>
Dat is wel duidelijk denk ik...

Is dit script echt veilig of lijkt het nu alleen maar zo?
Waarom gewoon geen simpele integer met een '1' als je ingelogd bent?
Wat is jouw gedachtegang waarom je een hele md5-codering gebruikt?
:/ omdat je sessions kon faken had ik gelezen?
Die staan op de server.....
Cookies kan je aanpassen.
Hmm ja je hebt waarschijnlijk gelijk xD

Ik denk altijd dat hackers zoveel kunnen, slechte gewoonte denk ik :P ik moet niet alles gaan md5'n.

Reageren