最近在用python的flask框架写东西,顺便把httponly的作用拿出来说下,主要是防止XSS漏洞***。

以下hello.py都是用flask写的

httponly对XSS***的作用_第1张图片

代码里加入两个cookie值,其中一个带有httponly标签,另一个不带httponly标签。

index.html里就是一句简单的XSS测试js代码


This page contains a cookie!

alert(document.cookie)

启动flask的web server

python hello.py

访问http://192.168.118.142:5000/login  

httponly对XSS***的作用_第2张图片


alert弹框只获取到了第一个cookie里的session id和值。可以用chrome插件看看http response header

httponly对XSS***的作用_第3张图片

第二条cookie因为有了httponly的标签,所以没有被获取到。

由此我们可以看到httponly对XSS***的作用,但是凡事不是绝对的,有些特定情况还是可以绕过,以后再分析一下。good luck!