HTTP-Only cookies

2018-02-24 16:04 更新

微軟的 IE6 SP1 在 cookie 中引入了一個(gè)新的選項(xiàng):HTTP-only,HTTP-Only?背后的意思是告之瀏覽器該 cookie 絕不能通過(guò) JavaScript 的?document.cookie?屬性訪問(wèn)。設(shè)計(jì)該特征意在提供一個(gè)安全措施來(lái)幫助阻止通過(guò) JavaScript 發(fā)起的跨站腳本攻擊 (XSS) 竊取 cookie 的行為(我會(huì)在另一篇博客中討論安全問(wèn)題,本篇如此已足夠)。今天 Firefox2.0.0.5+、Opera9.5+、Chrome 都支持 HTTP-Only cookie。3.2 版本的 Safari 仍不支持。

要?jiǎng)?chuàng)建一個(gè) HTTP-Only cookie,只要向你的 cookie 中添加一個(gè)?HTTP-Only?標(biāo)記即可:

Set-Cookie: name=Nicholas; HttpOnly

一旦設(shè)定這個(gè)標(biāo)記,通過(guò)?documen.coookie?則不能再訪問(wèn)該 cookie。IE 同時(shí)更近一步并且不允許通過(guò)?XMLHttpRequest?的?getAllResponseHeaders()?或?getResponseHeader()?方法訪問(wèn) cookie,然而其它瀏覽器則允許此行為。Firefox 在 3.0.6 中修復(fù)了該漏洞,然而仍舊有許多瀏覽器漏洞存在,complete browser support list?列出了這些。

你不能通過(guò) JavaScript 設(shè)置?HTTP-only,因?yàn)槟悴荒茉偻ㄟ^(guò) JavaScript 讀取這些 cookie,這是情理之中的事情。

以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)