iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 3
3
Security

Web Security 魔法使攻略系列 第 3

Web Security 魔法使攻略─餅乾好吃

  • 分享至 

  • xImage
  •  

正文

「那個,請問為什麼我輸入帳號密碼登入之後,關掉瀏覽器再打開我登入的紀錄還在呢?」
這時候我們就可以拿出餅乾,跟他說─就是這塊神奇的魔法餅乾,他記錄了你來過的資訊。

Cookie 是餅乾也是為了伺服器為了記錄資料,留了一點訊息在瀏覽器中。
當一個網站想要辨識這位使用者是誰,或是延續上一個工作狀態,會產生值來儲存各使用者的狀態。

其實是 HTTP 記不得到底誰來過,所以需要餅乾的協助,我們想看一下瀏覽器的 Cookie 藏在哪裡,
來,我們看一下網址列旁邊的鎖頭,點開之後你就會看到這個網站使用幾個 Cookie。

「Cookie 安全嗎?會不會有壞人把我的餅乾偷走?」
我們知道 cookie 存在瀏覽器這裡,如果我們這些使用者關閉 cookie 的功能,這可能會造成許多網站的無法正常使用。而且 HTTP 協定是「明文」協定,我們在傳輸的過程當中, cookie 十分容易被壞人攔截、修改甚至偽造等,所以並不安全。如果可以偽造,就可以提升自己的權限(當你取得管理員的 Cookie 你就可以變成管理員)或是擁有平行的權限,也就是說我找到同事的 Cookie ,並且偽造他,那我就可以利用它的身分亂發文之類的。

我們需要其他人來協助餅乾的弱點!!!

這時候救世主 Session 出現在我們的身邊。
既然這個 Cookie 可以代表自己登入過的資訊,那我們就從瀏覽器這裡轉變成伺服器端吧,這樣就比較安全了。

Session 其實就是把資訊存在 Server 這裡, Session 會透過 Cookie 生成一個可以知道這是誰的 ID ,
那透過這個 ID ,我們就可以跟 Server 要資料,而且 Cookie 此時存的會是「加密」過的 Seesion 的 ID ,那就算瀏覽器被壞人攔截我們也不怕了。

關於 Session 的安全性

  • 我們希望這個 Session ID 是有時效性的,就算被竊取,過了十分鐘或半小時後,這個就失效不能使用。
  • 如果使用者重新登入,舊的 Session ID 必須是失效無法使用,這樣也可避免被人盜用。

補充

有些 CTF 會需要修改 Cookie ,在這裡介紹一個常用的擴充功能。
editthiscookie


上一篇
Web Security 魔法使攻略─我想看看請求的內容
下一篇
Web Security 魔法使攻略─挑戰書到了,你敢挑戰嗎
系列文
Web Security 魔法使攻略30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言