專(zhuān)利名稱(chēng):一種網(wǎng)頁(yè)請(qǐng)求安全處理方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及互聯(lián)網(wǎng)安全領(lǐng)域,尤其涉及ー種網(wǎng)頁(yè)請(qǐng)求安全處理方法及系統(tǒng)。
背景技術(shù):
互聯(lián)網(wǎng)中的信息安全問(wèn)題一直是該領(lǐng)域中非常重要的問(wèn)題。其中,CSRF(Cross-site request forgery,跨站請(qǐng)求偽造)是ー種常見(jiàn)的通過(guò)對(duì)網(wǎng)頁(yè)的惡意利用從而盜取用戶(hù)信息的一種技術(shù),該技術(shù)也被稱(chēng)成為“one click attack”或者“sessionriding”,還可縮寫(xiě)為XSRF。CSRF利用用戶(hù)在已登陸網(wǎng)站A上的登陸狀態(tài),在B網(wǎng)站的頁(yè)面上通過(guò)http(HyperText Transfer Protocol,超文本傳輸協(xié)議)請(qǐng)求(隱藏的圖片或者腳本引用)的方式在A網(wǎng)站上進(jìn)行需要登陸驗(yàn)證的操作,從而達(dá)到攻擊或竊取隱私信息的目的。這在多窗ロ瀏覽器中尤為常見(jiàn)。由于瀏覽器本身的特性,在發(fā)起ー個(gè)url請(qǐng)求時(shí)會(huì)自動(dòng)在請(qǐng)求的數(shù)據(jù)包中附加上瀏覽器在該url的所在域名下的相關(guān)cookie數(shù)據(jù)。當(dāng)用戶(hù)在ー個(gè)瀏覽器窗口中登陸了 A網(wǎng)站,再同時(shí)開(kāi)另外ー個(gè)窗ロ訪(fǎng)問(wèn)B網(wǎng)站。如果B網(wǎng)頁(yè)中的ー個(gè)元素發(fā)起了ー個(gè)A網(wǎng)站某個(gè)頁(yè)面的請(qǐng)求,這時(shí)這個(gè)請(qǐng)求會(huì)自動(dòng)被瀏覽器帶上用戶(hù)在A網(wǎng)站的cookie,從而實(shí)現(xiàn)以登陸后的身份對(duì)A網(wǎng)站的操作。其中請(qǐng)求的發(fā)起操作有多種形式,一般表現(xiàn)為把請(qǐng)求的url作為頁(yè)面中圖片、iframe之類(lèi)元素的路徑來(lái)實(shí)現(xiàn),比較復(fù)雜的會(huì)通過(guò)隱藏的腳本代碼或者flash組件來(lái)發(fā)起?;谏鲜龅脑?,若用戶(hù)在ー個(gè)多窗ロ瀏覽器中購(gòu)物網(wǎng)頁(yè)進(jìn)行了登陸,黑客通過(guò)在某網(wǎng)頁(yè)中加入特定的鏈接,該鏈接則可能是偽造的上述購(gòu)物網(wǎng)頁(yè)的付費(fèi)鏈接,則當(dāng)用戶(hù)同時(shí)打開(kāi)該某網(wǎng)頁(yè)時(shí)則相當(dāng)于向用戶(hù)已登錄的購(gòu)物網(wǎng)頁(yè)發(fā)送了付費(fèi)請(qǐng)求。為了防御上述的CSRF攻擊,在現(xiàn)有技術(shù)中提出了三種方式
(1)通過(guò)人工或系統(tǒng)掃描尋找存在CSRF漏洞的網(wǎng)頁(yè)和接ロ,開(kāi)發(fā)人員收到漏洞報(bào)告后,針對(duì)性的進(jìn)行相應(yīng)的修復(fù);
(2)瞬時(shí)授權(quán)方法姆次訪(fǎng)問(wèn)請(qǐng)求使用一個(gè)臨時(shí)token來(lái)做為訪(fǎng)問(wèn)的安全標(biāo)記;
(3)用post代替get方式提交數(shù)據(jù)請(qǐng)求。但是上述三種方法分別具有自身的局限性
(O人力成本高、被動(dòng)需要開(kāi)發(fā)人員不斷的對(duì)發(fā)現(xiàn)的漏洞進(jìn)行跟進(jìn)修復(fù);無(wú)法保證所有的CSRF漏洞都能及時(shí)發(fā)現(xiàn)并解決;且無(wú)法杜絕后續(xù)開(kāi)發(fā)中新的CSRF漏洞出現(xiàn);
(2)開(kāi)發(fā)成本高同樣功能開(kāi)發(fā)需要使用更復(fù)雜的設(shè)計(jì)方案,且不適用于靜態(tài)網(wǎng)頁(yè); (3)安全性差、開(kāi)發(fā)成本高攻擊者可以通過(guò)多種方式模擬post請(qǐng)求;如果需要在已經(jīng)成熟的網(wǎng)站上進(jìn)行部署的話(huà)需要投入大量的資源進(jìn)行代碼調(diào)整
發(fā)明內(nèi)容
本發(fā)明實(shí)施例所要解決的技術(shù)問(wèn)題在于,提供ー種網(wǎng)頁(yè)請(qǐng)求安全處理方法及系統(tǒng)??稍趯?duì)整個(gè)系統(tǒng)改造小的情況下實(shí)現(xiàn)對(duì)CRSF攻擊的識(shí)別和防御。為了解決上述技術(shù)問(wèn)題,本發(fā)明實(shí)施例提供了ー種網(wǎng)頁(yè)請(qǐng)求安全處理方法,包括
步驟I、瀏覽器側(cè)的當(dāng)前網(wǎng)頁(yè)構(gòu)造加密的當(dāng)前網(wǎng)頁(yè)的登陸信息;
步驟2、瀏覽器側(cè)發(fā)送所述當(dāng)前網(wǎng)頁(yè)的網(wǎng)頁(yè)請(qǐng)求,所述網(wǎng)頁(yè)請(qǐng)求中包括所述加密的當(dāng)前網(wǎng)頁(yè)的登錄信息,并還包括瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息;
步驟3、服務(wù)器側(cè)接收所述網(wǎng)頁(yè)請(qǐng)求,將所述網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求。其中,步驟3可包括
服務(wù)器側(cè)接收所述網(wǎng)頁(yè)請(qǐng)求,并判斷所述網(wǎng)頁(yè)請(qǐng)求是否為預(yù)定義的白名單中的網(wǎng)頁(yè)請(qǐng)
求;
若判斷結(jié)果為否,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求;
若判斷結(jié)果為是,則將所述網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求。本方法還包括管理所述白名単。步驟I還包括
當(dāng)前網(wǎng)頁(yè)腳本根據(jù)用戶(hù)在當(dāng)前網(wǎng)頁(yè)登陸后保存在cookie中的登錄會(huì)話(huà)的加密值構(gòu)造加密的當(dāng)前網(wǎng)頁(yè)的登陸信息。步驟2還包括
所述當(dāng)前網(wǎng)頁(yè)將所述加密的當(dāng)前網(wǎng)頁(yè)的登錄信息以參數(shù)形式添加到所述當(dāng)前網(wǎng)頁(yè)的鏈接中;
瀏覽器發(fā)送與所述鏈接對(duì)應(yīng)的網(wǎng)頁(yè)請(qǐng)求,所述網(wǎng)頁(yè)請(qǐng)求中包括所述鏈接信息,和與所述鏈接相關(guān)的登錄信息。相應(yīng)的,本發(fā)明實(shí)施例還提供了ー種網(wǎng)頁(yè)請(qǐng)求安全處理系統(tǒng),包括
瀏覽器,用于發(fā)送當(dāng)前網(wǎng)頁(yè)的網(wǎng)頁(yè)請(qǐng)求,其中,所述網(wǎng)頁(yè)請(qǐng)求中包括由當(dāng)前網(wǎng)頁(yè)構(gòu)造的加密的當(dāng)前網(wǎng)頁(yè)的登陸信息,并還包括本瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息;
服務(wù)器,用于接收所述網(wǎng)頁(yè)請(qǐng)求,將所述網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求。其中,該服務(wù)器可包括
請(qǐng)求接收模塊,用于接收所述網(wǎng)頁(yè)請(qǐng)求;
、 白名單判斷模塊,用于判斷所述網(wǎng)頁(yè)請(qǐng)求是否為預(yù)定義的白名單中的網(wǎng)頁(yè)請(qǐng)求,若判斷結(jié)果為否,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求;
信息匹配模塊,用于當(dāng)白名單判斷模塊得判斷結(jié)果為是時(shí),將所述網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求。
相應(yīng)的本發(fā)明實(shí)施例還提供了ー種防御插件,用于安裝在如前所述的服務(wù)器中,該插件用于將所述服務(wù)器接收的網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則轉(zhuǎn)入所述服務(wù)器的其他模塊正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求。其中,該插件還包括
白名單判斷模塊,用于判斷所述網(wǎng)頁(yè)請(qǐng)求是否為預(yù)定義的白名單中的網(wǎng)頁(yè)請(qǐng)求,若判斷結(jié)果為否,則轉(zhuǎn)入所述服務(wù)器的其他模塊正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求;
信息匹配模塊,用于當(dāng)白名單判斷模塊得判斷結(jié)果為是時(shí),將所述網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則轉(zhuǎn)入所述服務(wù)器的其他模塊正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求。
相應(yīng)的,本發(fā)明實(shí)施例還包括一種網(wǎng)頁(yè),裝載在如前所述的瀏覽器中,其中,該網(wǎng)頁(yè)包括網(wǎng)頁(yè)腳本,所述網(wǎng)頁(yè)腳本用于獲取用戶(hù)在所述網(wǎng)頁(yè)登陸后保存在cookie中的登錄會(huì)話(huà)的加密值。其中,所述網(wǎng)頁(yè)可包括基礎(chǔ)函數(shù),所述函數(shù)用于以參數(shù)形式將所述加密值添加到所述當(dāng)前網(wǎng)頁(yè)的網(wǎng)頁(yè)請(qǐng)求url串中。實(shí)施本發(fā)明實(shí)施例,具有如下有益效果
在本發(fā)明實(shí)施例中,在當(dāng)前網(wǎng)頁(yè)請(qǐng)求中加入由當(dāng)前網(wǎng)頁(yè)構(gòu)造加密的當(dāng)前網(wǎng)頁(yè)的登陸信息,由服務(wù)器側(cè)對(duì)該登錄信息進(jìn)行匹配,僅對(duì)匹配通過(guò)的網(wǎng)頁(yè)請(qǐng)求進(jìn)行正常處理,由于該加密的當(dāng)前網(wǎng)頁(yè)的登錄信息是由當(dāng)前網(wǎng)頁(yè)構(gòu)造,其他網(wǎng)頁(yè)通過(guò)鏈接偽造當(dāng)前網(wǎng)頁(yè)請(qǐng)求時(shí)無(wú)法構(gòu)造出該加密的當(dāng)前網(wǎng)頁(yè)的登錄信息,從而實(shí)現(xiàn)防御CSRF攻擊的目的。同時(shí),本方案中,瀏覽器側(cè)只需要對(duì)網(wǎng)頁(yè)腳本進(jìn)行編寫(xiě)就可以實(shí)現(xiàn)構(gòu)造登錄信息井隨網(wǎng)頁(yè)請(qǐng)求發(fā)送的目的,而服務(wù)器側(cè)只需要安裝相應(yīng)的插件就可以實(shí)現(xiàn)登錄信息的匹配處理過(guò)程,對(duì)整個(gè)系統(tǒng)改造小且容易實(shí)施。
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖I是本發(fā)明實(shí)施例中的網(wǎng)頁(yè)請(qǐng)求安全處理方法的ー個(gè)具體流程示意 圖2是本發(fā)明實(shí)施例中的網(wǎng)頁(yè)請(qǐng)求安全處理系統(tǒng)的ー個(gè)具體組成示意 圖3是本發(fā)明實(shí)施例中的插件的ー個(gè)具體組成示意 圖4是本發(fā)明實(shí)施例中的各組件配合實(shí)現(xiàn)網(wǎng)頁(yè)請(qǐng)求安全處理方法的示意圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。在本發(fā)明實(shí)施例中通過(guò)對(duì)網(wǎng)頁(yè)代碼和WEB服務(wù)器兩側(cè)的改造來(lái)實(shí)現(xiàn)防御CSRF攻擊的目的。S卩,在瀏覽器側(cè)通過(guò)改造網(wǎng)站代碼,在所有http請(qǐng)求(包括ajax、jsonp、form表單提交等)中新增ー個(gè)g_tk參數(shù)(此處僅為示例,該參數(shù)名可設(shè)為任意的其他符號(hào)),其值為用戶(hù)在該網(wǎng)站上登陸后保存在cookie中的skey字段內(nèi)容(此處僅為實(shí)例,該參數(shù)根據(jù)各個(gè)網(wǎng)站的cookie設(shè)計(jì)而不同,只要是能用于識(shí)別用戶(hù)的字段就行)的加密值。對(duì)于用cookie中的用戶(hù)識(shí)別字段作為token (即上述的g_tk參數(shù))生成的主要原因是瀏覽器的設(shè)計(jì)上規(guī)定通過(guò)B網(wǎng)站是無(wú)法獲取到A網(wǎng)站的cookie信息。從而保證在B網(wǎng)站訪(fǎng)問(wèn)的時(shí)候網(wǎng)頁(yè)無(wú)法構(gòu)造出適用于該用戶(hù)的符合A網(wǎng)站要求的http請(qǐng)求。 而在服務(wù)器側(cè),針對(duì)不同的web服務(wù)器可開(kāi)發(fā)相應(yīng)版本的CSRF防御插件,該插件通過(guò)白名單配置捕獲所有需要進(jìn)行CSRF檢測(cè)的http請(qǐng)求(此處配置白名單主要是為了提高效率,在其他實(shí)施例中也可以不配置白名單,這樣服務(wù)器會(huì)對(duì)所有的http請(qǐng)求進(jìn)行g(shù)_tk參數(shù)比較),并從請(qǐng)求的url (Uniform / Universal Resource Locator,統(tǒng)一資源定位符)中取出g_tk參數(shù),并從cookie中取出登陸session值,把登陸session同樣加密后跟g_tk進(jìn)行比較,如果兩個(gè)值不相同則表示此請(qǐng)求有CSRF攻擊嫌疑,插件中斷請(qǐng)求返回空白并記錄訪(fǎng)問(wèn)日志供分析;如果兩個(gè)值相同則視為正常請(qǐng)求進(jìn)行響應(yīng)。還以前述的多窗ロ瀏覽器為例,攻擊者繼續(xù)從B網(wǎng)頁(yè)偽造A網(wǎng)頁(yè)的請(qǐng)求,請(qǐng)求的包頭會(huì)被瀏覽器帶上A網(wǎng)頁(yè)的登陸cookie偽裝登陸,但由于B網(wǎng)頁(yè)無(wú)法獲取到A網(wǎng)頁(yè)的cookie,所以所構(gòu)造的A網(wǎng)頁(yè)請(qǐng)求中無(wú)法包含準(zhǔn)確的g_tk參數(shù)內(nèi)容。在服務(wù)器側(cè)收到http請(qǐng)求進(jìn)行前面所述的session和g_tk驗(yàn)證時(shí)就會(huì)發(fā)現(xiàn)這個(gè)請(qǐng)求是非法的。為詳細(xì)、條理的描述基于上述原理的本發(fā)明方案,以下分別列舉多個(gè)實(shí)施例進(jìn)行闡述。如圖I所示,為本發(fā)明實(shí)施例中的網(wǎng)頁(yè)請(qǐng)求安全處理方法的ー個(gè)具體流程示意圖,該流程包括
101、瀏覽器側(cè)的當(dāng)前網(wǎng)頁(yè)構(gòu)造加密的當(dāng)前網(wǎng)頁(yè)的登陸信息。如,當(dāng)前網(wǎng)頁(yè)腳本根據(jù)用戶(hù)在當(dāng)前網(wǎng)頁(yè)登陸后保存在cookie中的登錄會(huì)話(huà)的加密值構(gòu)造加密的當(dāng)前網(wǎng)頁(yè)的登陸信息。即,該加密的當(dāng)前網(wǎng)頁(yè)的登陸信息可以是cookie中的登陸session加密值,構(gòu)造途徑可以是通過(guò)在網(wǎng)頁(yè)中編寫(xiě)網(wǎng)頁(yè)腳本,通過(guò)該當(dāng)前網(wǎng)頁(yè)腳本獲取用戶(hù)在當(dāng)前網(wǎng)頁(yè)登陸后保存在cookie中的登錄會(huì)話(huà)的加密值。當(dāng)然可以是通過(guò)其他方式實(shí)現(xiàn)這種信息獲取和構(gòu)造。需要說(shuō)明的是,上述加密的當(dāng)前網(wǎng)頁(yè)(如,網(wǎng)頁(yè)A)的登陸信息(如,cookie中的登陸session加密值)是由當(dāng)前網(wǎng)頁(yè)構(gòu)造的。對(duì)應(yīng)當(dāng)前的網(wǎng)頁(yè)組成,可通過(guò)將加密的當(dāng)前網(wǎng)頁(yè)的登陸信息添加到當(dāng)前網(wǎng)頁(yè)的url鏈接中,當(dāng)用戶(hù)點(diǎn)擊網(wǎng)頁(yè)上的鏈接(如點(diǎn)擊帶鏈接的文字、圖片,或填寫(xiě)登錄名和密碼后確認(rèn)等)時(shí),生成對(duì)應(yīng)的網(wǎng)頁(yè)請(qǐng)求中會(huì)包括url鏈接的相關(guān)參數(shù)(即,也包括上述加密值)。而對(duì)于其他網(wǎng)頁(yè)(如網(wǎng)頁(yè)B),雖然其可以通過(guò)偽造的鏈接令瀏覽器發(fā)送包括網(wǎng)頁(yè)A的cookie的網(wǎng)頁(yè)請(qǐng)求,但是網(wǎng)頁(yè)B中的鏈接中不包括網(wǎng)頁(yè)A的加密的登錄信息,也就不能將該加密的登錄信息添加到網(wǎng)頁(yè)B的網(wǎng)頁(yè)請(qǐng)求中的(雖然網(wǎng)頁(yè)B可以偽造網(wǎng)頁(yè)A的鏈接,但是其無(wú)法獲取網(wǎng)頁(yè)A的cookie,也就無(wú)法構(gòu)造上述加密值,也無(wú)法在偽造的鏈接中增加加密值),而瀏覽器在發(fā)送網(wǎng)頁(yè)B的網(wǎng)頁(yè)請(qǐng)求時(shí),雖然可以在該網(wǎng)頁(yè)請(qǐng)求中帶上網(wǎng)頁(yè)A的cookie (瀏覽器的特性是在發(fā)送網(wǎng)頁(yè)請(qǐng)求時(shí)自動(dòng)將該請(qǐng)求對(duì)應(yīng)的網(wǎng)頁(yè)的cookie帶在該請(qǐng)求中,即,當(dāng)網(wǎng)頁(yè)B偽造了網(wǎng)頁(yè)A的鏈接時(shí),該請(qǐng)求是對(duì)應(yīng)于網(wǎng)頁(yè)A的請(qǐng)求,瀏覽器會(huì)將網(wǎng)頁(yè)A的cookie添加到該請(qǐng)求中,網(wǎng)頁(yè)B本身并不能獲知網(wǎng)頁(yè)A的cookie),但是其不會(huì)帶上上述的網(wǎng)頁(yè)A的加密的登錄信息。102、瀏覽器側(cè)發(fā)送所述當(dāng)前網(wǎng)頁(yè)的網(wǎng)頁(yè)請(qǐng)求,所述網(wǎng)頁(yè)請(qǐng)求中包括所述加密的當(dāng)前網(wǎng)頁(yè)的登錄信息,并還包括瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息。本步驟實(shí)現(xiàn)時(shí)可以以以下方式所述當(dāng)前網(wǎng)頁(yè)將所述加密的當(dāng)前網(wǎng)頁(yè)的登錄信息以參數(shù)形式添加到所述當(dāng)前網(wǎng)頁(yè)的鏈接中;
瀏覽器發(fā)送與所述鏈接對(duì)應(yīng)的網(wǎng)頁(yè)請(qǐng)求,所述網(wǎng)頁(yè)請(qǐng)求中包括所述鏈接信息,和與所述鏈接相關(guān)的登錄信息。結(jié)合前述的說(shuō)明,該鏈接即是產(chǎn)生當(dāng)前網(wǎng)頁(yè)的網(wǎng)頁(yè)請(qǐng)求的鏈接,瀏覽器在發(fā)送網(wǎng)頁(yè)請(qǐng)求時(shí),會(huì)包括該鏈接的信息,和該鏈接對(duì)應(yīng)的網(wǎng)頁(yè)的登錄信息(如,cookie)
在上述IOf 102步驟中,對(duì)應(yīng)具體的網(wǎng)頁(yè)形式,網(wǎng)頁(yè)由兩種構(gòu)造加密的登錄信息的方式I)由網(wǎng)頁(yè)中的javascript腳本發(fā)起的異步http請(qǐng)求(ajax, jsonp等),這種可以直接對(duì)網(wǎng)頁(yè)中發(fā)出http請(qǐng)求的基礎(chǔ)函數(shù)進(jìn)行改造,在請(qǐng)求發(fā)送前在其url中新增參數(shù)g_tk,且值為cookie中登陸session的加密值;2)網(wǎng)頁(yè)中的form表單提交的http請(qǐng)求,這種方式可通過(guò)對(duì)網(wǎng)頁(yè)中的form表單進(jìn)行改造,在提交的action的url后增加g_tk參數(shù)來(lái)實(shí)現(xiàn)信息獲取。在這兩種情況下不管是get還是post方式提交,g_tk參數(shù)都可統(tǒng)ー放在url串中以get方式傳遞到后臺(tái)服務(wù)器,這樣,若服務(wù)器側(cè)以插件方式進(jìn)行CSRF攻擊的防御,則可以簡(jiǎn)化該插件的驗(yàn)證邏輯。因?yàn)閜ost和get兩種傳輸方式中,參數(shù)在數(shù)據(jù)包中存放的位置不一樣,get方式傳輸時(shí)g_tk是在數(shù)據(jù)包靠前的位置,服務(wù)器進(jìn)行處理的時(shí)候能夠只讀取少量數(shù)據(jù)就行,而post相關(guān),需要把整個(gè)數(shù)據(jù)包都進(jìn)行分析才能拿到g_tk的值。同時(shí)如果不把g_tk保存的位置明確在get或者post中,那么服務(wù)器在取這個(gè)參數(shù)的時(shí)候就需要在數(shù)據(jù)包的多處進(jìn)行查找。雖然差別不大,但在服務(wù)器處理海量請(qǐng)求的時(shí)候,這個(gè)性能會(huì)有很大ー個(gè)差異。103、服務(wù)器側(cè)接收所述網(wǎng)頁(yè)請(qǐng)求,將所述網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求。在本步驟中為了提高效率,可增加白名單驗(yàn)證機(jī)制,在這種機(jī)制下的白名單中定義(或者通過(guò)學(xué)習(xí)獲得)需要驗(yàn)證的網(wǎng)頁(yè)請(qǐng)求(或類(lèi)型)等來(lái)減少需要進(jìn)行匹配的請(qǐng)求。如,在白名單中定義網(wǎng)頁(yè)請(qǐng)求涉及付款、購(gòu)買(mǎi)、修改密碼等類(lèi)型的網(wǎng)頁(yè)請(qǐng)求時(shí),才進(jìn)行進(jìn)ー步的匹配驗(yàn)證,則此時(shí)步驟103可包括如下流程 服務(wù)器側(cè)接收所述網(wǎng)頁(yè)請(qǐng)求,并判斷所述網(wǎng)頁(yè)請(qǐng)求是否為預(yù)定義的白名單中的網(wǎng)頁(yè)請(qǐng)
求;
若判斷結(jié)果為否,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求;
若判斷結(jié)果為是,則將所述網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求。相應(yīng)的,如圖2所示,為本發(fā)明實(shí)施例中的網(wǎng)頁(yè)請(qǐng)求安全處理系統(tǒng)的組成圖,該系統(tǒng)包括
瀏覽器1,用于發(fā)送當(dāng)前網(wǎng)頁(yè)的網(wǎng)頁(yè)請(qǐng)求,其中,所述網(wǎng)頁(yè)請(qǐng)求中包括由當(dāng)前網(wǎng)頁(yè)構(gòu)造的加密的當(dāng)前網(wǎng)頁(yè)的登陸信息,并還包括本瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息;
服務(wù)器2,用于接收所述網(wǎng)頁(yè)請(qǐng)求,將所述網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求。其中,為實(shí)現(xiàn)白名單驗(yàn)證機(jī)制,則該服務(wù)器2可包括(圖2中為包括的情況) 請(qǐng)求接收模塊20,用于接收所述網(wǎng)頁(yè)請(qǐng)求;
白名單判斷模塊220,用于判斷所述網(wǎng)頁(yè)請(qǐng)求是否為預(yù)定義的白名單中的網(wǎng)頁(yè)請(qǐng)求,若 判斷結(jié)果為否,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求;
信息匹配模塊222,用于當(dāng)白名單判斷模塊得判斷結(jié)果為是時(shí),將所述網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求。如前所述,為了降低開(kāi)發(fā)成本和復(fù)雜度,使現(xiàn)有技術(shù)中的服務(wù)器容易的實(shí)現(xiàn)上述功能,可通過(guò)為服務(wù)器添加插件的方法。相應(yīng)的,本發(fā)明實(shí)施例還提供了ー種防御插件,用于安裝在如前所述的服務(wù)器中,該插件用于將所述服務(wù)器接收的網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則轉(zhuǎn)入所述服務(wù)器的其他模塊正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求。如圖3所示,為具有白名單驗(yàn)證機(jī)制的插件,該插件22還包括
白名單判斷模塊220,用于判斷所述網(wǎng)頁(yè)請(qǐng)求是否為預(yù)定義的白名單中的網(wǎng)頁(yè)請(qǐng)求,若判斷結(jié)果為否,則轉(zhuǎn)入所述服務(wù)器的其他模塊正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求;
信息匹配模塊222,用于當(dāng)白名單判斷模塊得判斷結(jié)果為是時(shí),將所述網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則轉(zhuǎn)入所述服務(wù)器的其他模塊正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求。對(duì)于上述白名單,可部署灰度方案以減少誤殺的情況,相應(yīng)的,本發(fā)明實(shí)施例中的插件(或稱(chēng)Csrf防御插件)對(duì)http請(qǐng)求的處理可以設(shè)置兩種模式a) token合法、記日志、不攔截非法請(qǐng)求;b) token合法、記日志、攔截非法請(qǐng)求。其中,token即是指前述的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息。對(duì)于部署的灰度過(guò)程,白名單是人工維護(hù)的。這兩種模式主要是用于csrf功能的灰度實(shí)施,通過(guò)日志來(lái)觀察插件會(huì)不會(huì)誤殺正常請(qǐng)求,當(dāng)一段時(shí)間的日志無(wú)異常數(shù)據(jù)的時(shí)候,再啟用b中的攔截模式。上述中日志記錄的內(nèi)容包括訪(fǎng)問(wèn)ip、請(qǐng)求url、請(qǐng)求來(lái)路url等;這里的白名單是屬于csrf防御插件的配置文檔,可以通過(guò)開(kāi)發(fā)人員手工配置或者是用輔助工具實(shí)現(xiàn)快速配置。在利用上述兩種模式實(shí)現(xiàn)本方案時(shí),先執(zhí)行模式a,即,將需要進(jìn)行csrf防御的請(qǐng)求url通過(guò)白名單管理加入配置,先設(shè)置為不攔截非法請(qǐng)求模式,收集該接ロ的訪(fǎng)問(wèn)日志;對(duì)日志進(jìn)行人工分析,如果有被記錄的正常請(qǐng)求由開(kāi)發(fā)人員進(jìn)行處理,直至確認(rèn)日志中不存在誤殺記錄為止;前面兩步通過(guò)后再把該url的配置改為攔截模式,csrf正式生效。進(jìn)入對(duì)其他url的處理。如前所述,為了降低開(kāi)發(fā)成本和復(fù)雜度,使現(xiàn)有技術(shù)中的瀏覽器側(cè)容易的實(shí)現(xiàn)本方案中的相應(yīng)功能,可通過(guò)在網(wǎng)頁(yè)中添加相應(yīng)代碼的方式。即,本發(fā)明實(shí)施例還包括ー種網(wǎng)頁(yè),裝載在如前所述的瀏覽器中,其中,該網(wǎng)頁(yè)包括網(wǎng)頁(yè)腳本,所述網(wǎng)頁(yè)腳本用于獲取用戶(hù)在所述網(wǎng)頁(yè)登陸后保存在cookie中的登錄會(huì)話(huà)的加密值。其中,所述網(wǎng)頁(yè)可包括基礎(chǔ)函數(shù),所述函數(shù)用于以參數(shù)形式將所述加密值添加到所述當(dāng)前網(wǎng)頁(yè)的網(wǎng)頁(yè)請(qǐng)求url串中,并以get方式發(fā)送到服務(wù)器側(cè)。如圖4所示,為本發(fā)明實(shí)施例中的各組件配合實(shí)現(xiàn)上述功能的示意圖。該圖中示例了瀏覽器側(cè)和服務(wù)器側(cè)的組成和交互。在用戶(hù)瀏覽器中包括http請(qǐng)求發(fā)起模塊,該模塊的功能通過(guò)對(duì)網(wǎng)頁(yè)代碼進(jìn)行如前所述的改造即可實(shí)現(xiàn)。圖中三大模塊功能如下。http請(qǐng)求發(fā)送起模塊主要負(fù)責(zé)對(duì)原請(qǐng)求url的改造,讀取cookie中的登陸session并加密,把加密后的值做為參數(shù)附加到url中;
Csrf檢測(cè)防御插件主要負(fù)責(zé)在服務(wù)程序處理請(qǐng)求前,對(duì)用戶(hù)的http請(qǐng)求進(jìn)行判斷,如果為csrf攻擊則直接中斷請(qǐng)求返回空白,如果是正常請(qǐng)求就跳過(guò),由后臺(tái)程序進(jìn)行響應(yīng)。url白名單管理模塊為了避免防御模塊對(duì)所有的url進(jìn)行校驗(yàn),造成不必要的性能浪費(fèi),本模塊主要負(fù)責(zé)為防御模塊提供請(qǐng)求csrf檢測(cè)前進(jìn)行篩選的白名單配置文件;以及日常運(yùn)維中對(duì)白名單的配置管理。各模塊交互如下
I. I非法請(qǐng)求,http請(qǐng)求發(fā)送起模塊向服務(wù)器發(fā)送非法請(qǐng)求,非法請(qǐng)求是指沒(méi)有或者只有錯(cuò)誤g_tk參數(shù)的http請(qǐng)求,如前面所述中B網(wǎng)站的偽造請(qǐng)求;
I. 2命中白名単,Apache (ー種WEB服務(wù)器軟件,在本例中其具有白名單驗(yàn)證功能)判斷該請(qǐng)求命中白名単,則向插件發(fā)送該消息;
1.3請(qǐng)求拒絕,插件接收到命中白名單消息后進(jìn)行驗(yàn)證,即對(duì)g_tk參數(shù)進(jìn)行匹配,由于該消息本身為非法請(qǐng)求,匹配不成功,返回請(qǐng)求拒絕;
2.I正常請(qǐng)求,http請(qǐng)求發(fā)送起模塊向服務(wù)器發(fā)送正常請(qǐng)求;
2. 2命中白名單,Apache判斷該請(qǐng)求命中白名單,則向插件發(fā)送該消息; 2. 3驗(yàn)證通過(guò)請(qǐng)求透?jìng)?,插件接收到命中白名單消息后進(jìn)行驗(yàn)證,即對(duì)g_tk參數(shù)進(jìn)行匹配,匹配成功后向Cgi服務(wù)發(fā)送匹配成功的結(jié)果;
2.4返回結(jié)果,Cgi服務(wù)對(duì)該正常的http請(qǐng)求進(jìn)行響應(yīng)并返回結(jié)果;
3.I正常請(qǐng)求,http請(qǐng)求發(fā)送起模塊向服務(wù)器發(fā)送正常請(qǐng)求;
3. 2未命中白名單,Apache判斷該請(qǐng)求未命中白名單,則不需向插件發(fā)送該消息而直接將請(qǐng)求發(fā)送給Cgi服務(wù);
3.3返回結(jié)果,Cgi服務(wù)對(duì)該正常的http請(qǐng)求進(jìn)行響應(yīng)并返回結(jié)果。說(shuō)明,對(duì)于網(wǎng)站來(lái)說(shuō)Apache或者其他web服務(wù)器軟件是網(wǎng)站程序運(yùn)行的環(huán)境或平臺(tái),真正執(zhí)行網(wǎng)站業(yè)務(wù)邏輯,生成內(nèi)容給用戶(hù)看的東西叫做cgi服務(wù)。本例中的Cgi服務(wù)還可以是其他的語(yǔ)言腳本,如asp、php、peri等。在本發(fā)明實(shí)施例中,在當(dāng)前網(wǎng)頁(yè)請(qǐng)求中加入由當(dāng)前網(wǎng)頁(yè)構(gòu)造加密的當(dāng)前網(wǎng)頁(yè)的登陸信息,由服務(wù)器側(cè)對(duì)該登錄信息進(jìn)行匹配,僅對(duì)匹配通過(guò)的網(wǎng)頁(yè)請(qǐng)求進(jìn)行正常處理,由于該加密的當(dāng)前網(wǎng)頁(yè)的登錄信息是由當(dāng)前網(wǎng)頁(yè)構(gòu)造,其他網(wǎng)頁(yè)通過(guò)鏈接偽造當(dāng)前網(wǎng)頁(yè)請(qǐng)求時(shí)無(wú)法構(gòu)造出該加密的當(dāng)前網(wǎng)頁(yè)的登錄信息,從而實(shí)現(xiàn)防御CSRF攻擊的目的。同時(shí),本方案中,瀏覽器側(cè)只需要對(duì)網(wǎng)頁(yè)腳本進(jìn)行編寫(xiě)就可以實(shí)現(xiàn)構(gòu)造登錄信息井隨網(wǎng)頁(yè)請(qǐng)求發(fā)送的目的,而服務(wù)器側(cè)只需要安裝相應(yīng)的插件就可以實(shí)現(xiàn)登錄信息的匹配處理過(guò)程,對(duì)整個(gè)系統(tǒng)改造小且容易實(shí)施。本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分流程,是可以通過(guò)計(jì)算機(jī)程序來(lái)指令相關(guān)的硬件來(lái)完成,所述的程序可存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),可包括如上述各方法的實(shí)施例的流程。其中,所述的存儲(chǔ)介質(zhì)可為磁碟、光盤(pán)、只讀存儲(chǔ)記憶體(Read-Only Memory, ROM)或隨機(jī)存儲(chǔ)記憶體(Random AccessMemory, RAM)等。
以上所揭露的僅為本發(fā)明ー種較佳實(shí)施例而已,當(dāng)然不能以此來(lái)限定本發(fā)明之權(quán)利范圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。
權(quán)利要求
1.ー種網(wǎng)頁(yè)請(qǐng)求安全處理方法,其特征在于,所述方法包括 瀏覽器側(cè)的當(dāng)前網(wǎng)頁(yè)構(gòu)造加密的當(dāng)前網(wǎng)頁(yè)的登陸信息; 瀏覽器側(cè)發(fā)送所述當(dāng)前網(wǎng)頁(yè)的網(wǎng)頁(yè)請(qǐng)求,所述網(wǎng)頁(yè)請(qǐng)求中包括所述加密的當(dāng)前網(wǎng)頁(yè)的登錄信息,并還包括瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息; 服務(wù)器側(cè)接收所述網(wǎng)頁(yè)請(qǐng)求,將所述網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的所述瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求。
2.如權(quán)利要求I所述的方法,其特征在于,所述服務(wù)器側(cè)接收所述網(wǎng)頁(yè)請(qǐng)求,將所述網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的所述瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求,包括 服務(wù)器側(cè)接收所述網(wǎng)頁(yè)請(qǐng)求,并判斷所述網(wǎng)頁(yè)請(qǐng)求是否為預(yù)定義的白名單中的網(wǎng)頁(yè)請(qǐng)求; 若判斷結(jié)果為否,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求; 若判斷結(jié)果為是,則將所述網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的所述瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求。
3.如權(quán)利要求I所述的方法,其特征在于,所述瀏覽器側(cè)的當(dāng)前網(wǎng)頁(yè)構(gòu)造加密的當(dāng)前網(wǎng)頁(yè)的登陸信息包括 當(dāng)前網(wǎng)頁(yè)腳本根據(jù)用戶(hù)在當(dāng)前網(wǎng)頁(yè)登陸后保存在cookie中的登錄會(huì)話(huà)的加密值構(gòu)造加密的當(dāng)前網(wǎng)頁(yè)的登陸信息。
4.如權(quán)利要求I至3中任一項(xiàng)所述的方法,其特征在于,所述瀏覽器側(cè)發(fā)送所述當(dāng)前網(wǎng)頁(yè)的網(wǎng)頁(yè)請(qǐng)求包括 所述當(dāng)前網(wǎng)頁(yè)將所述加密的當(dāng)前網(wǎng)頁(yè)的登錄信息以參數(shù)形式添加到所述當(dāng)前網(wǎng)頁(yè)的鏈接中; 瀏覽器發(fā)送與所述鏈接對(duì)應(yīng)的網(wǎng)頁(yè)請(qǐng)求,所述網(wǎng)頁(yè)請(qǐng)求中包括所述鏈接信息,和與所述鏈接相關(guān)的登錄信息。
5.如權(quán)利要求4所述的方法,其特征在于,所述瀏覽器以get方式發(fā)送與所述鏈接對(duì)應(yīng)的網(wǎng)頁(yè)請(qǐng)求。
6.ー種網(wǎng)頁(yè)請(qǐng)求安全處理系統(tǒng),其特征在于,所述系統(tǒng)包括 瀏覽器,用于發(fā)送當(dāng)前網(wǎng)頁(yè)的網(wǎng)頁(yè)請(qǐng)求,其中,所述網(wǎng)頁(yè)請(qǐng)求中包括由當(dāng)前網(wǎng)頁(yè)構(gòu)造的加密的當(dāng)前網(wǎng)頁(yè)的登陸信息,并還包括本瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息; 服務(wù)器,用于接收所述網(wǎng)頁(yè)請(qǐng)求,將所述網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求。
7.如權(quán)利要求6所述的系統(tǒng),其特征在于,所述服務(wù)器包括 請(qǐng)求接收模塊,用于接收所述網(wǎng)頁(yè)請(qǐng)求; 白名單判斷模塊,用于判斷所述網(wǎng)頁(yè)請(qǐng)求是否為預(yù)定義的白名單中的網(wǎng)頁(yè)請(qǐng)求,若判斷結(jié)果為否,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求;信息匹配模塊,用于當(dāng)白名單判斷模塊得判斷結(jié)果為是時(shí),將所述網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求。
8.ー種防御插件,用于安裝在如權(quán)利要求6所述的服務(wù)器中,其特征在于,所述插件用于將所述服務(wù)器接收的網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則轉(zhuǎn)入所述服務(wù)器的其他模塊正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求。
9.如權(quán)利要求8所述的插件,其特征在于,所述插件還包括 白名單判斷模塊,用于判斷所述網(wǎng)頁(yè)請(qǐng)求是否為預(yù)定義的白名單中的網(wǎng)頁(yè)請(qǐng)求,若判斷結(jié)果為否,則轉(zhuǎn)入所述服務(wù)器的其他模塊正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求; 信息匹配模塊,用于當(dāng)白名單判斷模塊得判斷結(jié)果為是時(shí),將所述網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則轉(zhuǎn)入所述服務(wù)器的其他模塊正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求。
10.一種網(wǎng)頁(yè),裝載在如權(quán)利要求6所述的瀏覽器中,其特征在于,所述網(wǎng)頁(yè)包括網(wǎng)頁(yè)腳本,所述網(wǎng)頁(yè)腳本用于獲取用戶(hù)在所述網(wǎng)頁(yè)登陸后保存在cookie中的登錄會(huì)話(huà)的加密值。
11.如權(quán)利要求10所述的網(wǎng)頁(yè),其特征在于,所述網(wǎng)頁(yè)包括基礎(chǔ)函數(shù),所述函數(shù)用于以參數(shù)形式將所述加密值添加到所述當(dāng)前網(wǎng)頁(yè)的網(wǎng)頁(yè)請(qǐng)求urI串中。
全文摘要
本發(fā)明實(shí)施例公開(kāi)了一種網(wǎng)頁(yè)請(qǐng)求安全處理方法及系統(tǒng),該方法包括瀏覽器側(cè)的當(dāng)前網(wǎng)頁(yè)構(gòu)造加密的當(dāng)前網(wǎng)頁(yè)的登陸信息;瀏覽器側(cè)發(fā)送所述當(dāng)前網(wǎng)頁(yè)的網(wǎng)頁(yè)請(qǐng)求,所述網(wǎng)頁(yè)請(qǐng)求中包括所述加密的當(dāng)前網(wǎng)頁(yè)的登錄信息,并還包括瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息;服務(wù)器側(cè)接收所述網(wǎng)頁(yè)請(qǐng)求,將所述網(wǎng)頁(yè)請(qǐng)求中的加密的當(dāng)前網(wǎng)頁(yè)的登錄信息與加密后的所述瀏覽器添加的當(dāng)前網(wǎng)頁(yè)的登錄信息進(jìn)行匹配,若匹配結(jié)果為不符,則中斷所述網(wǎng)頁(yè)請(qǐng)求,若匹配結(jié)果為相符,則正常響應(yīng)所述網(wǎng)頁(yè)請(qǐng)求。采用本發(fā)明,可在對(duì)整個(gè)系統(tǒng)改造小的情況下實(shí)現(xiàn)對(duì)CRSF攻擊的識(shí)別和防御。
文檔編號(hào)H04L29/08GK102685081SQ20111006479
公開(kāi)日2012年9月19日 申請(qǐng)日期2011年3月17日 優(yōu)先權(quán)日2011年3月17日
發(fā)明者周俊, 唐文榮, 徐凱鵬, 沈志堅(jiān), 肖崢, 胡文斌, 胡愛(ài)軍, 魯鋒 申請(qǐng)人:騰訊科技(深圳)有限公司