Http Cookie

Cookie

Cookie的作用是管理服務器端和客戶端之間狀態,工作機制是用戶識別和狀態的管理,Web網站爲了管理用戶的狀態會通過Web瀏覽器,把一些數據臨時寫入用戶的計算機內,接着當用戶訪問改Web網站時,將存儲的Cookie一併發送給服務器端,調用Cookie時,由於可以校驗Cookie的有效期,以及發送方的域,路徑,協議等信息,所以正規發佈的Cookie內的數據不會因爲來自其他Web站點和攻擊者的攻擊而泄露

Cookie服務的首部信息

首部字段 說明 首部類型
Set-Cookie 開始狀態管理所使用的Cookie信息 響應首部字段
Cookie 服務器端接受到的Cookie信息 請求首部字段

Set-Cookie

當服務器準備開始管理客戶端狀態時,會事先告知各種信息

屬性 說明
NAME=VALUE 賦予Cookie的名稱和值(必須
expires=DATE Cookie的有效期(若不明確指定,則默認爲瀏覽器關閉前爲止,對與iOS而言則是應用關閉爲止)一旦Cookie從服務器端發送至客戶端,服務器端就不存在可以顯示刪除Cookie的方法,可以通過覆蓋已過期的Cookie,實現對客戶端Cookie的實質性刪除
path=PATH 將服務器上的文件目錄作爲Cookie的適用對象(若不指定則默認爲文檔當前所在文件目錄)不過另外有辦法可以避開這個限制,所有將其作爲安全機制的效果不理想
domain=域名 作爲Cookie適用對象的域名(若不指定則默認爲創建Cookie的服務器的域名)
Secure 僅在HTTPS安全通信時纔會發送Cookie 發送方式:Set-Cookie: name=xxx;secure 只有當HTTPS纔會對Cookie進行回收,如果省略,不論HTTP還是HTTPS都會回收
HttpOnly 加以限制,使Cookie不能被JavaScript腳本訪問(主要目的是爲防止跨站腳本攻擊對Cookie信息的竊取) 也就是說通過document.cookie 無法讀取附加 HttpOnly屬性Cookie的內容了,因此,也就無法在XSS中利用JavaScript劫持Cookie了

Cookie

首部字段Cookie會告知服務器,當客戶端想獲得HTTP狀態管理時,就會在請求中包含從服務器接收到的Cookie,接收到多個Cookie時,同樣也可以以多個Cookie的形式發送。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章