国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種Cookie防篡改方法及裝置制造方法

      文檔序號:7781360閱讀:192來源:國知局
      一種Cookie防篡改方法及裝置制造方法
      【專利摘要】本申請公開了一種Cookie防篡改方法及裝置,該方法通過獲取服務(wù)器返回給瀏覽器的響應(yīng)數(shù)據(jù)包中的Cookie,其中,所述Cookie的所述首個字段中包含有用戶通過所述瀏覽器訪問所述服務(wù)器的各種信息數(shù)據(jù),對所述Cookie的首個字段進(jìn)行加密,并將含有加密Cookie的響應(yīng)數(shù)據(jù)包發(fā)送至所述瀏覽器,從而實(shí)現(xiàn)了對用戶訪問服務(wù)器的數(shù)據(jù)信息的加密,進(jìn)而保證了用戶信息在網(wǎng)絡(luò)傳輸過程中的安全性。
      【專利說明】—種Cookie防篡改方法及裝置
      【技術(shù)領(lǐng)域】
      [0001]本申請涉及互聯(lián)網(wǎng)安全【技術(shù)領(lǐng)域】,尤其是一種Cookie防篡改方法及裝置。
      【背景技術(shù)】
      [0002]隨著互聯(lián)網(wǎng)的發(fā)展,訪問WEB網(wǎng)站逐漸成為人們獲取信息的常用手段。用戶在對所述網(wǎng)站進(jìn)行訪問時,發(fā)送的訪問請求中不僅包含訪問目標(biāo)信息,還包含與用戶自身相關(guān)的訪問源信息。其中,所述訪問源信息包含用戶登錄該網(wǎng)站的用戶名及密碼、用戶在該網(wǎng)站定制的顯示樣式、用戶在該網(wǎng)站瀏覽過的網(wǎng)頁等。通常的,該網(wǎng)站的服務(wù)器使用Cookie技術(shù)保存所述訪問源信息,并利用網(wǎng)絡(luò)將所述Cookie在用戶瀏覽器和網(wǎng)站服務(wù)器之間來回傳輸。
      [0003]目前,在網(wǎng)絡(luò)中傳輸?shù)腃ookie使用明文,容易被網(wǎng)站攻擊者獲取,造成用戶信息的泄露。

      【發(fā)明內(nèi)容】

      [0004]有鑒于此,本申請?zhí)峁┝艘环NCookie防篡改方法及裝置,用以解決現(xiàn)有技術(shù)中在網(wǎng)絡(luò)中傳輸?shù)腃ookie使用明文,容易被網(wǎng)站攻擊者獲取,造成用戶信息的泄露的問題。本申請?zhí)峁┑募夹g(shù)方案如下:
      [0005]一種Cookie防篡改方法,包括:
      [0006]獲取服務(wù)器返回給瀏覽器的響應(yīng)數(shù)據(jù)包中的Cookie ;
      [0007]對所述Cookie的首個字段進(jìn)行加密;
      [0008]將含有加密Cookie的響應(yīng)數(shù)據(jù)包發(fā)送至所述瀏覽器。
      [0009]上述方法,優(yōu)選的,所述對所述Cookie的首個字段進(jìn)行加密,包括:
      [0010]利用RC4算法,對所述Cookie的首個字段進(jìn)行加密。
      [0011]上述方法,優(yōu)選的,在獲取服務(wù)器返回給瀏覽器的響應(yīng)數(shù)據(jù)包中的Cookie之后,還包括:
      [0012]獲取所述響應(yīng)數(shù)據(jù)包中的目的IP地址;
      [0013]依據(jù)預(yù)設(shè)加密算法,將所述目的IP地址與預(yù)設(shè)字符串生成標(biāo)識;
      [0014]在所述Cookie中添加所述標(biāo)識;其中,添加的位置非所述Cookie的首個字段。
      [0015]上述方法,優(yōu)選的,在所述對所述Cookie的首個字段進(jìn)行加密之后,還包括:
      [0016]接收瀏覽器發(fā)送的非首個請求數(shù)據(jù)包;其中,所述非首個請求數(shù)據(jù)包中含有所述加密 Cookie ;
      [0017]判斷所述加密Cookie中是否包含有所述標(biāo)識;
      [0018]若是,對所述加密Cookie中的加密字段進(jìn)行解密;將所述解密后的請求數(shù)據(jù)包發(fā)送至所述服務(wù)器;
      [0019]若否,并不進(jìn)行將所述請求數(shù)據(jù)包向所述服務(wù)器發(fā)送的操作。
      [0020]本申請還提供了一種Cookie防篡改裝置,包括:[0021]Cookie獲取單元,用于獲取服務(wù)器返回給瀏覽器的響應(yīng)數(shù)據(jù)包中的Cookie ;
      [0022]Cookie加密單元,用于對所述Cookie的首個字段進(jìn)行加密;
      [0023]數(shù)據(jù)包發(fā)送單元,用于將含有加密Cookie的響應(yīng)數(shù)據(jù)包發(fā)送至所述瀏覽器。
      [0024]上述裝置,優(yōu)選的,所述加密單元包括:
      [0025]第一加密單元,用于利用RC4算法,對所述Cookie的首個字段進(jìn)行加密。
      [0026]上述裝置,優(yōu)選的,還包括:
      [0027]IP獲取單元,用于獲取所述響應(yīng)數(shù)據(jù)包中的目的IP地址;
      [0028]標(biāo)識生成單元,用于依據(jù)預(yù)設(shè)加密算法,將所述目的IP地址與預(yù)設(shè)字符串生成標(biāo)識;
      [0029]標(biāo)識添加單元,用于在所述Cookie中添加所述標(biāo)識;其中,添加的位置非所述Cookie的首個字段。
      [0030]上述裝置,優(yōu)選的,還包括:
      [0031]數(shù)據(jù)包獲取單元,用于接收瀏覽器向所述服務(wù)器發(fā)送的非首個請求數(shù)據(jù)包;其中,所述非首個請求數(shù)據(jù)包中含有所述加密Cookie ;
      [0032]判斷單元,用于判斷所述加密Cookie中是否包含有所述標(biāo)識;若是,觸發(fā)解密單元;
      [0033]解密單元,用于對所述加密Cookie中的加密字段進(jìn)行解密,并將所述解密后的請求數(shù)據(jù)包發(fā)送至所述服務(wù)器。
      [0034]由以上技術(shù)方案可知,與現(xiàn)有技術(shù)相比,本申請?zhí)峁┝艘环NCookie防篡改方法及裝置,該方法通過獲取服務(wù)器返回給瀏覽器的響應(yīng)數(shù)據(jù)包中的Cookie,其中,所述Cookie的所述首個字段中包含有用戶通過所述瀏覽器訪問所述服務(wù)器的各種信息數(shù)據(jù),對所述Cookie的首個字段進(jìn)行加密,并將含有加密Cookie的響應(yīng)數(shù)據(jù)包發(fā)送至所述瀏覽器,從而實(shí)現(xiàn)了對用戶訪問服務(wù)器的數(shù)據(jù)信息的加密,進(jìn)而保證了用戶信息在網(wǎng)絡(luò)傳輸過程中的安全性。
      【專利附圖】

      【附圖說明】
      [0035]為了更清楚地說明本申請實(shí)施例中的技術(shù)方案,下面將對實(shí)施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本申請的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
      [0036]圖1為本申請一種Cookie防篡改方法一個實(shí)施例的流程圖;
      [0037]圖2為本申請一種Cookie防篡改方法另一實(shí)施例的流程圖;
      [0038]圖3為本申請一種Cookie防篡改方法又一實(shí)施例的流程圖;
      [0039]圖4為本申請一種Cookie防篡改裝置一個實(shí)施例的結(jié)構(gòu)示意圖;
      [0040]圖5為本申請一種Cookie防篡改裝置另一實(shí)施例的結(jié)構(gòu)示意圖;
      [0041]圖6為本申請一種Cookie防篡改裝置又一實(shí)施例的結(jié)構(gòu)示意圖。
      【具體實(shí)施方式】
      [0042]下面將結(jié)合本申請實(shí)施例中的附圖,對本申請實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本申請一部分實(shí)施例,而不是全部的實(shí)施例?;诒旧暾堉械膶?shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本申請保護(hù)的范圍。
      [0043]Cookie是用戶通過瀏覽器訪問服務(wù)器的某個資源時,由服務(wù)器在響應(yīng)數(shù)據(jù)包中傳送給所述瀏覽器的一片數(shù)據(jù),服務(wù)器傳送給各個瀏覽器的數(shù)據(jù)可以是不同的。
      [0044]具體地,服務(wù)器接收到用戶發(fā)送的訪問請求后,會生成與該用戶對應(yīng)的Cookie,將該用戶的信息保存在生成的所述Cookie中,將所述Cookie封裝入返回給用戶的響應(yīng)數(shù)據(jù)包中。
      [0045]當(dāng)用戶的瀏覽器接收到該響應(yīng)數(shù)據(jù)包后,將該響應(yīng)數(shù)據(jù)包的Cookie進(jìn)行保存。當(dāng)該用戶再次向該網(wǎng)站發(fā)送訪問請求時,瀏覽器會自動將保存的所述Cookie封裝入所述再次發(fā)送的訪問請求中。當(dāng)然,需要對上述瀏覽器進(jìn)行相關(guān)配置,如自動保存Cookie,才能實(shí)現(xiàn)上述功能。
      [0046]而當(dāng)服務(wù)器再次接收到包含有Cookie的請求數(shù)據(jù)包后,會根據(jù)所述Cookie中包含的用戶信息作出相應(yīng)反應(yīng)動作,如從所述Cookie中獲取所述用戶曾瀏覽過的網(wǎng)頁,根據(jù)該網(wǎng)頁向該用戶返回與該網(wǎng)頁相關(guān)的網(wǎng)頁內(nèi)容。
      [0047]請參閱圖1,其示出了本申請一種Cookie防篡改方法一個實(shí)施例的流程圖,本實(shí)施例可以包括:
      [0048]步驟101:獲取服務(wù)器返回給瀏覽器的響應(yīng)數(shù)據(jù)包中的Cookie。
      [0049]用戶通過瀏覽器向服務(wù)器發(fā)送訪問請求,以觸發(fā)所述服務(wù)器返回與所述訪問請求相對應(yīng)響應(yīng)數(shù)據(jù)包。服務(wù)器會生成與所述用戶相對應(yīng)的Cookie,將所述Cookie封裝在所述響應(yīng)數(shù)據(jù)包中,并將所述包含有Cookie的響應(yīng)數(shù)據(jù)包返回給所述用戶的瀏覽器。
      [0050]所述獲取該響應(yīng)數(shù)據(jù)包的方式,可以是首先獲取所述服務(wù)器返回給瀏覽器的響應(yīng)數(shù)據(jù)包,該響應(yīng)數(shù)據(jù)包中包含有HTTP響應(yīng)頭,所述HTTP響應(yīng)頭中包含有Cookie,然后解析所述響應(yīng)數(shù)據(jù)包,從所述HTTP響應(yīng)頭中獲取所述Cookie。其中,所述獲取所述服務(wù)器返回的響應(yīng)數(shù)據(jù)包的方式可以是利用現(xiàn)有技術(shù)中的抓包工具。
      [0051]需要說明的是,所述Cookie可以是一條,也可以是多條。
      [0052]步驟102:對所述Cookie的首個字段進(jìn)行加密。
      [0053]Cookie的形式可以是至少包含有名稱標(biāo)識與值屬性,其中,所述Cookie的首個字段中包含值屬性,對所述Cookie的首個字段進(jìn)行加密,是對所述Cookie首個字段中的值內(nèi)容進(jìn)行加密。所述值內(nèi)容是所述用戶訪問所述服務(wù)器的用戶信息,例如,登錄該服務(wù)器的用戶名、密碼,在該服務(wù)器上訪問過的網(wǎng)頁,在該服務(wù)器上下載過的內(nèi)容等。另外,Cookie還可以包含有可選屬性,如生存周期、路徑、版本等。
      [0054]其中,所述加密算法并不做限定,現(xiàn)有技術(shù)中能對所述Cookie的值屬性進(jìn)行加密的算法都屬于本申請的保護(hù)范圍。
      [0055]步驟103:將含有加密Cookie的響應(yīng)數(shù)據(jù)包發(fā)送至所述瀏覽器。
      [0056]將包含有經(jīng)過加密的Cookie的響應(yīng)數(shù)據(jù)包返回給所述瀏覽器,以響應(yīng)所述瀏覽器對所述服務(wù)器發(fā)送的訪問請求。
      [0057]在本實(shí)施例中,通過獲取服務(wù)器返回給瀏覽器的響應(yīng)數(shù)據(jù)包中的Cookie,其中,所述Cookie的所述首個字段中包含有用戶通過所述瀏覽器訪問所述服務(wù)器的各種信息數(shù)據(jù),對所述Cookie的首個字段進(jìn)行加密,并將含有加密Cookie的響應(yīng)數(shù)據(jù)包發(fā)送至所述瀏覽器,從而實(shí)現(xiàn)了對用戶訪問服務(wù)器的數(shù)據(jù)信息的加密,進(jìn)而保證了用戶信息在網(wǎng)絡(luò)傳輸過程中的安全性。
      [0058]需要說明的是,還可利用應(yīng)用于所述服務(wù)器的另一方法解決上述問題,具體的,該方法可以包括:接收所述服務(wù)器的發(fā)送模塊返回給所述瀏覽器的響應(yīng)數(shù)據(jù)包,對所述響應(yīng)數(shù)據(jù)包中的Cookie的首個字段進(jìn)行加密,并觸發(fā)所述發(fā)送模塊將包含有經(jīng)過加密的Cookie的響應(yīng)數(shù)據(jù)包返回給所述瀏覽器。
      [0059]另外,上述實(shí)施例中Cookie的形式包括但不限定于所述上述形式,現(xiàn)有技術(shù)中任意位置字段包含有用戶信息的Cookie都屬于本申請的保護(hù)范圍。相應(yīng)地,步驟102中的加密位置字段包括但不限定于上述首個字段,只要是對Cookie中包含的用戶信息字段進(jìn)行加密都屬于本申請的保護(hù)范圍。
      [0060]再者,上述實(shí)施例中的步驟102可以通過以下方式實(shí)現(xiàn):
      [0061]利用RC4算法,對所述Cookie的首個字段進(jìn)行加密。
      [0062]RC4算法是面向字節(jié)流的加密算法,通過在加密地過程中不斷地修改變換表以達(dá)到算法強(qiáng)度和校驗(yàn)序列的完整性。具體地,將所述Cookie首個字段,即所述Cookie的值作為該算法的輸入,利用預(yù)設(shè)參數(shù)及密鑰進(jìn)行隨機(jī)處理后生成子密鑰序列,將所述子密鑰序列與所述Cookie的值內(nèi)容進(jìn)行異或運(yùn)算后得到加密密文。
      [0063]將所述Cookie首個字段的值內(nèi)容更換為所述生成的加密密文,從而實(shí)現(xiàn)對所述Cookie首個字段的加密,即首個字段的值內(nèi)容的加密。
      [0064]請參閱圖2,其示出了本申請一種Cookie防篡改方法另一實(shí)施例的流程圖,本實(shí)施例可以包括:
      [0065]步驟201:獲取服務(wù)器返回給瀏覽器的響應(yīng)數(shù)據(jù)包中的Cookie。
      [0066]步驟202:對所述Cookie的首個字段進(jìn)行加密。
      [0067]其中,所述步驟201及步驟202與上述實(shí)施例的步驟101及步驟102相同,在此不
      再贅述。
      [0068]步驟203:獲取所述響應(yīng)數(shù)據(jù)包中的目的IP地址。
      [0069]所述響應(yīng)數(shù)據(jù)包中包含有目的IP地址字段,所述目的IP字段用于指向所述瀏覽器所在的計(jì)算機(jī)設(shè)備,以使所述響應(yīng)數(shù)據(jù)包被返回給所述瀏覽器。例如,192.168.0.22。
      [0070]步驟204:依據(jù)預(yù)設(shè)加密算法,將所述目的IP地址與預(yù)設(shè)字符串生成標(biāo)識。
      [0071]其中,所述預(yù)設(shè)字符串,是預(yù)先隨意設(shè)置的一串字符串。將所述目的IP地址的前和/或后加上所述預(yù)設(shè)字符串,作為待加密對象。
      [0072]當(dāng)然,所述預(yù)設(shè)加密算法包括但不限定于MD5算法。
      [0073]其中,MD5算法(Message-Digest Algorithm5,信息-摘要算法),將待加密文本作為輸入內(nèi)容,經(jīng)過數(shù)據(jù)運(yùn)算生成與該待加密文本唯一對應(yīng)的整數(shù)值,將該整數(shù)值作為該待加密文本。具體地,MD5算法以512位分組來處理輸入的所述目的IP地址及預(yù)設(shè)字符串,每一分組又劃分為16個32位子分組,算法的輸出由四個32位分組組成,將它們級聯(lián)形成一個128位散列值,將該散列值確定為所述標(biāo)識。
      [0074]步驟205:在所述Cookie中添加所述標(biāo)識;其中,添加的位置非所述Cookie的首個字段。[0075]其中,所述添加的方式可以是,在所述Cookie中添加新的屬性如簽名屬性,將所述標(biāo)識作為所述新的屬性的值。
      [0076]需要說明的是,所述Cookie的首個字段是與所述Cookie名稱相對應(yīng)的值內(nèi)容,SP所述用戶的訪問信息,則所述標(biāo)識不能添加在所述Cookie的首個字段處。
      [0077]步驟206:將含有加密Cookie的響應(yīng)數(shù)據(jù)包發(fā)送至所述瀏覽器。
      [0078]需要說明的是,本實(shí)施例中的步驟203的執(zhí)行順序并不限定于此,可以是與步驟201同時執(zhí)行,或可以是與步驟202同時執(zhí)行,或可以是在步驟201與步驟202之間執(zhí)行。
      [0079]在本實(shí)施例中,通過生成與該瀏覽器相對應(yīng)的標(biāo)識,用該標(biāo)識對所述瀏覽器向所述服務(wù)器發(fā)送的請求數(shù)據(jù)包進(jìn)行標(biāo)記。
      [0080]請參閱圖3,其示出了本申請一種Cookie防篡改方法又一實(shí)施例的流程圖,在上一實(shí)施例的方法之后,本實(shí)施例可以包括:
      [0081]步驟207:接收瀏覽器發(fā)送的非首個請求數(shù)據(jù)包;其中,所述非首個請求數(shù)據(jù)包中含有所述加密Cookie。
      [0082]當(dāng)用戶的瀏覽器接收到所述服務(wù)器返回的所述響應(yīng)數(shù)據(jù)包后,將該響應(yīng)數(shù)據(jù)包的Cookie進(jìn)行保存。當(dāng)該用戶再次向該網(wǎng)站發(fā)送請求數(shù)據(jù)包時,瀏覽器會自動將保存的所述Cookie封裝入所述再次發(fā)送的請求數(shù)據(jù)包中。當(dāng)然,需要對上述瀏覽器進(jìn)行相關(guān)配置,如自動保存Cookie,才能實(shí)現(xiàn)上述功能。
      [0083]需要說明的是,若所述服務(wù)器返回多條Cookie,所述瀏覽器將所述多條Cookie封裝成一條Cookie添加到所述非首個請求數(shù)據(jù)包中。當(dāng)然,所述Cookie是經(jīng)過步驟202加密后的Cookie。
      [0084]步驟208:判斷所述加密Cookie中是否包含有所述標(biāo)識;若是,執(zhí)行步驟209 ;若否,并不進(jìn)行將所述非首個請求數(shù)據(jù)包向所述服務(wù)器發(fā)送的操作。
      [0085]所述判斷方式可以是解析所述非首個請求數(shù)據(jù)包,以判斷所述請求數(shù)據(jù)包中是否包含有所述標(biāo)識。
      [0086]需要說明的是,當(dāng)所述加密Cookie中并不包含有所述標(biāo)識時,將所述非首個請求數(shù)據(jù)包確定為Cookie經(jīng)過篡改的數(shù)據(jù)包,并不將所述非首個請求數(shù)據(jù)包向所述服務(wù)器發(fā)送。同時,可將所述非首個請求數(shù)據(jù)包進(jìn)行記錄后并刪除。其中,所述加密Cookie中并不包含有所述標(biāo)識的情況可以包括以下情況:一是,所述加密Cookie中包含有標(biāo)識屬性字段,但該標(biāo)識屬性字段中的內(nèi)容與所述步驟204中生成的標(biāo)識并不相同。二是,所述加密Cookie中未包含有標(biāo)識屬性字段,則不包含有所述標(biāo)識。當(dāng)然,第二種情況中的Cookie是經(jīng)過加密的。
      [0087]需要說明的是,若接收到的請求數(shù)據(jù)包中的Cookie中未包含有標(biāo)識屬性字段,且所述Cookie也未經(jīng)過加密,則可能是瀏覽器已經(jīng)保存有未加密Cookie并將所述未加密的Cookie封裝入步驟207中接收到的所述請求數(shù)據(jù)包中??梢詫⑺稣埱髷?shù)據(jù)包發(fā)送至所述服務(wù)器,當(dāng)接收到所述服務(wù)器返回的與該請求數(shù)據(jù)包對應(yīng)的響應(yīng)數(shù)據(jù)包時,對所述響應(yīng)數(shù)據(jù)包中的Cookie加密,并將所述經(jīng)過加密的Cookie向所述瀏覽器發(fā)送。當(dāng)然,也可以不將所述請求數(shù)據(jù)包向所述服務(wù)器發(fā)送。
      [0088]步驟209:對所述加密Cookie中的加密字段進(jìn)行解密;將所述解密后的請求數(shù)據(jù)包發(fā)送至所述服務(wù)器;[0089]依據(jù)與所述加密算法相對應(yīng)的解密算法即RC4算法,對所述加密Cookie進(jìn)行解密,并將解密后的數(shù)據(jù)包發(fā)送至所述服務(wù)器,以使所述服務(wù)器正常地接收所述瀏覽器發(fā)送的請求數(shù)據(jù)包。
      [0090]包含有Cookie的數(shù)據(jù)包可能被網(wǎng)絡(luò)攻擊者截獲,并對所述數(shù)據(jù)包中的部分或全部內(nèi)容進(jìn)行篡改后向所述服務(wù)器進(jìn)行發(fā)送。例如,將所述數(shù)據(jù)包的源IP地址進(jìn)行修改,企圖觸發(fā)所述服務(wù)器將與所述請求數(shù)據(jù)包對應(yīng)的響應(yīng)數(shù)據(jù)包返回至所述篡改后的源IP地址。在本實(shí)施例中,通過生成與該瀏覽器相對應(yīng)的標(biāo)識,用該標(biāo)識對所述瀏覽器向所述服務(wù)器發(fā)送的請求數(shù)據(jù)包進(jìn)行標(biāo)記,判斷發(fā)送給所述服務(wù)器的請求數(shù)據(jù)包中加密Cookie中是否包含有所述標(biāo)識,當(dāng)不包含時,并不進(jìn)行將所述請求數(shù)據(jù)包向所述服務(wù)器進(jìn)行轉(zhuǎn)發(fā)的操作,從而實(shí)現(xiàn)了保證用戶信息安全性的目的。
      [0091]需要說明的是,上述實(shí)施例方法可以應(yīng)用于所述服務(wù)器與所述瀏覽器之間的網(wǎng)絡(luò)中間設(shè)備,如所述服務(wù)器端的防火墻。具體實(shí)現(xiàn)方式是:
      [0092]接收瀏覽器發(fā)送的首個請求數(shù)據(jù)包,并將該首個請求數(shù)據(jù)包發(fā)送至所述服務(wù)器,以觸發(fā)所述服務(wù)器返回與該首個請求數(shù)據(jù)包對應(yīng)的響應(yīng)數(shù)據(jù)包,所述響應(yīng)數(shù)據(jù)包中包含有與該瀏覽器對應(yīng)的Cookie ;
      [0093]接收所述首個響應(yīng)數(shù)據(jù)包,對所述首個響應(yīng)數(shù)據(jù)包中的Cookie進(jìn)行加密,獲取所述首個響應(yīng)數(shù)據(jù)包中的目的IP地址,依據(jù)預(yù)設(shè)加密算法,將所述目的IP地址與預(yù)設(shè)字符串生成標(biāo)識,在所述Cookie中添加所述標(biāo)識;
      [0094]將包含有加密Cookie的首個響應(yīng)數(shù)據(jù)包返回給所述瀏覽器;
      [0095]接收所述瀏覽器發(fā)送的非首個請求數(shù)據(jù)包;其中,所述非首個請求數(shù)據(jù)包中包含有所述加密Cookei ;
      [0096]判斷所述加密Cookie中是否包含有所述標(biāo)識;若是,對所述加密Cookie進(jìn)行解密,將所述解密后的非首個請求數(shù)據(jù)包發(fā)送至所述服務(wù)器;若否,并不執(zhí)行所述解密及發(fā)送操作。
      [0097]請參閱圖4,其示出了本申請一種Cookie防篡改裝置一個實(shí)施例的結(jié)構(gòu)示意圖,本實(shí)施例可以包括=Cookie獲取單元401、Cookie加密單元402及數(shù)據(jù)包發(fā)送單元403。其中:
      [0098]所述Cookie獲取單元401,用于獲取服務(wù)器返回給瀏覽器的響應(yīng)數(shù)據(jù)包中的Cookie。
      [0099]用戶通過瀏覽器向服務(wù)器發(fā)送訪問請求,以觸發(fā)所述服務(wù)器返回與所述訪問請求相對應(yīng)響應(yīng)數(shù)據(jù)包。服務(wù)器會生成與所述用戶相對應(yīng)的Cookie,將所述Cookie封裝在所述響應(yīng)數(shù)據(jù)包中,并將所述包含有Cookie的響應(yīng)數(shù)據(jù)包返回給所述用戶的瀏覽器。
      [0100]所述Cookie獲取單元401獲取該響應(yīng)數(shù)據(jù)包的方式,可以是首先獲取所述服務(wù)器返回給瀏覽器的響應(yīng)數(shù)據(jù)包,該響應(yīng)數(shù)據(jù)包中包含有HTTP響應(yīng)頭,所述HTTP響應(yīng)頭中包含有Cookie,然后解析所述響應(yīng)數(shù)據(jù)包,從所述HTTP響應(yīng)頭中獲取所述Cookie。其中,所述Cookie獲取單元401獲取所述服務(wù)器返回的響應(yīng)數(shù)據(jù)包的方式可以是利用現(xiàn)有技術(shù)中的抓包工具。
      [0101]需要說明的是,所述Cookie獲取單元401獲取到的所述Cookie可以是一條,也可以是多條。[0102]所述Cookie加密單元402,用于對所述Cookie的首個字段進(jìn)行加密。
      [0103]Cookie的形式可以是至少包含有名稱標(biāo)識與值屬性,其中,所述Cookie的首個字段中包含值屬性,所述Cookie加密單元402對所述Cookie的首個字段進(jìn)行加密,是對所述Cookie首個字段中的值內(nèi)容進(jìn)行加密。所述值屬性內(nèi)容是所述用戶訪問所述服務(wù)器的用戶信息,例如,登錄該服務(wù)器的用戶名、密碼,在該服務(wù)器上訪問過的網(wǎng)頁,在該服務(wù)器上下載過的內(nèi)容等。另外,Cookie還可以包含有可選屬性,如生存周期、路徑、版本等。
      [0104]現(xiàn)有技術(shù)中能對所述Cookie的值屬性進(jìn)行加密的算法都屬于本申請的保護(hù)范圍。
      [0105]所述數(shù)據(jù)包發(fā)送單元403,用于將含有加密Cookie的響應(yīng)數(shù)據(jù)包發(fā)送至所述瀏覽器。
      [0106]所述數(shù)據(jù)包發(fā)送單元403將包含有經(jīng)過加密的Cookie的響應(yīng)數(shù)據(jù)包返回給所述瀏覽器,以響應(yīng)所述瀏覽器對所述服務(wù)器發(fā)送的訪問請求。
      [0107]在本實(shí)施例中,所述Cookie獲取單元401通過獲取服務(wù)器返回給瀏覽器的響應(yīng)數(shù)據(jù)包中的Cookie,其中,所述Cookie的所述首個字段中包含有用戶通過所述瀏覽器訪問所述服務(wù)器的各種信息數(shù)據(jù),所述Cookie加密單元402對所述Cookie的首個字段進(jìn)行加密,所述數(shù)據(jù)包發(fā)送單元403將含有加密Cookie的響應(yīng)數(shù)據(jù)包發(fā)送至所述瀏覽器,從而實(shí)現(xiàn)了對用戶訪問服務(wù)器的數(shù)據(jù)信息的加密,進(jìn)而保證了用戶信息在網(wǎng)絡(luò)傳輸過程中的安全性。
      [0108]需要說明的是,還可利用應(yīng)用于所述服務(wù)器的另一裝置解決上述問題,具體的,該裝置可以包括:接收模塊,用于接收所述服務(wù)器的發(fā)送模塊返回給所述瀏覽器的響應(yīng)數(shù)據(jù)包;加密模塊,用于對所述響應(yīng)數(shù)據(jù)包中的Cookie的首個字段進(jìn)行加密,并觸發(fā)所述發(fā)送模塊將包含有經(jīng)過加密的Cookie的響應(yīng)數(shù)據(jù)包返回給所述瀏覽器。
      [0109]另外,上述實(shí)施例中Cookie的形式包括但不限定于所述上述形式,現(xiàn)有技術(shù)中任意位置字段包含有用戶信息的Cookie都屬于本申請的保護(hù)范圍。相應(yīng)地,所述Cookie加密單元402進(jìn)行加密的加密位置字段包括但不限定于上述首個字段,只要是對Cookie中包含的用戶信息字段進(jìn)行加密都屬于本申請的保護(hù)范圍。
      [0110]再者,上述實(shí)施例中所述Cookie加密單元402可以通過以下方式實(shí)現(xiàn):第一加密單元。
      [0111]所述第一加密單元,用于利用RC4算法,對所述Cookie的首個字段進(jìn)行加密。
      [0112]RC4算法是面向字節(jié)流的加密算法,通過在加密地過程中不斷地修改變換表以達(dá)到算法強(qiáng)度和校驗(yàn)序列的完整性。具體地,所述第一加密單元將所述Cookie首個字段,即所述Cookie的值作為該算法的輸入,利用預(yù)設(shè)參數(shù)及密鑰進(jìn)行隨機(jī)處理后生成子密鑰序列,將所述子密鑰序列與所述Cookie的值內(nèi)容進(jìn)行異或運(yùn)算后得到加密密文。
      [0113]所述第一加密單元將所述Cookie首個字段的值內(nèi)容更換為所述生成的加密密文,從而實(shí)現(xiàn)對所述Cookie首個字段的加密,即首個字段的值內(nèi)容的加密。
      [0114]請參閱圖5,其示出了本申請一種Cookie防篡改裝置另一實(shí)施例的結(jié)構(gòu)示意圖,本實(shí)施例可以包括=Cookie獲取單元401、Cookie加密單元402、IP獲取單元403、標(biāo)識生成單元404、標(biāo)識添加單元405及數(shù)據(jù)包發(fā)送單元406。其中:
      [0115]所述單元401、402及406與上述實(shí)施例的說明相同,在此不作贅述。
      [0116]所述IP獲取單元403,用于獲取所述響應(yīng)數(shù)據(jù)包中的目的IP地址。[0117]所述IP獲取單元403獲取到的所述目的IP字段用于指向所述瀏覽器所在的計(jì)算機(jī)設(shè)備,以使所述響應(yīng)數(shù)據(jù)包被返回給所述瀏覽器。例如,192.168.0.22。
      [0118]所述標(biāo)識生成單元404,用于依據(jù)預(yù)設(shè)加密算法,將所述目的IP地址與預(yù)設(shè)字符串生成標(biāo)識。
      [0119]其中,所述預(yù)設(shè)字符串,可以是預(yù)先隨意設(shè)置的一串字符串。所述標(biāo)識生成單元404將所述目的IP地址的前和/或后加上所述預(yù)設(shè)字符串,作為待加密對象。
      [0120]當(dāng)然,所述預(yù)設(shè)加密算法包括但不限定于MD5算法。
      [0121]其中,MD5算法(Message-Digest Algorithm5,信息-摘要算法),將待加密文本作為輸入內(nèi)容,經(jīng)過數(shù)據(jù)運(yùn)算生成與該待加密文本唯一對應(yīng)的整數(shù)值,將該整數(shù)值作為該待加密文本。具體地,所述標(biāo)識生成單元404利用MD5算法以512位分組來處理輸入的所述目的IP地址及預(yù)設(shè)字符串,每一分組又劃分為16個32位子分組,算法的輸出由四個32位分組組成,將它們級聯(lián)形成一個128位散列值,將該散列值確定為所述標(biāo)識。
      [0122]所述標(biāo)識添加單元405,用于在所述Cookie中添加所述標(biāo)識;其中,添加的位置非所述Cookie的首個字段。
      [0123]其中,所述標(biāo)識添加單元405添加的方式可以是,在所述Cookie中添加新的屬性如簽名屬性,將所述標(biāo)識作為所述新的屬性的值。
      [0124]需要說明的是,所述Cookie的首個字段是與所述Cookie名稱相對應(yīng)的值內(nèi)容,即所述用戶的訪問信息,則所述標(biāo)識不能添加在所述Cookie的首個字段處。
      [0125]需要說明的是,本實(shí)施例的所述IP獲取單元403并不限定于此種連接方式??梢允桥cCookie獲取單元401相連,與所述Cookie獲取單元401同時執(zhí)行,或可以是所述Cookie加密單元402相連,與所述Cookie加密單元402同時執(zhí)行,或可以是分別與所述Cookie獲取單元401及所述Cookie加密單元402相連,被所述Cookie獲取單元401觸發(fā)執(zhí)行,再觸發(fā)所述Cookie加密單元402執(zhí)行。
      [0126]在本實(shí)施例中,所述標(biāo)識生成單元404通過生成與該瀏覽器相對應(yīng)的標(biāo)識,用該標(biāo)識對所述瀏覽器向所述服務(wù)器發(fā)送的請求數(shù)據(jù)包進(jìn)行標(biāo)記。
      [0127]請參閱圖6,其示出了本申請一種Cookie防篡改方法又一實(shí)施例的結(jié)構(gòu)示意圖,在圖5所示實(shí)施例的基礎(chǔ)上,本實(shí)施例還可以包括:數(shù)據(jù)包獲取單元407、判斷單元408及解密單元409。其中:
      [0128]所述數(shù)據(jù)包獲取單元407,用于接收瀏覽器發(fā)送的非首個請求數(shù)據(jù)包;其中,所述非首個請求數(shù)據(jù)包中含有所述加密Cookie。
      [0129]當(dāng)用戶的瀏覽器接收到所述服務(wù)器返回的所述響應(yīng)數(shù)據(jù)包后,將該響應(yīng)數(shù)據(jù)包的Cookie進(jìn)行保存。當(dāng)該用戶再次向該網(wǎng)站發(fā)送請求數(shù)據(jù)包時,瀏覽器會自動將保存的所述Cookie封裝入所述再次發(fā)送的請求數(shù)據(jù)包中。當(dāng)然,需要對上述瀏覽器進(jìn)行相關(guān)配置,如自動保存Cookie,才能實(shí)現(xiàn)上述功能。
      [0130]需要說明的是,若所述服務(wù)器返回多條Cookie,所述瀏覽器將所述多條Cookie封裝成一條Cookie添加到所述非首個請求數(shù)據(jù)包中。當(dāng)然,所述Cookie是經(jīng)過所述Cookie加密單元402加密后的Cookie。
      [0131]所述判斷單元408,用于判斷所述加密Cookie中是否包含有所述標(biāo)識;若是,觸發(fā)所述解密單元409 ;若否,并不進(jìn)行將所述非首個請求數(shù)據(jù)包向所述服務(wù)器發(fā)送的操作。[0132]所述判斷單元408的判斷方式可以是解析所述非首個請求數(shù)據(jù)包,以判斷所述請求數(shù)據(jù)包中是否包含有所述標(biāo)識。
      [0133]需要說明的是,當(dāng)所述加密Cookie中并不包含有所述標(biāo)識時,所述判斷單元408將所述非首個請求數(shù)據(jù)包確定為Cookie經(jīng)過篡改的數(shù)據(jù)包,并不將所述非首個請求數(shù)據(jù)包向所述服務(wù)器發(fā)送。同時,所述判斷單元408可將所述非首個請求數(shù)據(jù)包進(jìn)行記錄后并刪除。其中,所述加密Cookie中并不包含有所述標(biāo)識的情況可以包括以下情況:一是,所述加密Cookie中包含有標(biāo)識屬性字段,但該標(biāo)識屬性字段中的內(nèi)容與所述步驟204中生成的標(biāo)識并不相同。二是,所述加密Cookie中未包含有標(biāo)識屬性字段,則不包含有所述標(biāo)識。當(dāng)然,第二種情況中的Cookie是經(jīng)過加密的。
      [0134]需要說明的是,若所述數(shù)據(jù)包獲取單元407接收到的請求數(shù)據(jù)包中的Cookie中未包含有標(biāo)識屬性字段,且所述Cookie也未經(jīng)過加密,則可能是瀏覽器已經(jīng)保存有未加密Cookie并將所述未加密的Cookie封裝入步驟207中接收到的所述請求數(shù)據(jù)包中。所述判斷單元408可以將所述請求數(shù)據(jù)包發(fā)送至所述服務(wù)器,當(dāng)Cookie獲取單元接收到所述服務(wù)器返回的與該請求數(shù)據(jù)包對應(yīng)的響應(yīng)數(shù)據(jù)包時,Cookie加密單元對所述響應(yīng)數(shù)據(jù)包中的Cookie加密,數(shù)據(jù)包發(fā)送單元將所述經(jīng)過加密的Cookie向所述瀏覽器發(fā)送。當(dāng)然,所述判斷單元408也可以不將所述請求數(shù)據(jù)包向所述服務(wù)器發(fā)送。
      [0135]所述解密單元409,用于對所述加密Cookie中的加密字段進(jìn)行解密;將所述解密后的請求數(shù)據(jù)包發(fā)送至所述服務(wù)器;
      [0136]所述解密單元409依據(jù)與所述加密算法相對應(yīng)的解密算法即RC4算法,對所述加密Cookie進(jìn)行解密,并將解密后的數(shù)據(jù)包發(fā)送至所述服務(wù)器,以使所述服務(wù)器正常地接收所述瀏覽器發(fā)送的請求數(shù)據(jù)包。
      [0137]包含有Cookie的數(shù)據(jù)包可能被網(wǎng)絡(luò)攻擊者截獲,并對所述數(shù)據(jù)包中的部分或全部內(nèi)容進(jìn)行篡改后向所述服務(wù)器進(jìn)行發(fā)送。例如,將所述數(shù)據(jù)包的源IP地址進(jìn)行修改,企圖觸發(fā)所述服務(wù)器將與所述請求數(shù)據(jù)包對應(yīng)的響應(yīng)數(shù)據(jù)包返回至所述篡改后的源IP地址。在本實(shí)施例中,標(biāo)識生成單元404通過生成與該瀏覽器相對應(yīng)的標(biāo)識,用該標(biāo)識對所述瀏覽器向所述服務(wù)器發(fā)送的請求數(shù)據(jù)包進(jìn)行標(biāo)記,所述判斷單元408判斷發(fā)送給所述服務(wù)器的請求數(shù)據(jù)包中的加密Cookie是否包含有所述標(biāo)識,當(dāng)不包含時,并不進(jìn)行將所述請求數(shù)據(jù)包向所述服務(wù)器進(jìn)行轉(zhuǎn)發(fā)的操作,從而實(shí)現(xiàn)了保證用戶信息安全性的目的。
      [0138]需要說明的是,上述裝置實(shí)施例可以應(yīng)用于所述服務(wù)器與所述瀏覽器之間的網(wǎng)絡(luò)中間設(shè)備,如所述服務(wù)器端的防火墻。具體可以通過以下方法實(shí)現(xiàn):
      [0139]第一接收單元,用于接收瀏覽器發(fā)送的首個請求數(shù)據(jù)包,并將該首個請求數(shù)據(jù)包發(fā)送至所述服務(wù)器,以觸發(fā)所述服務(wù)器返回與該首個請求數(shù)據(jù)包對應(yīng)的響應(yīng)數(shù)據(jù)包,所述響應(yīng)數(shù)據(jù)包中包含有與該瀏覽器對應(yīng)的Cookie ;
      [0140]第二接收單元,用于接收所述首個響應(yīng)數(shù)據(jù)包,對所述首個響應(yīng)數(shù)據(jù)包中的Cookie進(jìn)行加密,獲取所述首個響應(yīng)數(shù)據(jù)包中的目的IP地址,依據(jù)預(yù)設(shè)加密算法,將所述目的IP地址與預(yù)設(shè)字符串生成標(biāo)識,在所述Cookie中添加所述標(biāo)識;
      [0141]第一返回單元,用于將包含有加密Cookie的首個響應(yīng)數(shù)據(jù)包返回給所述瀏覽器;
      [0142]第三接收單元,用于接收所述瀏覽器發(fā)送的非首個請求數(shù)據(jù)包;其中,所述非首個請求數(shù)據(jù)包中包含有所述加密Cookei ;[0143]判斷單元,用于判斷所述加密Cookie中是否包含有所述標(biāo)識;若是,觸發(fā)第二返回單元;
      [0144]第二返回單元,用于對所述加密Cookie進(jìn)行解密,將所述解密后的非首個請求數(shù)據(jù)包發(fā)送至所述服務(wù)器;若否,并不執(zhí)行所述解密及發(fā)送操作。
      [0145]需要說明的是,本說明書中的各個實(shí)施例均采用遞進(jìn)的方式描述,每個實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處,各個實(shí)施例之間相同相似的部分互相參見即可。
      [0146]以上對本發(fā)明所提供的一種Cookie防篡改方法及裝置進(jìn)行了詳細(xì)介紹,對所公開的實(shí)施例的上述說明,使本領(lǐng)域?qū)I(yè)技術(shù)人員能夠?qū)崿F(xiàn)或使用本發(fā)明。對這些實(shí)施例的多種修改對本領(lǐng)域的專業(yè)技術(shù)人員來說將是顯而易見的,本文所定義一般原理可以在不脫離本發(fā)明的精神或范圍的情況下,在其它實(shí)施例中實(shí)現(xiàn)。因此,本發(fā)明將不會被限制于本文所示的這些實(shí)施例,而是要符合與本文所公開的原理和新穎特點(diǎn)相一致的最寬的范圍。
      【權(quán)利要求】
      1.一種Cookie防篡改方法,其特征在于,包括: 獲取服務(wù)器返回給瀏覽器的響應(yīng)數(shù)據(jù)包中的Cookie ; 對所述Cookie的首個字段進(jìn)行加密; 將含有加密Cookie的響應(yīng)數(shù)據(jù)包發(fā)送至所述瀏覽器。
      2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述對所述Cookie的首個字段進(jìn)行加密,包括: 利用RC4算法,對所述Cookie的首個字段進(jìn)行加密。
      3.根據(jù)權(quán)利要求1所述的方法,其特征在于,在獲取服務(wù)器返回給瀏覽器的響應(yīng)數(shù)據(jù)包中的Cookie之后,還包括: 獲取所述響應(yīng)數(shù)據(jù)包中的目的IP地址; 依據(jù)預(yù)設(shè)加密算法,將所述目的IP地址與預(yù)設(shè)字符串生成標(biāo)識; 在所述Cookie中添加所述標(biāo)識;其中,添加的位置非所述Cookie的首個字段。
      4.根據(jù)權(quán)利要求3所述的方法,其特征在于,在所述對所述Cookie的首個字段進(jìn)行加密之后,還包括: 接收瀏覽器發(fā)送的非首個請求數(shù)據(jù)包;其中,所述非首個請求數(shù)據(jù)包中含有所述加密Cookie ; 判斷所述加密Cookie中是否包含有所述標(biāo)識; 若是,對所述加密Cookie中的加密字段進(jìn)行解密;將所述解密后的請求數(shù)據(jù)包發(fā)送至所述服務(wù)器; 若否,并不進(jìn)行將所述請求數(shù)據(jù)包向所述服務(wù)器發(fā)送的操作。
      5.一種Cookie防篡改裝置,其特征在于,包括: Cookie獲取單元,用于獲取服務(wù)器返回給瀏覽器的響應(yīng)數(shù)據(jù)包中的Cookie ; Cookie加密單元,用于對所述Cookie的首個字段進(jìn)行加密; 數(shù)據(jù)包發(fā)送單元,用于將含有加密Cookie的響應(yīng)數(shù)據(jù)包發(fā)送至所述瀏覽器。
      6.根據(jù)權(quán)利要求5所述的裝置,其特征在于,所述加密單元包括: 第一加密單元,用于利用RC4算法,對所述Cookie的首個字段進(jìn)行加密。
      7.根據(jù)權(quán)利要求5所述的裝置,其特征在于,還包括: IP獲取單元,用于獲取所述響應(yīng)數(shù)據(jù)包中的目的IP地址; 標(biāo)識生成單元,用于依據(jù)預(yù)設(shè)加密算法,將所述目的IP地址與預(yù)設(shè)字符串生成標(biāo)識;標(biāo)識添加單元,用于在所述Cookie中添加所述標(biāo)識;其中,添加的位置非所述Cookie的首個字段。
      8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,還包括: 數(shù)據(jù)包獲取單元,用于接收瀏覽器向所述服務(wù)器發(fā)送的非首個請求數(shù)據(jù)包;其中,所述非首個請求數(shù)據(jù)包中含有所述加密Cookie ; 判斷單元,用于判斷所述加密Cookie中是否包含有所述標(biāo)識;若是,觸發(fā)解密單元; 解密單元,用于對所述加密Cookie中的加密字段進(jìn)行解密,并將所述解密后的請求數(shù)據(jù)包發(fā)送至所述服務(wù)器。
      【文檔編號】H04L29/06GK103618754SQ201310711796
      【公開日】2014年3月5日 申請日期:2013年12月20日 優(yōu)先權(quán)日:2013年12月20日
      【發(fā)明者】奚道通, 孫應(yīng)娥, 張青, 高隆林 申請人:山東中創(chuàng)軟件商用中間件股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1