【網路安全】Session 的安全性



贊助商連結


achilles
2003-12-04, 11:42 AM
現在的網站在設計時,都會使用 Cookie 或 Session 來識別使用者的資料,
雖然 Session 的安全性已增加了,但他仍需儲存一個指標在 Cookie 裡。
(甚至 PHP 也支援在 URL 上傳遞 Session 的值)

問題是這樣的,假設 A 登入某個網站(例如:PCZone),且有選取"自動登入"或"記住我的帳號",
該網站雖然有用 Session 儲存資料在 Server 端,
但仍需儲存一個 Session 的指標在 Client 端的 Cookie 內。

現在 B 用"特殊方法"取得 A 電腦的 Cookies,
雖然 B 沒有從 Cookie 裡取得 A 在 PCZone 內的帳號及密碼,
但 B 如果把自己的 Cookie 改成跟 A 一樣的 Cookie,
那會不會 B 就變成 A,而且可以直接登入 PCZone 了?

贊助商連結


karisuma
2003-12-04, 01:18 PM
您的理論是對的.
但一般的解決方法是會將cookie加密以及設定時間限制.
Response.Cookies("PaWD").Expires = DateAdd("d",5,Date)
而且在server寫東西到cookie時,也會設定cookie的domain property.
通常預設值會是程式的 Full DNS Domain Name or Server Name,
所以您從其它主機讀取相同cookie值時還是無法成功的.