/文 空虚浪子心[XGC]
【IT168 专稿】最近笔者在网上看到一个新文章《JSESSIONID Regeneration in Struts 2》,讲的是一段代码,在STRUTS 2框架中,防御Session Fixation攻击。笔者比较老土,看不懂英文,还好能看懂代码,发现这是一种平时开发中(至少自己是这样),从来没注意过的攻击。关于这种攻击,刺在自己博客上写了篇文章《关于Session Fixation》。我在邮件列表,和文章后面跟帖讨论了下,但是仍然感觉自己说的不是很清晰,毕竟没有实战,所以实践了一下自己的想法,重新写篇文章补充下。注:为了保证质量,本文假设读者对cookie和session基本概念和特性已经掌握。
作者是从防御代码中,发现这种攻击的存在,所以,我们先看防御的代码:
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { if(userid.equals("admin") && password.equals("admin")) { request.getSession().invalidate(); HttpSession session = request.getSession(true); session.setAttribute("AUTHENTICATED", new Boolean(true)); response.sendRedirect("PageRequiringAuthentication.jsp"); //Additional Code Would Normally Follow (全文...)