最近在用python的flask框架写东西,顺便把httponly的作用拿出来说下,主要是防止XSS漏洞攻击。
以下hello.py都是用flask写的
wKioL1RHVVjgMx2WAAEL-jYlx7k916.jpg
代码里加入两个cookie值,其中一个带有httponly标签,另一个不带httponly标签。
index.html里就是一句简单的XSS测试js代码
<html>
<h1>This page contains a cookie!</h1>
<script type="text/javascript">alert(document.cookie)</script>
</html>
启动flask的web server
python hello.py
访问http://192.168.118.142:5000/login
wKiom1RHV02T7rcSAAEPrOJ73uw584.jpg
alert弹框只获取到了第一个cookie里的session id和值。可以用chrome插件看看http response header
wKioL1RHWH3SJ3IHAANHYLE_5Fo347.jpg
第二条cookie因为有了httponly的标签,所以没有被获取到。
由此我们可以看到httponly对XSS攻击的作用,但是凡事不是绝对的,有些特定情况还是可以绕过,以后再分析一下。good luck!
©著作权归作者所有:来自51CTO博客作者老徐_kevin的原创作品,谢绝转载,否则将追究法律责任