Onbekend |
|
Goede avond allemaal,
Ik ben bezig met een login systeem te bouwen die gebruikt maakt van cookie's en sessie's
Dit is mijn vraag: Is deze check of je bent ingelogd veilig genoeg?
<?php
function login_check()
{
if(isset($_COOKIE['gebruikersnaam']) && isset($_COOKIE['IP']) && isset($_COOKIE['ID']) && isset($_COOKIE['site']) && isset($SESSION['gebruikersnaam']) && isset($_SESSION['IP']))
{
if($_COOKIE['gebruikersnaam'] == $SESSION['gebruikersnaam'] && $COOKIE['IP'] == SESSION['IP'] && $_COOKIE['site'] == $site)
{
$ip_data = connectie()->query("SELECT in_lo_gebruikersnaam,in_lo_IP,in_lo_id,in_lo_datum FROM inlog_logs WHERE in_lo_gebruikersnaam='".invoer($_SESSION['gebruikersnaam'])."' ORDER BY ID DESC");
$ip = $ip_data->fetch_assoc();
$datum = date("d-m-Y");
if($ip['in_lo_gebruikersnaam'] == $_SESSION['gebruikersnaam'] && $ip['in_lo_IP'] == $_SESSION['IP'] && $ip['in_lo_id'] == $_COOKIE['ID'] && $ip['in_lo_datum'] == $datum)
{
RETURN TRUE;
}
else
{
setcookie ("gebruikersnaam", "", time() - 3600);
setcookie ("IP", "", time() - 3600);
setcookie ("ID", "", time() - 3600);
setcookie ("site", "", time() - 3600);
unset($_SESSION['gebruikersnaam']);
unset($_SESSION['IP']);
RETURN FALSE;
}
}
else
{
setcookie ("gebruikersnaam", "", time() - 3600);
setcookie ("IP", "", time() - 3600);
setcookie ("ID", "", time() - 3600);
setcookie ("site", "", time() - 3600);
unset($_SESSION['gebruikersnaam']);
unset($_SESSION['IP']);
RETURN FALSE;
}
}
else if(isset($_COOKIE['gebruikersnaam']) && isset($_COOKIE['IP']) && isset($_COOKIE['ID']) && isset($_COOKIE['site']))
{
$ip_data = connectie()->query("SELECT in_lo_gebruikersnaam,in_lo_IP,in_lo_id,in_lo_datum FROM inlog_logs WHERE in_lo_gebruikersnaam='".invoer($_SESSION['gebruikersnaam'])."' ORDER BY ID DESC");
$ip = $ip_data->fetch_assoc();
$datum = date("d-m-Y");
if($ip['in_lo_gebruikersnaam'] == $_COOKIE['gebruikersnaam'] && $ip['in_lo_IP'] == $_COOKIE['IP'] && $ip['in_lo_id'] == $_COOKIE['ID'] && $ip['in_lo_datum'] == $datum)
{
$_SESSION['gebruikersnaam'] = $_COOKIE['gebruikersnaam'];
$_SESSION['IP'] = $_COOKIE['IP'];
RETURN TRUE;
}
else
{ setcookie ("gebruikersnaam", "", time() - 3600);
setcookie ("IP", "", time() - 3600);
setcookie ("ID", "", time() - 3600);
setcookie ("site", "", time() - 3600);
unset($_SESSION['gebruikersnaam']);
unset($_SESSION['IP']);
RETURN FALSE;
}
}
else
{
setcookie ("gebruikersnaam", "", time() - 3600);
setcookie ("IP", "", time() - 3600);
setcookie ("ID", "", time() - 3600);
setcookie ("site", "", time() - 3600);
unset($_SESSION['gebruikersnaam']);
unset($_SESSION['IP']);
RETURN FALSE;
}
}
?>
<?php function login_check() { if(isset($_COOKIE['gebruikersnaam']) && isset($_COOKIE['IP']) && isset($_COOKIE['ID']) && isset($_COOKIE['site']) && isset($SESSION['gebruikersnaam']) && isset($_SESSION['IP'])) { if($_COOKIE['gebruikersnaam'] == $SESSION['gebruikersnaam'] && $COOKIE['IP'] == SESSION['IP'] && $_COOKIE['site'] == $site) { $ip_data = connectie()->query("SELECT in_lo_gebruikersnaam,in_lo_IP,in_lo_id,in_lo_datum FROM inlog_logs WHERE in_lo_gebruikersnaam='".invoer($_SESSION['gebruikersnaam'])."' ORDER BY ID DESC"); $ip = $ip_data->fetch_assoc(); if($ip['in_lo_gebruikersnaam'] == $_SESSION['gebruikersnaam'] && $ip['in_lo_IP'] == $_SESSION['IP'] && $ip['in_lo_id'] == $_COOKIE['ID'] && $ip['in_lo_datum'] == $datum) { RETURN TRUE; } else { unset($_SESSION['gebruikersnaam']); RETURN FALSE; } } else { unset($_SESSION['gebruikersnaam']); RETURN FALSE; } } else if(isset($_COOKIE['gebruikersnaam']) && isset($_COOKIE['IP']) && isset($_COOKIE['ID']) && isset($_COOKIE['site'])) { $ip_data = connectie()->query("SELECT in_lo_gebruikersnaam,in_lo_IP,in_lo_id,in_lo_datum FROM inlog_logs WHERE in_lo_gebruikersnaam='".invoer($_SESSION['gebruikersnaam'])."' ORDER BY ID DESC"); $ip = $ip_data->fetch_assoc(); if($ip['in_lo_gebruikersnaam'] == $_COOKIE['gebruikersnaam'] && $ip['in_lo_IP'] == $_COOKIE['IP'] && $ip['in_lo_id'] == $_COOKIE['ID'] && $ip['in_lo_datum'] == $datum) { $_SESSION['gebruikersnaam'] = $_COOKIE['gebruikersnaam']; $_SESSION['IP'] = $_COOKIE['IP']; RETURN TRUE; } else unset($_SESSION['gebruikersnaam']); RETURN FALSE; } } else { unset($_SESSION['gebruikersnaam']); RETURN FALSE; } } ?>
ID wordt automatisch gegenereerd en opgeslagen in de database.
Ik hoop dat jullie me kunnen vertellen of deze veilig is, of wat er nog toegepast moet worden..
Met vriendelijke groet,
Luc
|