DYBOY's Blog

[XSS防御]HttpOnly之四两拨千斤

今天看了《白帽子讲web安全》一书,顺便记录一下,HttpOnly的设置

httponly的设置值为 TRUE 时,使得Javascript无法获取到该值,有效地防御了XSS打管理员的 cookie

这里以本博客作为测试对象,实现了一下。

找到网站 /include/lib/loginauth.php 文件,如下修改:
代码修改

这里解释一下:在PHP>5.2版本中支持HttpOnly设置,可以直接在php.ini文件中设置,个人不推荐这种方式,推荐如上图所述在设置cookie时设置。

setcookie() 这个函数现支持7个参数,第七个参数是设置 httponly 的属性,第六个是是否开启 https 传输。

这样设置以后,就能有效地防止XSS获取用户的重要cookie信息

效果如下:

httponly开启

使用alert(document.cookie)在控制台弹窗一下,发现并没有我们的登录信息cookie键值对:

无敏感登录信息cookie


注意:httponly只是阻止了js获取httponly值为true所对应的cookie键值队,并不能拦截XSS,想要拦截XSS除了浏览器的filter以外,更多的是程序本身做好参数的过滤。

标签:web安全xss
版权声明:《 [XSS防御]HttpOnly之四两拨千斤 》为DYBOY原创文章未经允许不得转载。

 DYBOY
 作者签名:安全从业者,爱好安全产品开发,渗透测试,Web漏洞研究

发表评论:

用心评论~

帅人已评:

Proverb
2018-10-26 23:08
非常感谢博主,这篇文章很有帮助!
TOP
Powered by Emlog | Theme:Monkey by DYBOY
渝ICP备16008772号
sitemap