亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種異常訪問行為檢測方法及裝置的制造方法

文檔序號:10660913閱讀:414來源:國知局
一種異常訪問行為檢測方法及裝置的制造方法
【專利摘要】本發(fā)明提供了一種異常訪問行為檢測方法及裝置,屬于網(wǎng)絡安全領域。該異常訪問行為檢測方法包括:獲取用戶的訪問請求,所述訪問請求包括對應于所述用戶的訪問請求的訪問行為的標記信息;將所述標記信息添加到所述用戶的歷史訪問序列中獲得當前訪問序列;將所述當前訪問序列與預設的異常訪問序列表進行匹配,當匹配滿足第一預設規(guī)則時,判定所述用戶的當前訪問行為為異常訪問行為。本發(fā)明提供的異常訪問行為檢測方法及裝置可以實時檢測用戶的異常訪問行為,相比于傳統(tǒng)的防護手段,有效地提高了檢測結果的準確性和可靠性。
【專利說明】
一種異常訪問行為檢測方法及裝置
技術領域
[0001] 本發(fā)明屬于網(wǎng)絡安全領域,具體而言,涉及一種異常訪問行為檢測方法及裝置。
【背景技術】
[0002] 網(wǎng)站防護一直以來是信息安全界研究的重點課題之一,隨著網(wǎng)絡社會的不斷發(fā)展 以及互聯(lián)網(wǎng)加的概念的提出,越來越多的信息和產品開始融入互聯(lián)網(wǎng),人們對網(wǎng)絡的安全 要求也越來越高,如何提升和維護互聯(lián)網(wǎng)的安全成為了各界研究者們普遍關注的一個話 題。
[0003] 現(xiàn)有的對網(wǎng)站入侵的防護手段都是基于規(guī)則去進行匹配和檢測的,它們的流程往 往如下:防護軟件會對網(wǎng)絡日志或流量中的關鍵字進行特征匹配,一旦匹配到符合攻擊樣 本關鍵字就認為用戶對網(wǎng)站進行了一次入侵。這種檢測方式會造成較高的誤報率。并且隨 著攻擊者攻擊手段的不斷提升,很多行為都可以繞過網(wǎng)站的WAF去進行入侵,這給網(wǎng)站安全 造成了不小的沖擊,也使得很多網(wǎng)站防護軟件開始變得不可靠起來。

【發(fā)明內容】

[0004] 鑒于此,本發(fā)明提供了一種異常訪問行為檢測方法及裝置,能夠有效地改善上述 問題。
[0005] 為了實現(xiàn)上述目的,本發(fā)明實施例提供的技術方案如下:
[0006] 第一方面,本發(fā)明實施例提供了一種異常訪問行為檢測方法,所述方法包括:獲取 用戶的訪問請求,所述訪問請求包括對應于所述用戶的訪問請求的訪問行為的標記信息; 將所述標記信息添加到所述用戶的歷史訪問序列中獲得當前訪問序列;將所述當前訪問序 列與預設的異常訪問序列表進行匹配,當匹配滿足第一預設規(guī)則時,判定所述用戶的當前 訪問行為為異常訪問行為。
[0007] 第二方面,本發(fā)明實施例還提供了一種異常訪問行為檢測裝置。所述裝置包括:第 一獲取單元、第二獲取單元及匹配單元。第一獲取單元用于獲取用戶的訪問請求,所述訪問 請求包括對應于所述用戶的訪問請求的訪問行為的標記信息;第二獲取單元,用于將所述 標記信息添加到所述用戶的歷史訪問序列中獲得當前訪問序列;匹配單元,用于將所述當 前訪問序列與預設的異常訪問序列表進行匹配,當匹配滿足第一預設規(guī)則時,判定所述用 戶的當前訪問行為為異常訪問行為。
[0008] 本發(fā)明實施例提供的異常訪問行為檢測方法及裝置通過代理服務器獲取用戶的 訪問請求,且訪問請求中包括了對應于該用戶的訪問請求的訪問行為的標記信息。進一步, 將當前訪問請求所包括的標記信息添加到該用戶的歷史訪問序列中以更新歷史訪問序列 得到當前訪問序列。將當前訪問序列與預設的異常訪問序列表進行匹配,當滿足第一預設 規(guī)則時,即可以實時檢測出該用戶的訪問行為為異常訪問行為。相比于傳統(tǒng)的基于規(guī)則去 進行匹配和檢測的防護手段,本實施基于反向代理技術監(jiān)測用戶與web服務器之間的交互 信息,以用戶的訪問行為作為數(shù)據(jù)源與預設的異常訪問序列表進行匹配,以實時檢測用戶 的異常訪問行為,有效地提高了檢測結果的準確性和可靠性。
[0009] 為使本發(fā)明的上述目的、特征和優(yōu)點能更明顯易懂,下文特舉較佳實施例,并配合 所附附圖,作詳細說明如下。
【附圖說明】
[0010] 為了更清楚地說明本發(fā)明實施例的技術方案,下面將對實施例中所需要使用的附 圖作簡單地介紹,應當理解,以下附圖僅示出了本發(fā)明的某些實施例,因此不應被看作是對 范圍的限定,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這 些附圖獲得其他相關的附圖。
[0011]圖1是本發(fā)明較佳實施例提供的用戶終端、代理服務器與web服務器進行交互的示 意圖;
[0012] 圖2是本發(fā)明較佳實施例提供的代理服務器的結構框圖;
[0013] 圖3是本發(fā)明較佳實施例提供的一種異常訪問行為檢測方法的流程圖;
[0014] 圖4是本發(fā)明較佳實施例提供的另一種異常訪問行為檢測方法的流程圖;
[0015] 圖5是本發(fā)明較佳實施例提供的另一種異常訪問行為檢測方法中步驟S470的流程 圖;
[0016] 圖6是本發(fā)明較佳實施例提供的一種異常訪問行為檢測裝置的結構框圖;
[0017] 圖7是本發(fā)明較佳實施例提供的另一種異常訪問行為檢測裝置的結構框圖;
[0018] 圖8是本發(fā)明較佳實施例提供的另一種異常訪問行為檢測裝置的結構框圖。
【具體實施方式】
[0019] 下面將結合本發(fā)明實施例中附圖,對本發(fā)明實施例中的技術方案進行清楚、完整 地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。通常在 此處附圖中描述和示出的本發(fā)明實施例的組件可以以各種不同的配置來布置和設計。因 此,以下對在附圖中提供的本發(fā)明的實施例的詳細描述并非旨在限制要求保護的本發(fā)明的 范圍,而是僅僅表示本發(fā)明的選定實施例?;诒景l(fā)明的實施例,本領域技術人員在沒有做 出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0020] 應注意到:相似的標號和字母在下面的附圖中表示類似項,因此,一旦某一項在一 個附圖中被定義,則在隨后的附圖中不需要對其進行進一步定義和解釋。同時,在本發(fā)明的 描述中,術語"第一"、"第二"等僅用于區(qū)分描述,而不能理解為指示或暗示相對重要性。
[0021] 本發(fā)明下述各實施例如無特別說明均可應用于如圖1所示的環(huán)境中,如圖1所示, 用戶終端100、代理服務器200及web服務器300之間通過網(wǎng)絡400進行數(shù)據(jù)交互。所述代理服 務器200可以是網(wǎng)絡服務器、數(shù)據(jù)庫服務器等。其中,用戶終端100可以包括:PC(p ers〇nal computer)電腦、平板電腦、手機、筆記本電腦等終端設備。在用戶終端100與web服務器300 之間設置代理服務器200的目的在于有效地檢測用戶與web服務器300之間的交互信息,實 時監(jiān)測用戶的訪問流量。
[0022]用戶終端100用于發(fā)送用戶的訪問請求。代理服務器200用于獲取用戶的訪問請 求,所述訪問請求包括對應于所述用戶的訪問請求的訪問行為的標記信息,將所述標記信 息添加到所述用戶的歷史訪問序列中獲得當前訪問序列,將所述當前訪問序列與預設的異 常訪問序列表進行匹配,當匹配滿足第一預設規(guī)則時,判定所述用戶的當前訪問行為為異 常訪問行為,當匹配不滿足第一預設規(guī)則時,將訪問請求發(fā)送給web服務器300。為了適用于 對多個用戶終端100發(fā)送的訪問請求進行監(jiān)測和轉發(fā),代理服務器200也可以有多個。
[0023]如圖2所示,是所述代理服務器200的方框示意圖。所述代理服務器200包括異常訪 問行為檢測裝置210、存儲器220、存儲控制器230、處理器240及外設接口 250。
[0024] 所述存儲器220、存儲控制器230、處理器240、外設接口 250各元件相互之間直接或 間接地電性連接,以實現(xiàn)數(shù)據(jù)的傳輸或交互。例如,這些元件相互之間可通過一條或多條通 訊總線或信號線實現(xiàn)電性連接。所述異常訪問行為檢測裝置210包括至少一個可以軟件或 固件(firmware)的形式存儲于所述存儲器220中或固化在所述代理服務器200的操作系統(tǒng) (operating system,0S)中的軟件功能模塊。所述處理器240用于執(zhí)行存儲器220中存儲的 可執(zhí)行模塊,例如所述異常訪問行為檢測裝置210包括的軟件功能模塊或計算機程序。 [00 25] 其中,存儲器220可以是,但不限于,隨機存取存儲器(Random Access Memory, RAM),只讀存儲器(Read Only Memory,R0M),可編程只讀存儲器(Programmable Read-Only Memory,PR0M),可擦除只讀存儲器(Erasable Programmable Read-Only Memory,EPR0M), 電可擦除只讀存儲器(Electric Erasable Programmable Read-Only Memory,EEPR0M)等。 其中,存儲器220用于存儲程序,所述處理器240在接收到執(zhí)行指令后,執(zhí)行所述程序,前述 本發(fā)明實施例任一實施例揭示的流過程定義的服務器所執(zhí)行的方法可以應用于處理器240 中,或者由處理器240實現(xiàn)。
[0026] 處理器240可能是一種集成電路芯片,具有信號的處理能力。上述的處理器240可 以是通用處理器,包括中央處理器(Central Processing Unit,簡稱CPU)、網(wǎng)絡處理器 (Network Processor,簡稱NP)等;還可以是數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、 現(xiàn)成可編程門陣列(FPGA)或者其他可編程邏輯器件、分立門或者晶體管邏輯器件、分立硬 件組件。可以實現(xiàn)或者執(zhí)行本發(fā)明實施例中的公開的各方法、步驟及邏輯框圖。通用處理器 可以是微處理器或者該處理器240也可以是任何常規(guī)的處理器等。
[0027] 所述外設接口 250將各種輸入/輸出裝置耦合至處理器240以及存儲器220。在一些 實施例中,外設接口 250,處理器240以及存儲控制器230可以在單個芯片中實現(xiàn)。在其他一 些實例中,他們可以分別由獨立的芯片實現(xiàn)。
[0028] 圖3示出了本發(fā)明實施例提供的一種異常訪問行為檢測方法的流程圖。如圖3所 示,所述方法包括:
[0029] 步驟S310,獲取用戶的訪問請求,所述訪問請求包括對應于用戶的訪問請求的訪 問行為的標記信息;
[0030] 代理服務器200獲取用戶通過用戶終端100發(fā)送的訪問請求之前,web服務器300中 的內容需要預先根據(jù)用戶的訪問行為被劃分為多個模塊,每一個模塊均分別對應于一個標 記信息。例如,某web服務器300被劃分為用戶注冊模塊、用戶登錄模塊、新聞瀏覽模塊及發(fā) 表評論模塊,用戶注冊模塊對應的標記信息為1,用戶登錄模塊對應的標記信息為2,新聞瀏 覽模塊對應的標記信息為3,發(fā)表評論模塊對應的標記信息為4。當用戶的訪問行為發(fā)生在 用戶注冊模塊時,用戶的訪問請求中包括標記信息1,當用戶的訪問行為發(fā)生在用戶登錄模 塊時,用戶的訪問請求中包括標記信息2。
[0031] 步驟S320,將所述標記信息添加到用戶的歷史訪問序列中獲得當前訪問序列;
[0032]在代理服務器200獲取到用戶的當前訪問請求之前,該用戶在小于預設的時間間 隔內可能對web服務器300進行了多次訪問,即向web服務器300發(fā)出了多次訪問請求。上述 多次訪問請求中分別包括的標記信息按照時間先后順序構成該用戶的歷史訪問序列。 [0033]當代理服務器200獲取到用戶的當前訪問請求時,獲取當前訪問請求所包括的標 記信息,將該標記信息添加到上述歷史訪問序列中,更新歷史訪問序列得到當前訪問序列。 例如,代理服務器200獲取到用戶的當前訪問請求所包括的標記信息為3,此時,對應的歷史 訪問序列為{1,2},更新后的當前訪問序列為{1,2,3};代理服務器200在上述預設時間間隔 內獲取到的與當前訪問請求相鄰的下一個訪問請求所包括的標記信息為4,此時,對應的歷 史訪問序列為{1,2,3},更新后的當前訪問序列為{1,2,3,4}??梢岳斫獾氖牵敶矸掌?200獲取到用戶的當前訪問請求之前,該用戶在小于預設的時間間隔內沒有訪問記錄,則對 應的歷史訪問序列中沒有標記信息,更新后的當前訪問序列為{3}。
[0034]步驟S330,將當前訪問序列與預設的異常訪問序列表進行匹配,判斷匹配是否滿 足第一預設規(guī)則?
[0035]其中,異常訪問序列表可以預先設置在代理服務器200中,包括多個異常訪問序 列,每一個異常訪問序列均對應于一種異常訪問行為。例如,對應于上述步驟S310中的模塊 劃分示例,異常訪問序列表中可以包括序列{1,2,4,4,4,···,4}、{2,2,2,2,···,2}等異常范 文序列。當代理服務器200獲得當前訪問序列后,將當前訪問序列與異常訪問序列進行匹 配。當當前訪問序列與異常訪問序列表的匹配滿足第一預設規(guī)則時,執(zhí)行步驟S340。當當前 訪問序列與預設的異常訪問序列表的匹配不滿足第一預設規(guī)則時,執(zhí)行步驟S350。具體的, 第一預設規(guī)則可以為:異常訪問序列表中存在與所述當前訪問序列一致的序列。另外,需要 說明的是,上述異常訪問序列表除了儲存在代理服務器200外,也可以存儲在其他的存儲設 備中。
[0036] 步驟S340,判定所述用戶的當前訪問行為為異常訪問行為。
[0037] 在本發(fā)明的一種實施例中,當判定用戶的當前訪問行為為異常訪問行為時,代理 服務器200可以攔截該用戶的當前訪問請求,并對該用戶的身份信息進行標記,將標記后的 用戶的身份信息發(fā)送給web服務器300,以便于網(wǎng)站服務及進行處理。其中,所述身份信息可 以為域名信息。
[0038] 步驟S350,將訪問請求發(fā)送到web服務器300。
[0039] 經過上述步驟S320及步驟S330后,當當前訪問序列與預設的異常訪問序列表的匹 配不滿足上述第一預設規(guī)則時,可以判定該用戶的當前訪問行為為正常訪問行為,此時,將 該用戶的訪問請求發(fā)送到web服務器300。
[0040] 基于上述異常訪問行為檢測方法,可以實現(xiàn)用戶異常訪問行為的實時檢測。為了 進一步提高檢測的準確度,還需要對上述異常訪問序列表進行更新,以適應于新興的攻擊 行為。對于異常訪問序列表的更新方案將在下述實施例中進行詳細介紹。
[0041] 圖4示出了本發(fā)明實施例提供的另一種異常訪問行為檢測方法。如圖4所示,所述 方法包括:
[0042]步驟S410,獲取用戶的訪問請求,所述訪問請求包括對應于所述用戶的訪問請求 的訪問行為的標記信息;
[0043]步驟S420,將所述標記信息添加到所述用戶的歷史訪問序列中獲得當前訪問序 列;
[0044]步驟S430,將所述當前訪問序列與預設的異常訪問序列表進行匹配,判斷匹配是 否滿足第一預設規(guī)則?
[0045]當當前訪問序列與異常訪問序列表的匹配滿足第一預設規(guī)則時,執(zhí)行步驟S440。 當當前訪問序列與預設的異常訪問序列表的匹配不滿足第一預設規(guī)則時,執(zhí)行步驟S450。 [0046]步驟S440,判定所述用戶的當前訪問行為為異常訪問行為。
[0047] 步驟S450,將所述訪問請求發(fā)送到web服務器300。
[0048] 步驟S410至步驟S450的實施方式可以參考步驟S310至步驟S350,此處不再贅述。 [0049]步驟S460,根據(jù)所述訪問請求獲得訪問數(shù)據(jù)并存儲。
[0050]代理服務器200獲取到用戶的當前訪問請求后,一方面執(zhí)行上述步驟S420至步驟 S450,根據(jù)該用戶的當前訪問請求檢測該用戶的訪問行為是否為異常訪問行為;另一方面 根據(jù)用戶的當前訪問請求獲得相應的訪問數(shù)據(jù),所述訪問數(shù)據(jù)包括上述標記信息。
[0051]具體的,可以先對所述訪問請求進行數(shù)據(jù)清洗得到具有預設格式的訪問數(shù)據(jù);再 將所得到的訪問數(shù)據(jù)存儲到數(shù)據(jù)庫中。數(shù)據(jù)清洗是對數(shù)據(jù)進行重新審查和校驗的過程,目 的在于刪除重復信息、糾正存在的錯誤,保證數(shù)據(jù)一致性,有利于數(shù)據(jù)的長期存儲和查詢。 例如,訪問數(shù)據(jù)中可以包括域名信息、當前訪問請求的發(fā)出時間、標記信息等。當然,數(shù)據(jù)清 洗的過程可以發(fā)生在代理服務器200?;蛘?,也可以是代理服務器200將當前訪問請求轉發(fā) 給數(shù)據(jù)清洗服務器,數(shù)據(jù)清洗服務器對所述當前訪問請求進行數(shù)據(jù)清洗后將得到的訪問數(shù) 據(jù)發(fā)送回代理服務器200,代理服務器200再對獲得的訪問數(shù)據(jù)進行存儲。為了便于所獲得 的訪問數(shù)據(jù)的管理,代理服務器200可以優(yōu)選將得到的訪問數(shù)據(jù)存儲在數(shù)據(jù)庫中。其中,數(shù) 據(jù)庫可以是設置在代理服務器200中,也可以設置在其他存儲設備中。
[0052]步驟S470,按照第二預設規(guī)則對所存儲的訪問數(shù)據(jù)進行分析,生成多個異常訪問 序列。
[0053]代理服務器200將獲取到的所有用戶的訪問請求對應的訪問數(shù)據(jù)進行存儲,優(yōu)選 存儲在數(shù)據(jù)庫中。當數(shù)據(jù)庫存儲的訪問數(shù)據(jù)的數(shù)據(jù)量大于預設值時,可以按照第二預設規(guī) 則對存儲在所述數(shù)據(jù)庫中的多個訪問數(shù)據(jù)進行分析,生成多個異常訪問序列,以用于動態(tài) 更新上述異常訪問序列表。其中,預設值可以根據(jù)經驗設置。
[0054] 如圖5所示,步驟S470具體包括步驟S471至步驟S473。
[0055]步驟S471,根據(jù)用戶在預設時間間隔內的多次訪問請求對應的標記信息將存儲在 數(shù)據(jù)庫中的多個訪問數(shù)據(jù)劃分為多個行為序列。
[0056]可以將小于預設時間間隔內某一用戶對web服務器300發(fā)出的多次訪問請求作為 連續(xù)訪問行為。因此,可以根據(jù)該用戶在預設時間間隔內發(fā)出的多次訪問請求對應的多個 訪問數(shù)據(jù)將存儲在數(shù)據(jù)庫中的多個訪問數(shù)據(jù)劃分為多個行為序列。每一個行為序列均由同 一個用戶在小于預設時間間隔內先后對web服務器300發(fā)出的多次訪問請求對應的訪問數(shù) 據(jù)中的標記信息組成。需要說明的是,所述小于預設間隔為該用戶對web服務器300發(fā)出的 相鄰兩個訪問請求的間隔時間小于預設時間間隔。其中,預設時間間隔根據(jù)經驗設置。 [0057]例如,某一用戶在小于預設時間間隔內對web服務器300的訪問行為依次為:用戶 注冊-用戶登錄-瀏覽新聞-發(fā)表評論,此時,數(shù)據(jù)庫中對應劃分的行為序列為{1,2,3, 4}。又例如,某一用戶在小于預設時間間隔內對web服務器300的訪問行為依次為:用戶注冊 -用戶登錄-瀏覽新聞-發(fā)表評論-……-發(fā)表評論,其中,省略號表示發(fā)表了N次評論,N 為正整數(shù),此時,數(shù)據(jù)庫中對應劃分的行為序列為{1,2,3,4,···,4}。
[0058] 步驟S472,根據(jù)預設的聚類算法對多個行為序列進行分類訓練得到多個行為序列 類。
[0059] 執(zhí)行完步驟S471后,即可以將存儲在數(shù)據(jù)庫中的各個用戶的訪問數(shù)據(jù)劃分為多個 行為序列。以所述多個行為序列為分析對象,根據(jù)預設的聚類算法對多個行為序列進行聚 類分析可以將其劃分為多個行為序列類,其中,每一個行為序列類均對應一個輸出概率。本 實施例中,預設的聚類算法可以為隱馬爾科夫模型(Hidden Markov Model,ΗΜΜ),或者是其 它以觀測序列為分析對象的聚類分析模型。
[0060] 以隱馬爾科夫模型為例,具體的分析過程可以為包括初始分類步驟和迭代更新步 驟。
[0061] 初始劃分步驟:
[0062]利用TPSDTW距離及預設的類別數(shù)Κ將多個行為序列劃分為Κ個初始行為序列類。例 如,多個行為序列包括〇1、〇2、〇3、一、〇",根據(jù)多個行為序列可以構建行為序列集〇={〇 1,〇2, D3,…,Dn}。根據(jù)預設的類別數(shù)Κ可以將多個行為序列劃分為Κ個初始行為序列類,構建分類 序列集?={&,&,···,0(}(如
[0063] 迭代更新步驟:
[0064] 步驟1:對K個初始行為序列類進行訓練,得至ijK個HMM模型參數(shù)h,λ2,…,λ κ,得到與 各個初始行為序列類對應的ΗΜΜ模型{HMMi,ΗΜΜ2,…,ΗΜΜκ}。
[0065] 步驟2:根據(jù)各個初始行為序列類對應的ΗΜΜ模型計算目標函數(shù)的函數(shù)值。本實施 例中,目標函數(shù)可以為聯(lián)合似然函數(shù),如下式所示:
,其中,UDdAk) = P(Di |Xk),P表示輸出概率函數(shù)。
[0066] 步驟3:判斷目標函數(shù)的函數(shù)值是否滿足收斂條件。具體的,可以通過比較相鄰兩 次迭代所得到的函數(shù)值是否小于預設閾值,所述預設閾值可以是根據(jù)經驗預先設置的一個 較小的值。
[0067] 當當前函數(shù)值滿足收斂條件時,輸出當前的初始行為序列類作為最優(yōu)分類結果, 結束迭代,得到多個行為序列類。
[0068] 當當前函數(shù)值不滿足收斂條件時,對行為序列集中的任一序列Di*配給輸出概率 最大的模型HMM」對應的初始行為序列類,以對初始行為序列類進行更新,更新后的初始行 為序列類可以表示為C ={(:/,(V,···,0/ }。對更新后的初始行為序列類重復步驟1至步驟 3直至當前函數(shù)值滿足收斂條件。
[0069] 需要說明的是,根據(jù)初始劃分步驟得到的初始行為序列類對應的HMM模型所計算 得到目標函數(shù)的函數(shù)值即第一次迭代得到的函數(shù)值可以直接判定為不滿足收斂條件,即迭 代次數(shù)大于或等于2。
[0070] 步驟S473,將每一個行為序列類的輸出概率與預設的概率閾值進行對比,將輸出 概率小于概率閾值的行為序列類中的行為序列作為異常訪問序列。
[0071] 將上述步驟S472得到的多個行為序列類分為對應于正常訪問行為的行為序列類 和對應異常訪問行為的行為序列類。能夠理解到的是,大多數(shù)用戶的訪問行為均為正常訪 問行為,因此,可以根據(jù)所得到的每一個行為序列類的輸出概率多個行為序列類進行劃分。 具體的,將輸出概率小于預設的概率閾值的行為序列類均作為對應異常訪問行為的行為序 列類。將對應異常訪問行為的行為序列類中的行為序列均作為異常訪問序列,用于對預先 設置的異常方位序列表進行更新。當然,輸出概率大于或等于預設的概率閾值的行為序列 類均作為對應正常訪問行為的行為序列類。其中,概率閾值可以根據(jù)經驗設置。
[0072] 步驟S480,將所生成的多個異常訪問序列添加到異常訪問序列表中。
[0073] 通過對存儲的大量訪問數(shù)據(jù)進行大數(shù)據(jù)分析生成的多個異常訪問序列對預設的 異常訪問序列表進行動態(tài)更新,使得更新后的異常訪問序列表能夠適應新興的異常訪問行 為,有利于提高本發(fā)明實施例提供的異常訪問行為檢測方法的準確度。
[0074] 需要說明的是,步驟S460至步驟S480可以發(fā)生在步驟S420之前,也可以發(fā)生在步 驟S420至步驟S450之間,或者是發(fā)生在步驟S440或步驟S450之后。
[0075] 在本發(fā)明的一種實施例中,可以將異常訪問序列表作為一個場景庫。每一個異常 訪問序列均作為一種場景。其中,場景可以理解為一種行為規(guī)則,可以詮釋一種訪問模式。 拿一個論壇網(wǎng)站來說,對普通用戶而言,如果你想發(fā)帖留言,那么正常的訪問軌跡是注冊頁 面-發(fā)帖頁面-發(fā)表帖子-瀏覽其他帖子;而對于攻擊者而言,攻擊者去注冊用戶往往只 是為了尋找上傳或者其他能觸發(fā)跨站腳本的接口,那么他的訪問軌跡很可能是注冊頁面- 不停地修改論壇頭像-不停地發(fā)帖。無論是攻擊者還是普通用戶,這兩種行為在本質上都 不會觸發(fā)傳統(tǒng)的Web應用防火墻(Web Application Firewall,WAF)的檢測規(guī)則。然而,攻擊 者或許可以模擬正常用戶的訪問請求,但是模擬不了正常用戶的訪問行為,只要上述攻擊 者的訪問行為被記錄在代理服務器200的場景庫中,即可以被本發(fā)明實施例提供的異常訪 問行為檢測方法檢測出來,從而有效地攔截攻擊請求。
[0076] 綜上所述,本發(fā)明實施例基于反向代理的數(shù)據(jù)采集技術,在用戶終端100與web月艮 務器300之間設置了代理服務器200,以實時獲取用戶的訪問請求。相比于傳統(tǒng)的防護手段, 本發(fā)明實施例提供的異常訪問行為檢測方法,以用戶的訪問行為作為數(shù)據(jù)源與預設的異常 訪問序列表進行匹配,以實時檢測用戶的異常訪問行為,有效地提高了檢測結果的準確性 和可靠性。此外,通過存儲并分析所獲取到的用戶的訪問請求,生成多個異常訪問序列,對 預設的異常訪問序列表進行更新,有利于進一步提高檢測的準確性和可靠性。
[0077]如圖6所示,本發(fā)明實施例還提供了一種異常訪問行為檢測裝置210,運行于代理 服務器200。該異常訪問行為檢測裝置210包括:第一獲取單元211、第二獲取單元212及匹配 單元213。
[0078] 其中,第一獲取單元211用于獲取用戶的訪問請求,所述訪問請求包括對應于所述 用戶的訪問請求的訪問行為的標記信息。
[0079] 第二獲取單元212用于將所述標記信息添加到所述用戶的歷史訪問序列中獲得當 前訪問序列。
[0080] 匹配單元213用于將所述當前訪問序列與預設的異常訪問序列表進行匹配,當匹 配滿足第一預設規(guī)則時,判定所述用戶的當前訪問行為為異常訪問行為。此外,匹配單元 213還用于當匹配不滿足第一預設規(guī)則時,將所述訪問請求發(fā)送到web服務器300。
[0081] 如圖7所示,本發(fā)明實施例還提供了另一種異常訪問行為檢測裝置210,運行于代 理服務器200。所述異常訪問行為檢測裝置210除了包括第一獲取單元211、第二獲取單元 212及匹配單元213之外,還包括:存儲單元214、異常訪問序列生成單元215及更新單元216。
[0082] 其中,存儲單元214用于根據(jù)所述訪問請求獲得訪問數(shù)據(jù)并存儲,所述訪問數(shù)據(jù)包 括所述標記信息。
[0083] 異常訪問序列生成單元215用于按照第二預設規(guī)則對所存儲的訪問數(shù)據(jù)進行分 析,生成多個異常訪問序列。
[0084] 更新單元216用于將所生成的所述多個異常訪問序列添加到所述異常訪問序列表 中,以更新所述異常訪問序列表。
[0085]具體的,如圖8所示,存儲單元214包括數(shù)據(jù)清洗子單元2141和訪問數(shù)據(jù)存儲子單 元2142。
[0086] 數(shù)據(jù)清洗子單元2141用于對所述訪問請求進行數(shù)據(jù)清洗得到訪問數(shù)據(jù)。
[0087] 訪問數(shù)據(jù)存儲子單元2142用于將所述訪問數(shù)據(jù)存儲到數(shù)據(jù)庫中。
[0088] 此時,所述異常訪問序列生成單元215具體用于當所述數(shù)據(jù)庫存儲的訪問數(shù)據(jù)的 數(shù)據(jù)量大于預設值時,按照第二預設規(guī)則對存儲在所述數(shù)據(jù)庫中的多個訪問數(shù)據(jù)進行分 析,生成多個異常訪問序列。
[0089] 具體的,所述異常訪問序列生成單元215包括行為序列劃分子單元2151、行為序列 類劃分子單元2152及異常訪問序列獲取子單元2153。
[0090] 其中,行為序列劃分子單元2151用于根據(jù)所述用戶在預設時間間隔內的多次訪問 請求對應的標記信息將存儲在所述數(shù)據(jù)庫中的多個訪問數(shù)據(jù)劃分為多個行為序列。
[0091] 行為序列類劃分子單元2152用于根據(jù)預設的聚類算法對所述多個行為序列進行 分類訓練得到多個行為序列類,其中,每一個行為序列類均對應一個輸出概率。
[0092]異常訪問序列獲取子單元2153用于將每一個所述行為序列類的輸出概率與預設 的概率閾值進行對比,將所述輸出概率小于所述概率閾值的行為序列類中的行為序列作為 異常訪問序列。
[0093] 所屬領域的技術人員可以清楚地了解到,為描述的方便和簡潔,上述描述的裝置 和單元的具體工作過程,可以參考前述方法實施例中的對應過程,在此不再贅述。
[0094] 在本申請所提供的幾個實施例中,應該理解到,所揭露的裝置和方法,也可以通過 其它的方式實現(xiàn)。以上所描述的裝置實施例僅僅是示意性的,例如,附圖中的流程圖和框圖 顯示了根據(jù)本發(fā)明的多個實施例的裝置、方法和計算機程序產品的可能實現(xiàn)的體系架構、 功能和操作。在這點上,流程圖或框圖中的每個方框可以代表一個模塊、程序段或代碼的一 部分,所述模塊、程序段或代碼的一部分包含一個或多個用于實現(xiàn)規(guī)定的邏輯功能的可執(zhí) 行指令。也應當注意,在有些作為替換的實現(xiàn)方式中,方框中所標注的功能也可以以不同于 附圖中所標注的順序發(fā)生。例如,兩個連續(xù)的方框實際上可以基本并行地執(zhí)行,它們有時也 可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每 個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或動作的專用的基 于硬件的系統(tǒng)來實現(xiàn),或者可以用專用硬件與計算機指令的組合來實現(xiàn)。
[0095] 另外,在本發(fā)明各個實施例中的各功能模塊可以集成在一起形成一個獨立的部 分,也可以是各個模塊單獨存在,也可以兩個或兩個以上模塊集成形成一個獨立的部分。
[0096] 所述功能如果以軟件功能模塊的形式實現(xiàn)并作為獨立的產品銷售或使用時,可以 存儲在一個計算機可讀取存儲介質中?;谶@樣的理解,本發(fā)明的技術方案本質上或者說 對現(xiàn)有技術做出貢獻的部分或者該技術方案的部分可以以軟件產品的形式體現(xiàn)出來,該計 算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個 人計算機,服務器,或者網(wǎng)絡設備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。 而前述的存儲介質包括:U盤、移動硬盤、只讀存儲器(R0M,Read-0nly Memory)、隨機存取存 儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質。需要 說明的是,在本文中,諸如第一和第二等之類的關系術語僅僅用來將一個實體或者操作與 另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實 際的關系或者順序。而且,術語"包括"、"包含"或者其任何其他變體意在涵蓋非排他性的包 含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括 沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。 在沒有更多限制的情況下,由語句"包括一個……"限定的要素,并不排除在包括所述要素 的過程、方法、物品或者設備中還存在另外的相同要素。
[0097]以上所述,僅為本發(fā)明的【具體實施方式】,但本發(fā)明的保護范圍并不局限于此,任何 熟悉本技術領域的技術人員在本發(fā)明揭露的技術范圍內,可輕易想到變化或替換,都應涵 蓋在本發(fā)明的保護范圍之內。因此,本發(fā)明的保護范圍應所述以權利要求的保護范圍為準。
【主權項】
1. 一種異常訪問行為檢測方法,其特征在于,所述方法包括: 獲取用戶的訪問請求,所述訪問請求包括對應于所述用戶的訪問請求的訪問行為的標 記信息; 將所述標記信息添加到所述用戶的歷史訪問序列中獲得當前訪問序列; 將所述當前訪問序列與預設的異常訪問序列表進行匹配,當匹配滿足第一預設規(guī)則 時,判定所述用戶的當前訪問行為為異常訪問行為。2. 根據(jù)權利要求1所述的方法,其特征在于,所述的獲取用戶的訪問請求的步驟之后, 還包括: 根據(jù)所述訪問請求獲得訪問數(shù)據(jù)并存儲,所述訪問數(shù)據(jù)包括所述標記信息; 按照第二預設規(guī)則對所存儲的訪問數(shù)據(jù)進行分析,生成多個異常訪問序列; 將所生成的所述多個異常訪問序列添加到所述異常訪問序列表中,以更新所述異常訪 問序列表。3. 根據(jù)權利要求2所述的方法,其特征在于,所述的根據(jù)所述訪問請求獲得訪問數(shù)據(jù)并 存儲的步驟,包括: 對所述訪問請求進行數(shù)據(jù)清洗得到訪問數(shù)據(jù); 將所述訪問數(shù)據(jù)存儲到數(shù)據(jù)庫中; 所述按照第二預設規(guī)則對所存儲的訪問數(shù)據(jù)進行分析,生成多個異常訪問序列,包括: 當所述數(shù)據(jù)庫存儲的訪問數(shù)據(jù)的數(shù)據(jù)量大于預設值時,按照第二預設規(guī)則對存儲在所 述數(shù)據(jù)庫中的多個訪問數(shù)據(jù)進行分析,生成多個異常訪問序列。4. 根據(jù)權利要求3所述的方法,其特征在于,所述的按照第二預設規(guī)則對存儲在所述數(shù) 據(jù)庫中的多個訪問數(shù)據(jù)進行分析,生成多個異常訪問序列的步驟,包括: 根據(jù)所述用戶在預設時間間隔內的多次訪問請求對應的標記信息將存儲在所述數(shù)據(jù) 庫中的多個訪問數(shù)據(jù)劃分為多個行為序列; 根據(jù)預設的聚類算法對所述多個行為序列進行分類訓練得到多個行為序列類,其中, 每一個行為序列類均對應一個輸出概率; 將每一個所述行為序列類的輸出概率與預設的概率閾值進行對比,將所述輸出概率小 于所述概率閾值的行為序列類中的行為序列作為異常訪問序列。5. 根據(jù)權利要求1所述的方法,其特征在于,所述的將所述當前訪問序列與預設的異常 訪問序列表進行匹配的步驟,還包括:當匹配不滿足第一預設規(guī)則時,將所述訪問請求發(fā)送 至丨Jweb服務器。6. -種異常訪問行為檢測裝置,其特征在于,所述裝置包括: 第一獲取單元,用于獲取用戶的訪問請求,所述訪問請求包括對應于所述用戶的訪問 請求的訪問行為的標記信息; 第二獲取單元,用于將所述標記信息添加到所述用戶的歷史訪問序列中獲得當前訪問 序列; 匹配單元,用于將所述當前訪問序列與預設的異常訪問序列表進行匹配,當匹配滿足 第一預設規(guī)則時,判定所述用戶的當前訪問行為為異常訪問行為。7. 根據(jù)權利要求6所述的裝置,其特征在于,還包括: 存儲單元,用于根據(jù)所述訪問請求獲得訪問數(shù)據(jù)并存儲,所述訪問數(shù)據(jù)包括所述標記 信息; 異常訪問序列生成單元,用于按照第二預設規(guī)則對所存儲的訪問數(shù)據(jù)進行分析,生成 多個異常訪問序列; 更新單元,用于將所生成的所述多個異常訪問序列添加到所述異常訪問序列表中,以 更新所述異常訪問序列表。8. 根據(jù)權利要求7所述的裝置,其特征在于,所述存儲單元包括: 數(shù)據(jù)清洗子單元,用于對所述訪問請求進行數(shù)據(jù)清洗得到訪問數(shù)據(jù); 訪問數(shù)據(jù)存儲子單元,用于將所述訪問數(shù)據(jù)存儲到數(shù)據(jù)庫中; 所述異常訪問序列生成單元具體用于當所述數(shù)據(jù)庫存儲的訪問數(shù)據(jù)的數(shù)據(jù)量大于預 設值時,按照第二預設規(guī)則對存儲在所述數(shù)據(jù)庫中的多個訪問數(shù)據(jù)進行分析,生成多個異 常訪問序列。9. 根據(jù)權利要求8所述的裝置,其特征在于,所述異常訪問序列生成單元包括: 行為序列劃分子單元,用于根據(jù)所述用戶在預設時間間隔內的多次訪問請求對應的標 記信息將存儲在所述數(shù)據(jù)庫中的多個訪問數(shù)據(jù)劃分為多個行為序列; 行為序列類劃分子單元,用于根據(jù)預設的聚類算法對所述多個行為序列進行分類訓練 得到多個行為序列類,其中,每一個行為序列類均對應一個輸出概率; 異常訪問序列獲取子單元,用于將每一個所述行為序列類的輸出概率與預設的概率閾 值進行對比,將所述輸出概率小于所述概率閾值的行為序列類中的行為序列作為異常訪問 序列。10. 根據(jù)權利要求6所述的裝置,其特征在于,所述匹配單元還用于當匹配不滿足第一 預設規(guī)則時,將所述訪問請求發(fā)送到web服務器。
【文檔編號】H04L29/06GK106027577SQ201610631276
【公開日】2016年10月12日
【申請日】2016年8月4日
【發(fā)明人】黃勇, 鄒曉波, 張瑞冬, 何鵬程, 王明俊
【申請人】四川無聲信息技術有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1