一種保護web應(yīng)用安全的誘騙方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計算機網(wǎng)絡(luò)安全技術(shù)領(lǐng)域,尤其涉及web應(yīng)用安全領(lǐng)域。
【背景技術(shù)】
[0002]隨著Web2.0、社交網(wǎng)絡(luò)、微博等等一系列新型的互聯(lián)網(wǎng)產(chǎn)品的誕生,基于Web環(huán)境的互聯(lián)網(wǎng)應(yīng)用越來越廣泛,企業(yè)信息化的過程中各種應(yīng)用都架設(shè)在Web平臺上,Web業(yè)務(wù)的迅速發(fā)展也引起黑客們的強烈關(guān)注,接踵而至的就是Web安全威脅的凸顯,黑客利用網(wǎng)站操作系統(tǒng)的漏洞和Web服務(wù)程序的SQL注入漏洞等得到Web服務(wù)器的控制權(quán)限,輕則篡改網(wǎng)頁內(nèi)容,重則竊取重要內(nèi)部數(shù)據(jù),更為嚴重的則是在網(wǎng)頁中植入惡意代碼,使得網(wǎng)站訪問者受到侵害。而目前常見的保護web應(yīng)用安全的手段有防火墻、IDS、模式識別、URL過濾等技術(shù),但這些技術(shù)都很被動,只有當發(fā)生某種入侵事件后再針對這種入侵采取相應(yīng)的保護措施,而且一直是處于攻防不對稱狀態(tài)。被攻擊者只能等待攻擊者來攻擊而對攻擊者的相關(guān)信息卻一無所知。
【發(fā)明內(nèi)容】
[0003]本發(fā)明的目的在于針對現(xiàn)有的網(wǎng)絡(luò)安全技術(shù)的不足,提出了一種保護web應(yīng)用安全的誘騙方法。
[0004]本發(fā)明的目的是通過以下技術(shù)方案來實現(xiàn)的:一種保護web應(yīng)用安全的誘騙方法,該方法包括以下步驟:
步驟1:當客戶端請求web服務(wù)器上的資源時,在web服務(wù)器返回的頁面內(nèi)容中插入一個假的URL ;
步驟2:分析客戶端向后臺服務(wù)器發(fā)起的請求,該步驟包括以下子步驟:
(2.1)取出發(fā)起這個請求的客戶端的IP地址,判斷該IP地址是否被標記;
(2.2)如果該IP地址被標記,則轉(zhuǎn)到步驟2.4 ;
(2.3)判斷請求的URL是否為我們插入頁面中的URL ;如果不是,則把該請求轉(zhuǎn)發(fā)到后臺真實的web服務(wù)器上;否則,轉(zhuǎn)到步驟(2.4);
(2.4)標記該IP,更新該IP訪問后臺web應(yīng)用的時間;把該請求轉(zhuǎn)發(fā)到誘騙系統(tǒng)中; 步驟3:誘騙系統(tǒng)處理請求;
(3.1)分析該請求中是否包含攻擊代碼;
(3.1.1)分析該請求的查詢字符串中是否包含有〈script〉或alert等字符串;如果有,則認為包含跨站攻擊代碼;
(3.1.2)分析改請求的查詢字符串中是否包含http或者htts字符串,如果有,則認為是遠程文件包含攻擊;
(3.1.3)分析請求的查詢字符串中是否包含8616(^、&11(1、1 = l、or等字符串,如果有,則認為是sql注入攻擊;
(3.2)根據(jù)步驟(3.1)中檢測出的攻擊類型,分析構(gòu)造出對應(yīng)于該類攻擊,攻擊者期望從服務(wù)器得到的響應(yīng)內(nèi)容并將該內(nèi)容返回給攻擊者;
(3.2.1)如果是跨站攻擊,則把請求的查詢字符串中包含攻擊代碼的內(nèi)容直接返回給客戶端;
(3.2.2)如果是sql注入攻擊,則構(gòu)造一些數(shù)據(jù)庫執(zhí)行錯誤的提示信息返回給攻擊者;(3.2.3)如果是遠程文件包含攻擊,則在本地沙箱中執(zhí)行該文件,并且把文件的輸出內(nèi)容去掉一些字符串后返回給客戶端;
(3.3)記錄該攻擊者的攻擊方式;
步驟4:如果被標記的IP地址在一段時間內(nèi)沒有再次被標記,則取消對該IP的標記。
[0005]本發(fā)明的有益效果是,本發(fā)明在發(fā)現(xiàn)有攻擊者嘗試攻擊web服務(wù)器時,把攻擊流量都引入誘騙系統(tǒng)中,在誘騙系統(tǒng)中分析攻擊類型,模擬出攻擊者希望從web服務(wù)器得到的內(nèi)容并將該內(nèi)容返回給攻擊者。應(yīng)用該方法不僅能收集攻擊者的攻擊方式,而且能改變傳統(tǒng)上一直處于被動防御的狀態(tài),利用偽造信息欺騙攻擊者,讓攻擊者誤以為達成目的,從而更好的保護web應(yīng)用安全。
【附圖說明】
[0006]圖1是網(wǎng)絡(luò)架構(gòu)的示意圖。
[0007]圖2是該誘騙方法的流程圖。
【具體實施方式】
[0008]下面結(jié)合附圖詳細描述本發(fā)明,本發(fā)明的目的和效果將變得更加明顯。
[0009]本發(fā)明是一種保護web應(yīng)用安全的誘騙方法,如圖1所示,該方法需要結(jié)合網(wǎng)關(guān)和誘騙系統(tǒng)來實現(xiàn)。其中,網(wǎng)關(guān)需要具備反向代理的功能。具體包括以下步驟:
步驟1:當客戶端請求web服務(wù)器上的資源時,在web服務(wù)器返回的頁面內(nèi)容中插入一個假的URL,該URL不對應(yīng)著服務(wù)器上的任何資源,并且該URL對于普通用戶瀏覽網(wǎng)頁時不可見,只有當攻擊者嘗試去對網(wǎng)站掃描或爬蟲時才會去訪問該URL。如:〈a href=”/path/to/honey,,></a>
步驟2:分析客戶端向后臺服務(wù)器發(fā)起的請求。
[0010](2.1)取出發(fā)起這個請求的客戶端的IP地址,判斷該IP地址是否被標記。
[0011](2.2)如果該IP地址被標記,則轉(zhuǎn)到步驟(2.4)。
[0012](2.3)判斷請求的URL是否為我們插入頁面中的URL。如果不是,則把該請求轉(zhuǎn)發(fā)到后臺真實的web服務(wù)器上。否則,轉(zhuǎn)到步驟(2.4)。
[0013](2.4)標記該IP,更新該IP訪問后臺web應(yīng)用的時間。把該請求轉(zhuǎn)發(fā)到誘騙系統(tǒng)中。
[0014]步驟3:誘騙系統(tǒng)處理請求。
[0015](3.1)分析該請求中是否包含攻擊代碼。
[0016](3.1.1)分析該請求的查詢字符串中是否包含有〈script〉或alert等字符串。如果有,則認為包含跨站攻擊代碼。
[0017](3.1.2)分析改請求的查詢字符串中是否包含http或者htts字符串,如果有,則認為是遠程文件包含攻擊。
[0018](3.1.3)分析請求的查詢字符串中是否包含select、and、I = 1、or等字符串,如果有,則認為是sql注入攻擊。
[0019](3.2)根據(jù)步驟(3.1)中檢測出的攻擊類型,分析構(gòu)造出對應(yīng)于該類攻擊,攻擊者期望從服務(wù)器得到的響應(yīng)內(nèi)容并將該內(nèi)容返回給攻擊者。
[0020](3.2.1)如果是跨站攻擊,則把請求的查詢字符串中包含攻擊代碼的內(nèi)容直接返回給客戶端。
[0021](3.2.2)如果是sql注入攻擊,則構(gòu)造一些數(shù)據(jù)庫執(zhí)行錯誤的提示信息返回給攻擊者O
[0022](3.2.3)如果是遠程文件包含攻擊,則在本地沙箱中執(zhí)行該文件,并且把文件的輸出內(nèi)容去掉一些字符串后返回給客戶端。
[0023](3.3)記錄該攻擊者的攻擊方式,以備以后進行分析。
[0024]步驟4:如果被標記的IP地址在一段時間內(nèi)沒有再次被標記,則取消對該IP的標記。
[0025]本發(fā)明在發(fā)現(xiàn)有攻擊者嘗試攻擊web服務(wù)器時,把攻擊流量都引入誘騙系統(tǒng)中,在誘騙系統(tǒng)中分析攻擊類型,模擬出攻擊者希望從web服務(wù)器得到的內(nèi)容并將該內(nèi)容返回給攻擊者。應(yīng)用該方法不僅能收集攻擊者的攻擊方式,而且能改變傳統(tǒng)上一直處于被動防御的狀態(tài),利用偽造信息欺騙攻擊者,讓攻擊者誤以為達成目的,從而更好的保護web應(yīng)用安全。
【主權(quán)項】
1.一種保護web應(yīng)用安全的誘騙方法,其特征在于,該方法包括以下步驟: 步驟1:當客戶端請求web服務(wù)器上的資源時,在web服務(wù)器返回的頁面內(nèi)容中插入一個假的URL ; 步驟2:分析客戶端向后臺服務(wù)器發(fā)起的請求,該步驟包括以下子步驟: (2.1)取出發(fā)起這個請求的客戶端的IP地址,判斷該IP地址是否被標記; (2.2)如果該IP地址被標記,則轉(zhuǎn)到步驟2.4 ; (2.3)判斷請求的URL是否為我們插入頁面中的URL ;如果不是,則把該請求轉(zhuǎn)發(fā)到后臺真實的web服務(wù)器上;否則,轉(zhuǎn)到步驟(2.4); (2.4)標記該IP,更新該IP訪問后臺web應(yīng)用的時間;把該請求轉(zhuǎn)發(fā)到誘騙系統(tǒng)中; 步驟3:誘騙系統(tǒng)處理請求; (3.1)分析該請求中是否包含攻擊代碼; (3.1.1)分析該請求的查詢字符串中是否包含有〈script〉或alert等字符串;如果有,則認為包含跨站攻擊代碼; (3.1.2)分析改請求的查詢字符串中是否包含http或者htts字符串,如果有,則認為是遠程文件包含攻擊; (3.1.3)分析請求的查詢字符串中是否包含8616(^、&11(1、1 = l、or等字符串,如果有,則認為是sql注入攻擊; (3.2)根據(jù)步驟(3.1)中檢測出的攻擊類型,分析構(gòu)造出對應(yīng)于該類攻擊,攻擊者期望從服務(wù)器得到的響應(yīng)內(nèi)容并將該內(nèi)容返回給攻擊者; (3.2.1)如果是跨站攻擊,則把請求的查詢字符串中包含攻擊代碼的內(nèi)容直接返回給客戶端; (3.2.2)如果是sql注入攻擊,則構(gòu)造一些數(shù)據(jù)庫執(zhí)行錯誤的提示信息返回給攻擊者;(3.2.3)如果是遠程文件包含攻擊,則在本地沙箱中執(zhí)行該文件,并且把文件的輸出內(nèi)容去掉一些字符串后返回給客戶端; (3.3)記錄該攻擊者的攻擊方式; 步驟4:如果被標記的IP地址在一段時間內(nèi)沒有再次被標記,則取消對該IP的標記。
【專利摘要】本發(fā)明公開了一種保護web應(yīng)用安全的誘騙方法,本發(fā)明在發(fā)現(xiàn)有攻擊者嘗試攻擊web服務(wù)器時,把攻擊流量都引入誘騙系統(tǒng),然后在誘騙系統(tǒng)中分析攻擊類型,模擬出攻擊者希望從web服務(wù)器得到的內(nèi)容并將該內(nèi)容返回給攻擊者。同時,記錄攻擊者的IP地址及行為以備以后分析。應(yīng)用該方法能夠欺騙攻擊者,誘敵深入,讓攻擊者誤以為達成目的,從而保護真正的資源不被破壞。
【IPC分類】H04L29/08, H04L29/06
【公開號】CN104967628
【申請?zhí)枴緾N201510418677
【發(fā)明人】吳春明, 申旺強, 高文
【申請人】浙江大學(xué)
【公開日】2015年10月7日
【申請日】2015年7月16日