天天看點

<講個故事>cookie是什麼?

cookie

前幾天,去"有間"發廊理發,人很多,理發小哥建議辦張會員卡,可以VIP通道免排隊,還有充599送100的優惠,适逢月初,還沒到吃土的時節,充值600,辦了會員卡...

會員卡

VIP編号 | 20171011

會員姓名| 昭昭

有效期至| 2018年12月31日

我相當于浏覽器用戶端,發廊相當于網站服務端;

cookie相當于會員卡;網站産生cookie,由用戶端儲存;

我以後每次去"有間"發廊要帶上會員卡,浏覽器用戶端,每次向網站發送請求,要帶上cookie;

一個月後,我又去理發,換了理發師,為了證明"尊貴的身份",我默默亮出了會員卡...

為什麼要使用cookie?

為了避免頻繁的登入操作,還能證明我們的身份!

我們浏覽網站資源(去理發),隻需登入一次(辦一次卡),就可以在一定的時限内(2018年12月31日前),随意通路網站的網頁(紅毛/黃毛/紫毛/燙頭/光頭/半光頭,任你挑...)

我充值了599,會員卡沒有注明充值的金額,事實上,發廊也不可能把"餘額"資訊存在卡片裡,如果"餘額"被人随意篡改,<"有間"發廊>就會變成<"從前有間"發廊>...

關于session

同理,網站給我們的cookie隻是存儲了"證明"我們身份的資訊,不會把重要的資訊存放到cookie中;你可能會問:重要的資訊存在哪兒? 答:重要資訊存在session中! session由網站資料庫儲存,保障了資訊的安全! session依賴于cookie(正如卡内的"餘額"依賴于會員卡)

身份證會采集我們很多的個人資訊(指紋,DNA),全面驗證我們的個人身份;會員卡隻有很少的個人資訊,如果手滑把會員卡丢了,其他人獲得後,可以直接使用...

cookie的"盜用":

我開通了"某度文庫"會員,登入後,我的cookie就有了通路"會員專屬"資源的權限,如果有人"盜用"了我的cookie,就可以在不知道我賬戶和密碼的前提下,以我的身份登入網站,下載下傳"會員專屬"資源...

cookie是什麼

更深一點(假的ATM機:CSRF):

我們的浏覽器對于不同網站的cookie是分開存放的,浏覽器會根據請求的域名判定,發送不同的cookie(進不同的店,用不同的會員卡!),但這種機制并不安全,比如百度的網站内的某張圖檔,嵌入了新浪的連結(這個連結可以是一個get請求),如果你點選了這張圖檔,就相當于對新浪的伺服器發送了get請求(請求被人事先精心設計過),上面的這種攻擊被稱為CSRF(Cross Site Request Forgery),譯為跨站請求僞造!

2008年,國内外的多個大型社群和互動網站分别爆出CSRF漏洞,如:NYTimes.com(紐約時報)、YouTube和百度HI等!現在,網際網路上的許多站點仍對此毫無防備,以至于安全業界稱CSRF為“沉睡的巨人”。

繼續閱讀