-1
我确实搜索了一些关于PHP会话安全性的信息,发现了一些不错的东西,但是iam仍然不确定这是否正确且安全,以防止常见攻击会话保护。安全会话检查
public static function session_start()
{
ini_set('session.cookie_httponly', 1);
ini_set('session.session.use_only_cookies', 1);
ini_set('session.entropy_file', '/dev/urando');
ini_set('session.cookie_lifetime', 0);
ini_set('session.cookie_secure', 1);
if(session_status() != 2) session_start();
//fixation security step
if(!isset($_SESSION[self::$_CHECK_KEY]) || $_SESSION[self::$_CHECK_KEY] !== self::$_CHECK_VAL)
{
session_regenerate_id();
$_SESSION[self::$_CHECK_KEY] = self::$_CHECK_VAL;
}
//Hijacking secuity step
if(isset($_SESSION[self::$_USER_AGENT]))
{
if(self::CryptPass(
$_SERVER['HTTP_USER_AGENT'],
self::$_USER_SALT,
$_SESSION[self::$_USER_AGENT])
!== $_SESSION[self::$_USER_AGENT])
{
$this->ReqLogin = true;
}
}
else
{
$_SESSION[self::$_USER_AGENT] = self::CryptPass($_SERVER['HTTP_USER_AGENT'], self::$_USER_SALT);
}
}
所以我想知道有什么我可以做得更好吗?有什么我不该做的?
看看这里http://stackoverflow.com/questions/328/php-session-security –