http://www.jtmelton.com/2012/01/25/year-of-security-for-java-week-4-session-cookie-httponly-flag/
What is it and why do I care?
Session cookies (或者包含JSSESSIONID的cookie)是指用来管理web应用的session会话的cookies.这些cookie中保存特定使用者的session ID标识,而且相同的session ID以及session生命周期内相关的数据也在服务器端保存。在web应用中最常用的session管理方式是通过每次请求的时候将cookies传送到服务器端来进行session识别。
HttpOnly标识是一个可选的、避免利用XSS(Cross-Site Scripting)来获取session cookie的标识。XSS攻击最常见一个的目标是通过获取的session cookie来劫持受害者的session;使用HttpOnly标识是一种很有用的保护机制。
what should I do about it ?
解决方案很简单。只需要在session cookie上添加HttpOnly标识就行了(最好是所有的cookie)。
下面是一个没有添加HttpOnly标识的session cookie:
Cookie: jsessionid=AS348AF929FK219CKA9FK3B79870H;
添加HttpOnlyFlag标识之后:
Cookie: jsessionid=AS348AF929FK219CKA9FK3B79870H; HttpOnly;
如果你看过上周的文章,添加了secure和HttpOnly标识的cookie:
Cookie: jsessionid=AS348AF929FK219CKA9FK3B79870H; HttpOnly; secure;
很简单。你可以人工设置这些参数,如果你在Servlet3或者更新的环境中开发,只需要在web.xml简单的配置就能实现这种效果。你要在web.xml中添加如下片段:
<session-config>
<cookie-config>
<http-only>true</http-only>
</cookie-config>
</session-config>
而且如果使用了secure标识,配置应该如下
<session-config>
<cookie-config>
<http-only>true</http-only>
<secure>true</secure>
</cookie-config>
</session-config>
如上所述,解决这个问题很简单。每个人都应该解决这个问题。
References
http://blog.mozilla.com/webappsec/2011/03/31/enabling-browser-security-in-web-applications/
http://michael-coates.blogspot.com/2011/03/enabling-browser-security-in-web.html
https://www.owasp.org/index.php/HttpOnly
分享到:
相关推荐
其次,GlassFish2.x支持的是servlet2.5,而servlet2.5不支持Session Cookie的"HttpOnly"属性。不过使用Filter做一定的处理可以简单的实现HttpOnly属性。GlashFish3.0(支持servlet3.0)默认开启Session Cookie的...
本文档描述了关于cookie的http-only和secure的简介,和如何设置该属性,以及设置该属性会遇到的问题解决方法
该文档整合了cookie的httponly和secure的简介,已经设置该属性时会遇到的问题,以及设置属性的方式
In order to help mitigate the risk of cross-site scripting, a new feature has been introduced in Microsoft Internet Explorer 6 SP1.... A cookie with this attribute is called an HTTP-only cookie.
完整获取webBrowser1的Cookie HttpOnly的Cookie
Express 中间件用于保护cookie通过HttpOnly并添加标记检查是否存在
java后台和php后台如何设置HttpOnly到前台浏览器的cookie中.cookie中设置了HttpOnly属性,那么通过js脚本将无法读取到cookie信息,这样能有效的防止XSS攻击.zip
在mvc中验证如何存取cookie,并通过cookie的httponly属性防止cookie被jquery脚本窃取。
第九节 cookie的httponly设置-01
下面小编就为大家带来一篇PHP设置Cookie的HTTPONLY属性方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
下面小编就为大家带来一篇httpwebreqeust读取httponly的cookie方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
Set-Cookie: JSESSIONID=8AB51DC4244907FD9EBB063C7FD73CBA; Path=/; HttpOnly 解决此类cookie暴露项目路径问题
主要介绍了Springboot中登录后关于cookie和session拦截案例,本文通过实例图文相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
.net 获取浏览器Cookie(包括HttpOnly)实例分享.docx
Extjs 关于cookie 实现实时存储 数据存储的操作, 将数据存放cookie中,防止断电
介绍了.net 获取浏览器Cookie(包括HttpOnly)实例,有需要的朋友可以参考一下
来源:
session一定要用httponly的否则可能被xxs攻击,利用js获取cookie的session_id。 要用框架的ci_session,更长的位数,httponly,这些默认都配好了。 不要用原生的phpsession,而要用ci_session。ci_session位数更长。...
在某些时候,应用可能需要JavaScript访问某几项Cookie,这种Cookie可以不设置HttpOnly标记;而仅把HttpOnly标记给用于认证的关键Cookie。 HttpOnly CSP 内容安全策略( CSP ): 内容安全策略是一个额外的安全层,用于...