zoukankan      html  css  js  c++  java
  • Servlet 2.5为cookie配置HTTPOnly属性

    cookie的HTTPOnly属性,主要是用来防止JavaScript来读取cookie,默认情况下,JavaScript可以通过document.cookie来读取cookie,这样是很不安全的。通过配合XSS攻击,就可以达到盗取用户cookie的目的。这样的话,就可以在不知道用户密码的情况下,直接登陆用户的账号,现在很多网站都是使用coookie来保存用户名和密码信息的,非常不安全。

    所以,出于安全考虑,我们最好是为cookie设置一下属性,让JS读取不到cookie,这样就会安全一些。Servlet 3.0一下,cookie的设置不支持HTTPOnly选项。我们可以通过其它的手段,来达到目的。

    首先看一下没有为cookie设置HTTPOnly的情况,JS直接读取Cookie

    cookie-nohttponly1

    请求一下Servlet,然后发现确实没有HTTPOnly属性

    cookie-nohttponly2

    然后测试一下用JS访问Cookie

    cookie-nohttponly3确实可以直接访问到Cookie信息,这样是非常不安全的,如果网站存在存储型或反射型的XSS漏洞,那么将会非常可怕,既然可以访问到cookie,那么肯定可以通过JS把cookie发送到一个地址,然后这个地址写一个页面接收JS发过来的请求,就拿到了用户的cookie!

    下面我们开始为Cookie设置HTTPOnly属性

    cookie-httponly1

    先清空一下原来的cookie,然后再去请求一下看看

    cookie-httponly2

    我们看到HTTP一栏上面有一个对勾,然后我们再尝试使用JS访问一下Cookie

    cookie-httponly3

    JS已经访问不到Cookie了,这样安全问题就解决了!

  • 相关阅读:
    vi/vim 文字处理器常用命令
    图片在容器里水平垂直居中
    谁的属性值优先被访问
    创建对象和实例
    碎碎念css
    未整理js
    表格<table>
    盒子模型
    Css文件目录结构
    链接文字<a>保持原有的字体颜色
  • 原文地址:https://www.cnblogs.com/firstdream/p/8302114.html
Copyright © 2011-2022 走看看