今天 D28 我們把焦點放在 Cookie:
網路上最常被忽視卻又最關鍵的「狀態與追蹤機制」。
Cookie 同時是便利(登入保持、偏好設定)與風險(追蹤、會話接管、CSRF)的來源。
本篇從資安與隱私角度出發,幫你掌握重點與應對方法。
Cookie 是伺服器儲存在使用者瀏覽器中的小資料片段,
能讓網站「記得你是誰」──例如登入狀態、購物車內容、語言設定等。
| 類型 | 說明 |
|---|---|
| Session Cookie | 關閉瀏覽器即失效,用於暫時登入狀態。 |
| Persistent Cookie | 有到期時間,能長期記錄偏好或自動登入。 |
| 第一方 Cookie | 由你造訪的網站設定。 |
| 第三方 Cookie | 由外部廣告或追蹤服務設定,最具隱私爭議。 |
| 屬性 | 功能 |
|---|---|
Secure |
僅在 HTTPS 傳送,防止中間人竊取。 |
HttpOnly |
阻止 JavaScript 存取,防範 XSS 竊取。 |
SameSite |
控制跨站請求是否附帶 Cookie(Lax、Strict、None)。 |
Expires / Max-Age |
控制有效時間,越短越安全。 |
Path / Domain |
限定可用範圍,避免跨子域誤用。 |
XSS(跨站指令碼)
若網站可被植入惡意 JS,而 Cookie 未設 HttpOnly,攻擊者可讀取並竊取登入憑證。
CSRF(跨站請求偽造)
瀏覽器會自動帶 Cookie,攻擊者可在其他網站觸發你的登入狀態行為。
可透過 SameSite=Lax 或 CSRF Token 降低風險。
Session 劫持
攻擊者截取 session ID 或讓你使用他提供的固定 ID。
解法:短期有效、登入後重新產生 Session。
第三方追蹤
廣告與分析服務透過第三方 Cookie 建立行為輪廓,
雖不算直接攻擊,但屬於重大隱私風險。
在 Chrome / Edge:
「F12 → Application → Storage → Cookies」
即可檢視每個 Cookie 的 Name、Domain、Path、HttpOnly、Secure、SameSite 等資訊。
| 網域 | 名稱 | 用途 | 類型 | HttpOnly | Secure | SameSite | Expires | 風險 | 建議 |
|---|---|---|---|---|---|---|---|---|---|
| example.com | session_id | 登入狀態 | Session | ✅ | ✅ | Lax | 1h | 低 | 無 |
| shop.example.com | remember_me | 自動登入 | Persistent | ❌ | ✅ | None | 7d | 中 | 改設 HttpOnly |
| ads.thirdparty.net | track_user | 廣告追蹤 | 第三方 | ❌ | ❌ | None | 30d | 高 | 移除或封鎖 |
伺服器端
HttpOnly; Secure; SameSite=Lax。前端
隱私管理
Cookie 看似小小一行字,卻連動登入安全、隱私合規與使用者信任。
盤點、分類、設定,就是最簡單也最有效的資安防線。
學會讀懂 Cookie,你就能預防一半以上的 Web 攻擊風險。+