问题:希望确保应用不会受到会话固定攻击,即攻击者强制用户使用一个预定义的会话id.

解决方案:要求使用会话cookie但会话标识符不追加到URL,另外要频繁地生成新会话ID:

 <?php
ini_set('session.use_only_cookies',true);
//防止会话固定攻击
session_start(); //每隔30秒 生成一个新的PHPSESSID
if (!isset($_SESSION['generated']) || $_SESSION['generated'] < (time() - 30) ) {
echo "create<br/>";
//生成一个新的session id
session_regenerate_id();
$_SESSION = [
'user'=>'lemon',
'generated'=>time()
]; } else {
echo "ok<br/>";
print_r($_SESSION);
}

  这种方案基本上可以消除会话固定攻击的风险,攻击者很难得到一个合法的会话id,因为会话id会频繁改变。

最新文章

  1. [Android Pro] android控件ListView顶部或者底部也显示分割线
  2. css 中content内容特殊形状
  3. 用css布局的方法实现如果字符超过一定长度就显示成省略号
  4. java 的方法注释写在哪里?
  5. Linux: xclip,pbcopy,xsel用法 terminal 复制粘帖 (mac , ubuntu)
  6. Java集合的小抄
  7. Activity的启动模式(android:launchMode)
  8. 正则表达式中Pattern类、Matcher类和matches()方法简析
  9. Spring集成Quartz完成定时任务
  10. socket之解决粘包方法
  11. Java中 float、double使用注意问题
  12. Hadoop生态集群YARN详解
  13. 微信网页浏览器打开链接后跳转到其他浏览器下载APK文件包
  14. 「BZOJ1691」[Usaco2007 Dec] 挑剔的美食家 (Treap)
  15. Mybatis经常被问到的面试题
  16. netty如何实现零拷贝
  17. mysql的一些操作命令
  18. XMind *思维导图的安装步骤(图文详解)
  19. HDU P2089
  20. Oracle 表空间、段、区和块简述

热门文章

  1. python中多线程
  2. Python ImportError: No module named Image
  3. HDU 3973 AC&#39;s String 字符串哈希
  4. 优先队列底层实现是堆(heap)(操作系统进程调度)
  5. java中读取配置文件
  6. Install LAMP Server (Apache, MariaDB, PHP) On CentOS/RHEL/Scientific Linux 7
  7. FastAdmin bootstrap-table 分页手动输入跳转
  8. LOJ 6485 LJJ 学二项式定理——单位根反演
  9. bzoj2004公交线路
  10. vue项目修改favicon