java,jsessionid劫持解决方案.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
java,jsessionid劫持解决方案

java,jsessionid劫持解决方案   篇一:会话劫持防范   目录   Session 会话劫持 1 模拟会话劫持 错误!未定义书签。 防范措施 错误!未定义书签。   (1)设置 httponly   (2)session + token验证   (3)CAS校验   Session 会话劫持   会话标识是随机数据的唯一字符串,一般来说由数字和字符组成,这个字符串由web应用生成并通过cookie的方式发送给用户。在会话标识被发送之后,每个用户发出的请求都在其它请求中包含了该应用发送给他的会话标识。通过使用会话标识,web应用能够识别不同的用户,区分并发的请求和及时追踪用户。会话标识是首要的攻击目标,因为成功的捕获并重演会话标识可以为攻击者提供易受攻击web应用的当即认证。根据窃取到的ID所属用户的访问权限,攻击者可以像普通用户,甚至是特权用户一样登录网站,并访问各种隐私数据   模拟会话劫持   我们正常地登录一个网站,登录的用户名是admin,记录好登录后的JSESSIONID   我们打开另一个浏览器Firefox,我们尝试访问一个私密链接:http://localhost/ puzzlemall/private/,这时浏览器会提示我们登录。这说明这个链接需要登录以后才能观看   打开WebScrab并开启Proxy中的“Intercept requests”功能,并把Firefox的代理设置成WebScrab的IP和端口(8008),然后再次访问这个私密链接,这时WebScrab会截获这个请求,然后修改JSESSIONID为上面admin用户的JSESSIONID   这时我们会发现进入了admin用户的个人信息(profile)页面。这说明我们成功地以admin用户的身份进行了登录。当然了,这个例子只是一个会话劫持的模拟,在实际的网络中,JSESSIONID往往是通过XSS泄露出去的(或者没有走安全的协议而被嗅探)   防范措施   (1)设置 httponly,可以防止其他人和脚本获取到session HttpOnly标识是一个可选的、避免利用XSS(Cross-Site Scripting)来获取session cookie的标识。XSS攻击最常见一个的目标是通过获取的session cookie来劫持受害者的session;使用HttpOnly标识是一种很有用的保护机制。可以人工设置这些参数,如果在Servlet3或者更新的环境,tomcat7中开发,只需要在简单的配置就能实现这种效果:        cookie-config      true                  true   true         兼容 Java EE 的容器,如 Tomcat 7,那么 Cookie 类已经有了 setHttpOnly 的方法来使用 HttpOnly 的 Cookie 属性   (2)session + token验证,不仅验证sesion还要验证自己的token   实现原理:一致性。jsp生成表单时,在表单中插入一个隐藏字段,该字段就是保存在页面端的token字符串,同时把该字符串存入session中。等到用户提交表单时,会一并提交该隐藏的token字符串。在服务器端,查看下是否在session中含有与该token字符串相等的字符串。如果有,那么表明是第一次提交该表单,然后删除存放于session端的token字符串,再做正常业务逻辑流程;如果没有,那么表示该页面不正常提交,做非正常流程处理,可以警告提示也可以什么也不做。   Token主类   文件:   jsp页面端   表单包含隐藏的token字符串:       value=      在Server端action中进行检验   if(((_STRING_NAME), ())){   //进行正常业务流程   }   else{   //进行进行异常处理流程   }   (3)CAS校验   CAS 基础协议   CAS Client 与受保护的客户端应用部署在一起,以 Filter 方式保护受保护的资源。对于访问受保护资源的每个 Web 请求,CAS Client 会分析该请求的 Http 请求中是否包含 Service Ticket,如果没有,则说明当前用户尚未登录,于是将请求重定向到指定好的 CAS Server 登录地址,并传递 Service (也就是要访问的目的资源地址),以便登录成功过后转回该地址。用户在第

文档评论(0)

2017meng + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档