2012-05-22 67 views
1

我對cookie中的HTTPOnly屬性略有混淆。我知道它的主要用途是防止XSS攻擊。讓我們假設有一個Web應用程序已經爲cookie設置了httponly。我使用了像Fiddler這樣的攔截代理。但在隨後的所有交易中,cookie不會附帶httponly標誌。這是一個功能,就像設置一次,整個會話涵蓋在httponly標誌下......或者這是一個實施缺陷。但是,再次通過cookie管理器插件進行監視時,屬性顯示httponly已啓用。我的問題是,如果它啓用了Cookie管理器顯示啓用的原因而不是攔截代理,這是正常的預期行爲還是錯誤的實現。請幫助我理解。瞭解HTTPOnly標誌的預期行爲

回答

2

HttpOnly由服務器在Set-Cookie頭中發送,以指示瀏覽器不使cookie可用於JavaScript。瀏覽器仍然會通過http連接發送它。 Set-Cookie頭文件可以包含各種關於cookies的指令,比如它們到期時,它們用於哪個域,這些路徑,它們是否只應通過https(安全標誌)和HttpOnly發送。這些都是從服務器到瀏覽器的指令,所以瀏覽器在每次請求時都沒有意義將它們發送回服務器。

+0

所以,@ Erlend,HttpOnly只能由服務器設置一次,並且它在整個會話中都適用於Cookie,即如果我通過像Fiddler這樣的攔截代理來監視Web應用程序流量,我將只看到httponly標誌一次,由服務器設置,而不是在隨後的任何請求和響應中,我的理解是否正確。 – Mechanic

+0

是的,你是對的 – Erlend