Что касается безопасности PHP с помощью куки-файлов и сеансов, то это то, что я сделал до сих пор для предотвращения атак. Что я сделал неправильно/небезопасно?PHP-безопасность для файлов cookie и сеансов
login.php
if ($username==$dbusername&&$hashed_password==$dbpassword){
setcookie('username[0]',$username,time()+(60*60*24*365));
setcookie('username[1]',$userid,time()+(60*60*24*365));
setcookie('password',$hashed_password,time()+(60*60*24*365));
if($admin=='1') {
setcookie('username[3]',$admin,time()+(60*60*24*365));
}
$_SESSION['logged-in']=1;
logout.php
$time = time()-(60*60*24*365);
setcookie('username[0]', '',$time);
setcookie('username[1]', '',$time);
setcookie('username[2]', '',$time);
setcookie('username[3]', '',$time);
setcookie('password', '',$time);
unset($_COOKIE['username']);
unset($_SESSION['logged-in']);
Я называю session_regenerate_id() на everypage, это правильно, чтобы остановить фиксации сессии/угон?
<?php session_start(); session_regenerate_id();
Вот мой php.ini, что другие способы сделать я обеспечить безопасность сеансов & печенье
session.use_trans_sid = 0
session.user_only_cookies = 1
Все примеры/impovements приветствоваться, так как я лучше учиться на примерах.
Для этого предназначен http://codereview.stackexchange.com. –
Ничего себе. Никогда не знал о codereview.stackexchange.com. Вы каждый день узнаете что-то новое, да? – Andrew
И нет, этот код небезопасен. Любой пользователь может добавить файл cookie 'username [3] = 1' и стать администратором. –