最近在用python的flask框架寫東西,順便把httponly的作用拿出來說下,主要是防止XSS漏洞***。
以下hello.py都是用flask寫的
代碼里加入兩個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
alert彈框只獲取到了第一個cookie裏的session id和值。可以用chrome插件看看http response header
第二條cookie因爲有了httponly的標籤,所以沒有被獲取到。
由此我們可以看到httponly對XSS***的作用,但是凡事不是絕對的,有些特定情況還是可以繞過,以後再分析一下。good luck!