PHP Session 安全
在stackoverflow上看到关于phpSession安全的讨论,特记录之。(http://stackoverflow.com/questions/328/php-session-security)
1.使用SSL
2.重设session_id
3.设置session有效时间
可以参考鸟哥的文章:http://www.laruence.com/2012/01/10/2469.html
4.不是全局变量
5.存储信息在服务器上,不发送重要信息到cookie上
6.检查用户user_agent和IP
PHP使用:if($_SESSION['user_agent']!=$_SERVER['HTTP_USER_AGENT']
||$_SESSION['user_ip']!=$_SERVER['REMOTE_ADDR']){
//Somethingfishyisgoingonhere?
}
7.设置httpOnly避免Session攻击
参考:http://ilia.ws/archives/121-httpOnly-cookie-flag-support-in-PHP-5.2.html
8.Lockdownaccesstothesessionsonthefilesystemorusecustomsessionhandling
将session存储在DB,memcached等
9.Forsensitiveoperationsconsiderrequiringloggedinuserstoprovidetheirauthenicationdetailsagain