Ⅰ 什么是http only?起到什么防护作用?
- cookie中设置了HttpOnly属性,那么通过js脚本将无法读取到cookie信息,
- 主要防护的攻击手段:XSS不能通过document对象直接获取cookie
Ⅱ 怎么绕过http only的防护(三种)
- 前端信息泄露:开发者将设置过的httponly的cookie放在页面上,攻击者可以用crossdoamin.xml漏洞,进行跨域访问cookie
- 情况较少:配置出错;将httponly配置给不重要的cookie
- 长度溢出:低版本apache存在一个CVE漏洞,攻击者可以通过发送一个超长伪造cookie,获取httponly的cookie
Ⅲ cookie是一个很重要的东西,直接在服务器上操作,便可以保证一定的安全性,为什么还要加httponly?
- 方便与安全,我们总得去向其中一个低头,对于有些网站登录有一些一周内免登录,这种就需要一个长时间存放在本地的身份cookie,一个赤裸裸的cookie是不能直接放,这时候,就要加点httponly,防止xss利用js脚本获取
Ⅳ 小结
- 讲到这里,加上httponly也不一定安全,像apache的CVE漏洞那样发送超长cookie就可以获取cookie
- 对于cookie安全,我们不能只是寄托于httponly,一个浏览器机制来保护我们的cookie,我们应该尽量不把数据信息放在cookie上,利用其他手段去降低不安全性
- 其他用户验证方法、异地用户登录验证等方法去保证cookie的安全性
- 正如我在stack Overflow上搜到一些答案: