本發(fā)明涉及網絡安全技術領域,具體涉及一種防御CC攻擊的方法、一種防御CC攻擊的裝置和一種防御CC攻擊的裝置。
背景技術:
CC(ChallengeCollapsar,直譯為挑戰(zhàn)黑洞,但通常直接表述為CC攻擊)攻擊是一種以網站頁面為主要攻擊目標的應用層的DDoS(Distributed Denial of Service,分布式拒絕服務)攻擊,CC攻擊的原理是攻擊者控制某些主機不停地發(fā)大量數據包給目標服務器造成服務器資源耗盡,無法繼續(xù)正常服務,一直到宕機崩潰。CC攻擊模擬大量用戶不停地訪問那些需要消耗大量服務器資源的頁面,耗盡服務器資源,使得服務器CPU長時間處于100%,永遠都有處理不完的請求,致使服務器無法對正常的請求進行服務。
CC攻擊具有很強的偽裝性,其訪問行為模擬正常用戶訪問特征,以少數僵尸機即可引發(fā)攻擊目標服務器性能癱瘓,阻斷正常用戶訪問,因此,CC攻擊難以被檢測發(fā)現(xiàn),傳統(tǒng)安全防御方法不能有效抵御CC攻擊。
技術實現(xiàn)要素:
針對現(xiàn)有技術中的缺陷,本發(fā)明提供一種防御CC攻擊的方法、裝置及系統(tǒng),以有效地幫助目標服務器抵御CC攻擊。
第一方面,本發(fā)明提供的一種防御CC攻擊的方法,包括:
接收客戶端發(fā)送的訪問目標服務器的訪問請求;
根據所述訪問請求統(tǒng)計所述客戶端針對所述目標服務器的訪問特征數據;
采用預設的攻擊檢測規(guī)則檢測所述訪問特征數據是否異常;
根據檢測結果判斷所述客戶端是否為CC攻擊客戶端;
在判斷結果為否時,將所述訪問請求轉發(fā)至目標服務器。
可選的,在所述采用預設的攻擊檢測規(guī)則對所述訪問特征數據進行檢測前,還包括:
從云安全服務中心的靜態(tài)文件配置中心獲取最新的配置文件列表,所述配置文件列表中包括配置文件的名稱和MD5值;
根據所述最新的配置文件列表中的配置文件的名稱和MD5值檢查本地相應的配置文件是否需要更新;
若需要更新,則從所述靜態(tài)文件配置中心獲取最新的配置文件,所述配置文件中含有預設的攻擊檢測規(guī)則;
或,
通過主從同步的方式從云安全服務中心的主redis數據庫獲取配置數據,所述配置數據中含有預設的攻擊檢測規(guī)則;
將所述配置數據存儲到本地的從redis數據庫中以備隨時調用。
可選的,所述客戶端針對所述目標服務器的訪問特征數據,包括客戶端針對所述目標服務器發(fā)送訪問請求的請求頻率、請求錯誤率、請求重復率和對可疑網址的訪問次數中的至少一項。
可選的,所述客戶端針對所述目標服務器的訪問特征數據,包括客戶端針對所述目標服務器發(fā)送的訪問請求中對可疑網址的訪問次數;
在所述根據所述訪問請求統(tǒng)計所述客戶端針對所述目標服務器的訪問特征數據前,還包括:
根據所述訪問請求統(tǒng)計目標訪問網址的并發(fā)訪問客戶端數量、目標訪問網址的新增訪問客戶端數量、目標訪問網址所屬站點的并發(fā)訪問客戶端數量、目標訪問網址所屬站點的新增訪問客戶端數量、目標訪問網址的并發(fā)訪問客戶端數量占比、目標訪問網址的新增訪問客戶端數量占比中的至少一種目標訪問網址特征數據;
根據統(tǒng)計的所述目標訪問網址特征數據判斷目標訪問網址是否為可疑網址;
根據判斷結果,統(tǒng)計客戶端針對所述目標服務器發(fā)送的訪問請求中對可疑網址的訪問次數。
可選的,所述攻擊檢測規(guī)則中含有所述訪問特征數據相應的異常判定閾值;
所述采用預設的攻擊檢測規(guī)則檢測所述訪問特征數據是否異常,包括:
判斷所述訪問特征數據是否超過相應的異常判定閾值;
若超過,則判斷所述訪問特征數據異常;其中,在所述訪問特征數據有多項時,任意至少一項超過相應的異常判定閾值即判斷所述訪問特征數據異常。
可選的,所述根據檢測結果判斷所述客戶端是否為CC攻擊客戶端,包括:
在檢測結果為所述訪問特征數據正常時,判斷所述客戶端不是CC攻擊客戶端;
在檢測結果為所述訪問特征數據異常時,判斷所述客戶端為可疑客戶端;
向所述可疑客戶端發(fā)送驗證信息以對所述可疑客戶端進行驗證;
在驗證通過后,判斷所述可疑客戶端不是CC攻擊客戶端;
否則,判斷所述可疑客戶端是CC攻擊客戶端。
第二方面,本發(fā)明提供的一種防御CC攻擊的裝置,包括:
訪問請求接收模塊,用于接收客戶端發(fā)送的訪問目標服務器的訪問請求;
訪問特征數據統(tǒng)計模塊,用于根據所述訪問請求統(tǒng)計所述客戶端針對所述目標服務器的訪問特征數據;
訪問特征數據檢測模塊,用于采用預設的攻擊檢測規(guī)則檢測所述訪問特征數據是否異常;
攻擊判斷模塊,用于根據檢測結果判斷所述客戶端是否為CC攻擊客戶端;
訪問請求轉發(fā)模塊,用于在判斷結果為否時,將所述訪問請求轉發(fā)至目標服務器。
可選的,所述防御CC攻擊的裝置,還包括:
配置文件列表獲取模塊,用于從云安全服務中心的靜態(tài)文件配置中心獲取最新的配置文件列表,所述配置文件列表中包括配置文件的名稱和MD5值;
配置文件檢查模塊,用于根據所述最新的配置文件列表中的配置文件的名稱和MD5值檢查本地相應的配置文件是否需要更新;
配置文件更新模塊,用于若需要更新,則從所述靜態(tài)文件配置中心獲取最新的配置文件,所述配置文件中含有預設的攻擊檢測規(guī)則;
或,
配置數據獲取模塊,用于通過主從同步的方式從云安全服務中心的主redis數據庫獲取配置數據,所述配置數據中含有預設的攻擊檢測規(guī)則;
配置數據存儲模塊,用于將所述配置數據存儲到本地的從redis數據庫中以備隨時調用。
可選的,所述客戶端針對所述目標服務器的訪問特征數據,包括客戶端針對所述目標服務器發(fā)送訪問請求的請求頻率、請求錯誤率、請求重復率和對可疑網址的訪問次數中的至少一項。
可選的,所述客戶端針對所述目標服務器的訪問特征數據,包括客戶端針對所述目標服務器發(fā)送的訪問請求中對可疑網址的訪問次數;
所述防御CC攻擊的裝置,還包括:
目標訪問網址特征數據統(tǒng)計模塊,用于根據所述訪問請求統(tǒng)計目標訪問網址的并發(fā)訪問客戶端數量、目標訪問網址的新增訪問客戶端數量、目標訪問網址所屬站點的并發(fā)訪問客戶端數量、目標訪問網址所屬站點的新增訪問客戶端數量、目標訪問網址的并發(fā)訪問客戶端數量占比、目標訪問網址的新增訪問客戶端數量占比中的至少一種目標訪問網址特征數據;
可疑網址判斷模塊,用于根據統(tǒng)計的所述目標訪問網址特征數據判斷目標訪問網址是否為可疑網址;
可疑網址訪問次數統(tǒng)計模塊,用于根據判斷結果,統(tǒng)計客戶端針對所述目標服務器發(fā)送的訪問請求中對可疑網址的訪問次數。
可選的,所述攻擊檢測規(guī)則中含有所述訪問特征數據相應的異常判定閾值;
所述訪問特征數據檢測模塊,包括:
訪問特征數據比較單元,用于判斷所述訪問特征數據是否超過相應的異常判定閾值;
訪問特征數據判斷單元,用于若超過,則判斷所述訪問特征數據異常;其中,在所述訪問特征數據有多項時,任意至少一項超過相應的異常判定閾值即判斷所述訪問特征數據異常。
可選的,所述攻擊判斷模塊,包括:
攻擊客戶端判斷單元,用于在檢測結果為所述訪問特征數據正常時,判斷所述客戶端不是CC攻擊客戶端;
可疑客戶端判斷單元,用于在檢測結果為所述訪問特征數據異常時,判斷所述客戶端為可疑客戶端;
驗證信息發(fā)送單元,用于向所述可疑客戶端發(fā)送驗證信息以對所述可疑客戶端進行驗證;
驗證后攻擊客戶端排除單元,用于在驗證通過后,判斷所述可疑客戶端不是CC攻擊客戶端;
驗證后攻擊客戶端確定單元,用于否則,判斷所述可疑客戶端是CC攻擊客戶端。
第三方面,本發(fā)明提供的一種防御CC攻擊的系統(tǒng),包括:云安全服務中心和與所述云安全服務中心連接的反向代理服務器;
所述云安全服務中心用于向所述反向代理服務器下發(fā)攻擊檢測規(guī)則;
所述反向代理服務器部署于客戶端和目標服務器之間,用于獲取所述云安全服務中心下發(fā)的攻擊檢測規(guī)則,并根據所述攻擊檢測規(guī)則采用本發(fā)明提供的任一項所述的防御CC攻擊的方法對所述目標服務器進行防御。
由上述技術方案可知,本發(fā)明提供的一種防御CC攻擊的方法,用于反向代理服務器,首先接收客戶端發(fā)送的訪問目標服務器的訪問請求;然后根據所述訪問請求統(tǒng)計所述客戶端針對所述目標服務器的訪問特征數據;再采用預設的攻擊檢測規(guī)則檢測所述訪問特征數據是否異常;接下來根據檢測結果判斷所述客戶端是否為CC攻擊客戶端;在判斷結果為否時,將所述訪問請求轉發(fā)至目標服務器。本發(fā)明利用反向代理服務器接收客戶端發(fā)送的訪問請求并進行攻擊檢測,在確定所述客戶端不是CC攻擊客戶端后才將所述訪問請求轉發(fā)至目標服務器,從而實現(xiàn)對目標服務器的CC攻擊防御,由于利用反向代理服務器將客戶端與目標服務器進行了隔離,將目標服務器完全隱藏于CC攻擊客戶端的火力之外,因此,具有良好的防御效果。同時,本發(fā)明是由反向代理服務器執(zhí)行的,不占用目標服務器的系統(tǒng)資源,可以保證目標服務器不會因為防御CC攻擊而減少可用系統(tǒng)資源以及降低運行效率。
本發(fā)明提供的一種防御CC攻擊的裝置及系統(tǒng),與上述防御CC攻擊的方法出于相同的發(fā)明構思,具有相同的有益效果。
附圖說明
為了更清楚地說明本發(fā)明具體實施方式或現(xiàn)有技術中的技術方案,下面將對具體實施方式或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹。
圖1示出了本發(fā)明第一實施例所提供的一種防御CC攻擊的方法的流程圖;
圖2示出了本發(fā)明第二實施例所提供的一種防御CC攻擊的裝置的示意圖;
圖3示出了本發(fā)明第三實施例所提供的一種防御CC攻擊的系統(tǒng)的示意圖。
具體實施方式
下面將結合附圖對本發(fā)明技術方案的實施例進行詳細的描述。以下實施例僅用于更加清楚地說明本發(fā)明的技術方案,因此只是作為示例,而不能以此來限制本發(fā)明的保護范圍。
需要注意的是,除非另有說明,本申請使用的技術術語或者科學術語應當為本發(fā)明所屬領域技術人員所理解的通常意義。
本發(fā)明提供一種防御CC攻擊的方法、一種防御CC攻擊的裝置和一種防御CC攻擊的系統(tǒng)。下面結合附圖對本發(fā)明的實施例進行說明。
圖1示出了本發(fā)明第一實施例所提供的一種防御CC攻擊的方法的流程圖。如圖1所示,本發(fā)明第一實施例提供的一種防御CC攻擊的方法包括以下步驟:
步驟S101:接收客戶端發(fā)送的訪問目標服務器的訪問請求。
本發(fā)明實施例中,所述防御CC攻擊的方法的執(zhí)行主體為反向代理服務器,所述反向代理服務器部署于客戶端和目標服務器之間,以幫助所述目標服務器防御客戶端發(fā)起的CC攻擊,客戶端向所述目標服務器發(fā)送的訪問請求都會首先發(fā)送到反向代理服務器,由所述反向代理服務器判斷該訪問請求是否為CC攻擊,只有在判斷結果為不是CC攻擊時,才將所述訪問請求轉發(fā)到所述目標服務器。
步驟S102:根據所述訪問請求統(tǒng)計所述客戶端針對所述目標服務器的訪問特征數據。
反向代理服務器會根據客戶端發(fā)送的訪問請求統(tǒng)計所述客戶端針對所述目標服務器的訪問特征數據,所述訪問特征數據包括客戶端針對所述目標服務器發(fā)送訪問請求的請求頻率、請求錯誤率、請求重復率和對可疑網址的訪問次數中的至少一項。
容易理解的是,對客戶端的訪問特征數據進行統(tǒng)計,需要對客戶端進行識別,本發(fā)明實施例中,可以采用客戶端的IP地址、用戶名等任意一種方式進行區(qū)分識別,其均在本發(fā)明的保護范圍之內。
其中,請求頻率、請求錯誤率、請求重復率可以根據訪問請求的訪問對象、目標服務器的響應情況直接進行統(tǒng)計,而對可疑網址的訪問次數的統(tǒng)計稍微復雜,因為需要首先判斷哪些是可疑網址,然后才能統(tǒng)計對可疑網址的訪問次數。在本發(fā)明提供的一個實施例中,所述客戶端針對所述目標服務器的訪問特征數據,包括客戶端針對所述目標服務器發(fā)送的訪問請求中對可疑網址的訪問次數;
在所述根據所述訪問請求統(tǒng)計所述客戶端針對所述目標服務器的訪問特征數據前,還包括:
根據所述訪問請求統(tǒng)計目標訪問網址的并發(fā)訪問客戶端數量、目標訪問網址的新增訪問客戶端數量、目標訪問網址所屬站點的并發(fā)訪問客戶端數量、目標訪問網址所屬站點的新增訪問客戶端數量、目標訪問網址的并發(fā)訪問客戶端數量占比、目標訪問網址的新增訪問客戶端數量占比中的至少一種目標訪問網址特征數據;
根據統(tǒng)計的所述目標訪問網址特征數據判斷目標訪問網址是否為可疑網址;
根據判斷結果,統(tǒng)計客戶端針對所述目標服務器發(fā)送的訪問請求中對可疑網址的訪問次數。
步驟S103:采用預設的攻擊檢測規(guī)則檢測所述訪問特征數據是否異常。
根據統(tǒng)計獲得的訪問特征數據,即可根據預設的攻擊檢測規(guī)則判斷其是否異常,在本發(fā)明實施例中,所述反向代理服務器都是由云安全服務中心統(tǒng)一進行管理的,所述攻擊檢測規(guī)則是由云安全服務中心生成后下發(fā)到各個反向代理服務器中的,因此,在本發(fā)明提供的一個實施例中,在所述采用預設的攻擊檢測規(guī)則對所述訪問特征數據進行檢測前,還包括:
從云安全服務中心的靜態(tài)文件配置中心獲取最新的配置文件列表,所述配置文件列表中包括配置文件的名稱和MD5值;
根據所述最新的配置文件列表中的配置文件的名稱和MD5值檢查本地相應的配置文件是否需要更新;
若需要更新,則從所述靜態(tài)文件配置中心獲取最新的配置文件,所述配置文件中含有預設的攻擊檢測規(guī)則;
或,
通過主從同步的方式從云安全服務中心的主redis數據庫獲取配置數據,所述配置數據中含有預設的攻擊檢測規(guī)則;
將所述配置數據存儲到本地的從redis數據庫中以備隨時調用。
在獲取到攻擊檢測規(guī)則后,即可根據所述攻擊檢測規(guī)則對所述訪問特征數據進行檢測,在本發(fā)明提供的一個實施例中,所述攻擊檢測規(guī)則中含有所述訪問特征數據相應的異常判定閾值;
所述采用預設的攻擊檢測規(guī)則檢測所述訪問特征數據是否異常,包括:
判斷所述訪問特征數據是否超過相應的異常判定閾值;
若超過,則判斷所述訪問特征數據異常;其中,在所述訪問特征數據有多項時,任意至少一項超過相應的異常判定閾值即判斷所述訪問特征數據異常。
步驟S104:根據檢測結果判斷所述客戶端是否為CC攻擊客戶端。
經過步驟S103,若檢測結果為所述訪問特征數據正常,則可以判斷所述客戶端不是CC攻擊客戶端,而若檢測結果為所述訪問特征數據異常,則可以判斷所述客戶端是CC攻擊客戶端。
考慮到檢測結果未必一定正確,為了避免錯判,在本發(fā)明提供的一個實施例中,所述根據檢測結果判斷所述客戶端是否為CC攻擊客戶端,包括:
在檢測結果為所述訪問特征數據正常時,判斷所述客戶端不是CC攻擊客戶端;
在檢測結果為所述訪問特征數據異常時,判斷所述客戶端為可疑客戶端;
向所述可疑客戶端發(fā)送驗證信息以對所述可疑客戶端進行驗證;
在驗證通過后,判斷所述可疑客戶端不是CC攻擊客戶端;
否則,判斷所述可疑客戶端是CC攻擊客戶端。
步驟S105:在判斷結果為否時,將所述訪問請求轉發(fā)至目標服務器。
至此,通過步驟S101至步驟S105,完成了本發(fā)明第一實施例所提供的一種防御CC攻擊的方法的流程。本發(fā)明利用反向代理服務器接收客戶端發(fā)送的訪問請求并進行攻擊檢測,在確定所述客戶端不是CC攻擊客戶端后才將所述訪問請求轉發(fā)至目標服務器,從而實現(xiàn)對目標服務器的CC攻擊防御,由于利用反向代理服務器將客戶端與目標服務器進行了隔離,將目標服務器完全隱藏于CC攻擊客戶端的火力之外,因此,具有良好的防御效果。同時,本發(fā)明是由反向代理服務器執(zhí)行的,不占用目標服務器的系統(tǒng)資源,可以保證目標服務器不會因為防御CC攻擊而減少可用系統(tǒng)資源以及降低運行效率。
在本發(fā)明提供的一個優(yōu)選的實施例中,所述防御CC攻擊的方法的具體實現(xiàn)方式為:
采用反向代理抗D集群來防御CC攻擊,每個抗D集群由多臺抗D節(jié)點機(即反向代理服務器)組成,抗D節(jié)點機上的反向代理功能由nginx來實現(xiàn),CC防御功能由nginx的請求處理模塊cc_clear實現(xiàn)。當抗D驅動完成網絡層的流量清洗后,正常的http請求數據包被轉發(fā)到應用層的nginx進程,nginx再根據請求中的host頭來決定將客戶端的請求轉發(fā)給哪一個后端源服務器(即目標服務器)。在nginx處理請求的過程中,會經過一系列請求處理模塊的過濾。其中,cc_clear模塊就是請求處理模塊中的一個,負責過濾可疑的http請求。
具體執(zhí)行時,首先由nginx將請求的各部分信息發(fā)給ccap進程,該進程負責記錄nginx收到的請求,并按照網站,ip和url(目標訪問網址)進行分類統(tǒng)計,并將統(tǒng)計結果存儲在各個不同的時間周期的存儲單元中,分別是秒、分、時、天四種周期。在統(tǒng)計過程中,如果發(fā)現(xiàn)有某個IP的請求頻率、請求錯誤率或請求某URL的重復率超過某個單位時間的閾值時,就會將該IP標識為可疑IP,并將該IP信息發(fā)到nginx,nginx的cc_clear模塊在接收到該信息后,就會在內存中記錄該網站和對應的可疑客戶端IP的信息,并對該可疑IP后續(xù)發(fā)來的請求返回一個驗證碼頁面,當用戶輸入正確的驗證碼之后,將該IP從可疑列表中清除,并認為該IP的請求是正常的用戶請求予以放行,如果該IP在后續(xù)的請求中沒有輸入任何驗證碼,而是繼續(xù)發(fā)送請求,則可以斷定該IP是由程序發(fā)送請求的惡意IP,此時將IP狀態(tài)改為黑名單,后續(xù)發(fā)來的請求一概返回403狀態(tài)碼,10個小時后自動解除封鎖。
另外,攻擊檢測規(guī)則通過如下方式實現(xiàn):
抗D節(jié)點集群上的配置分為兩部分,一部分是nginx靜態(tài)配置文件,是通過get_nginx.py這個進程從nginx配置中心(即云安全服務中心的靜態(tài)文件配置中心)獲取。該進程定時從nginx配置中心讀取一份最新的配置文件列表,列表中包含了配置文件的名稱和MD5值,進程根據MD5值和本地配置文件的MD5值進行比較,有變化的就更新,沒有的就添加,需要刪除的就標識刪除。然后從配置中心獲取相應的配置,最后給nginx發(fā)送重新加載配置文件的命令。
第二部分是redis中的動態(tài)配置,每個抗D節(jié)點機中都有一個redis進程,該進程從屬于redis配置中心的主redis數據庫(即云安全服務中心的主redis數據庫),通過主從同步的方式從主redis庫中獲取配置數據。由于redis是內存數據庫,所有的數據都保存在內存中,所以讀取速度非??欤脩粝掳l(fā)的訪問過濾規(guī)則和waf自定義規(guī)則就保存在redis中。
部分統(tǒng)計參數解釋如下:
客戶端針對目標服務器發(fā)送訪問請求的請求頻率:單位時間內客戶端針對目標服務器發(fā)送訪問請求的次數;
客戶端針對目標服務器發(fā)送訪問請求的請求錯誤率:單位時間內客戶端針對目標服務器發(fā)送訪問請求收到錯誤響應的次數除以單位時間內客戶端針對目標訪問網址發(fā)送訪問請求的次數;
客戶端針對目標服務器發(fā)送訪問請求的請求重復率:單位時間內客戶端針對目標服務器發(fā)送訪問請求的次數除以單位時間內客戶端針對目標訪問網址發(fā)送訪問請求的次數;
目標訪問網址的并發(fā)訪問客戶端數量:對目標訪問網址發(fā)起訪問的客戶端的并發(fā)數量;
目標訪問網址的新增訪問客戶端數量:對目標訪問網址發(fā)起訪問的客戶端的新增數量;
目標訪問網址所屬站點的并發(fā)訪問客戶端數量:對目標訪問網址所屬站點發(fā)起訪問的客戶端的并發(fā)數量;
目標訪問網址所屬站點的新增訪問客戶端數量:對目標訪問網址所屬站點發(fā)起訪問的客戶端的新增數量;
目標訪問網址的并發(fā)訪問客戶端數量占比:過去單位時間內對目標訪問網址發(fā)起訪問的客戶端的并發(fā)數量占到對目標訪問網址所屬站點發(fā)起訪問的客戶端的并發(fā)數量的百分比;
目標訪問網址的新增訪問客戶端數量占比:過去單位時間內對目標訪問網址發(fā)起訪問的客戶端的新增數量占到對目標訪問網址所屬站點發(fā)起訪問的客戶端的新增數量的百分比。
在上述的第一實施例中,提供了一種防御CC攻擊的方法,與之相對應的,本申請還提供一種防御CC攻擊的裝置。請參考圖2,其為本發(fā)明第二實施例提供的一種防御CC攻擊的裝置的示意圖。由于裝置實施例基本相似于方法實施例,所以描述得比較簡單,相關之處參見方法實施例的部分說明即可。下述描述的裝置實施例僅僅是示意性的。
本發(fā)明第二實施例提供的一種防御CC攻擊的裝置,包括:
訪問請求接收模塊101,用于接收客戶端發(fā)送的訪問目標服務器的訪問請求;
訪問特征數據統(tǒng)計模塊102,用于根據所述訪問請求統(tǒng)計所述客戶端針對所述目標服務器的訪問特征數據;
訪問特征數據檢測模塊103,用于采用預設的攻擊檢測規(guī)則檢測所述訪問特征數據是否異常;
攻擊判斷模塊104,用于根據檢測結果判斷所述客戶端是否為CC攻擊客戶端;
訪問請求轉發(fā)模塊105,用于在判斷結果為否時,將所述訪問請求轉發(fā)至目標服務器。
在本發(fā)明提供的一個實施例中,所述防御CC攻擊的裝置,還包括:
配置文件列表獲取模塊,用于從云安全服務中心的靜態(tài)文件配置中心獲取最新的配置文件列表,所述配置文件列表中包括配置文件的名稱和MD5值;
配置文件檢查模塊,用于根據所述最新的配置文件列表中的配置文件的名稱和MD5值檢查本地相應的配置文件是否需要更新;
配置文件更新模塊,用于若需要更新,則從所述靜態(tài)文件配置中心獲取最新的配置文件,所述配置文件中含有預設的攻擊檢測規(guī)則;
或,
配置數據獲取模塊,用于通過主從同步的方式從云安全服務中心的主redis數據庫獲取配置數據,所述配置數據中含有預設的攻擊檢測規(guī)則;
配置數據存儲模塊,用于將所述配置數據存儲到本地的從redis數據庫中以備隨時調用。
在本發(fā)明提供的一個實施例中,所述客戶端針對所述目標服務器的訪問特征數據,包括客戶端針對所述目標服務器發(fā)送訪問請求的請求頻率、請求錯誤率、請求重復率和對可疑網址的訪問次數中的至少一項。
在本發(fā)明提供的一個實施例中,所述客戶端針對所述目標服務器的訪問特征數據,包括客戶端針對所述目標服務器發(fā)送的訪問請求中對可疑網址的訪問次數;
所述防御CC攻擊的裝置,還包括:
目標訪問網址特征數據統(tǒng)計模塊,用于根據所述訪問請求統(tǒng)計目標訪問網址的并發(fā)訪問客戶端數量、目標訪問網址的新增訪問客戶端數量、目標訪問網址所屬站點的并發(fā)訪問客戶端數量、目標訪問網址所屬站點的新增訪問客戶端數量、目標訪問網址的并發(fā)訪問客戶端數量占比、目標訪問網址的新增訪問客戶端數量占比中的至少一種目標訪問網址特征數據;
可疑網址判斷模塊,用于根據統(tǒng)計的所述目標訪問網址特征數據判斷目標訪問網址是否為可疑網址;
可疑網址訪問次數統(tǒng)計模塊,用于根據判斷結果,統(tǒng)計客戶端針對所述目標服務器發(fā)送的訪問請求中對可疑網址的訪問次數。
在本發(fā)明提供的一個實施例中,所述攻擊檢測規(guī)則中含有所述訪問特征數據相應的異常判定閾值;
所述訪問特征數據檢測模塊103,包括:
訪問特征數據比較單元,用于判斷所述訪問特征數據是否超過相應的異常判定閾值;
訪問特征數據判斷單元,用于若超過,則判斷所述訪問特征數據異常;其中,在所述訪問特征數據有多項時,任意至少一項超過相應的異常判定閾值即判斷所述訪問特征數據異常。
在本發(fā)明提供的一個實施例中,所述攻擊判斷模塊104,包括:
攻擊客戶端判斷單元,用于在檢測結果為所述訪問特征數據正常時,判斷所述客戶端不是CC攻擊客戶端;
可疑客戶端判斷單元,用于在檢測結果為所述訪問特征數據異常時,判斷所述客戶端為可疑客戶端;
驗證信息發(fā)送單元,用于向所述可疑客戶端發(fā)送驗證信息以對所述可疑客戶端進行驗證;
驗證后攻擊客戶端排除單元,用于在驗證通過后,判斷所述可疑客戶端不是CC攻擊客戶端;
驗證后攻擊客戶端確定單元,用于否則,判斷所述可疑客戶端是CC攻擊客戶端。
以上,為本發(fā)明第二實施例提供的一種防御CC攻擊的裝置的實施例說明。
本發(fā)明提供的一種防御CC攻擊的裝置與上述防御CC攻擊的方法出于相同的發(fā)明構思,具有相同的有益效果,此處不再贅述。
本發(fā)明還提供一種防御CC攻擊的系統(tǒng),請參考圖3,其為本發(fā)明第三實施例提供的一種防御CC攻擊的系統(tǒng)的示意圖。
本發(fā)明第三實施例提供的一種防御CC攻擊的系統(tǒng),包括:云安全服務中心1和與所述云安全服務中心1連接的反向代理服務器2;其中,
所述云安全服務中心1用于向所述反向代理服務器2下發(fā)攻擊檢測規(guī)則;
所述反向代理服務器2部署于客戶端3和目標服務器4之間,用于獲取所述云安全服務中心1下發(fā)的攻擊檢測規(guī)則,并根據所述攻擊檢測規(guī)則采用本發(fā)明提供的任一項所述的防御CC攻擊的方法對所述目標服務器4進行防御。
由于本實施例中所述反向代理服務器2采用本發(fā)明提供的任一項所述的防御CC攻擊的方法對所述目標服務器4進行防御,因此,請參考上述防御CC攻擊的方法實施例進行理解,此處不再贅述。
本發(fā)明提供的一種防御CC攻擊的系統(tǒng)與上述防御CC攻擊的方法出于相同的發(fā)明構思,具有相同的有益效果。
在本說明書的描述中,參考術語“一個實施例”、“一些實施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結合該實施例或示例描述的具體特征、結構、材料或者特點包含于本發(fā)明的至少一個實施例或示例中。在本說明書中,對上述術語的示意性表述不必須針對的是相同的實施例或示例。而且,描述的具體特征、結構、材料或者特點可以在任一個或多個實施例或示例中以合適的方式結合。此外,在不相互矛盾的情況下,本領域的技術人員可以將本說明書中描述的不同實施例或示例以及不同實施例或示例的特征進行結合和組合。
需要說明的是,附圖中的流程圖和框圖顯示了根據本發(fā)明的多個實施例的系統(tǒng)、方法和計算機程序產品的可能實現(xiàn)的體系架構、功能和操作。在這點上,流程圖或框圖中的每個方框可以代表一個模塊、程序段或代碼的一部分,所述模塊、程序段或代碼的一部分包含一個或多個用于實現(xiàn)規(guī)定的邏輯功能的可執(zhí)行指令。也應當注意,在有些作為替換的實現(xiàn)中,方框中所標注的功能也可以以不同于附圖中所標注的順序發(fā)生。例如,兩個連續(xù)的方框實際上可以基本并行地執(zhí)行,它們有時也可以按相反的順序執(zhí)行,這依所涉及的功能而定。也要注意的是,框圖和/或流程圖中的每個方框、以及框圖和/或流程圖中的方框的組合,可以用執(zhí)行規(guī)定的功能或動作的專用的基于硬件的系統(tǒng)來實現(xiàn),或者可以用專用硬件與計算機指令的組合來實現(xiàn)。
本發(fā)明實施例所提供的防御CC攻擊的裝置可以是計算機程序產品,包括存儲了程序代碼的計算機可讀存儲介質,所述程序代碼包括的指令可用于執(zhí)行前面方法實施例中所述的方法,具體實現(xiàn)可參見方法實施例,在此不再贅述。
所屬領域的技術人員可以清楚地了解到,為描述的方便和簡潔,上述描述的系統(tǒng)、裝置和單元的具體工作過程,可以參考前述方法實施例中的對應過程,在此不再贅述。
在本申請所提供的幾個實施例中,應該理解到,所揭露的系統(tǒng)、裝置和方法,可以通過其它的方式實現(xiàn)。以上所描述的裝置實施例僅僅是示意性的,例如,所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,又例如,多個單元或組件可以結合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些通信接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上??梢愿鶕嶋H的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。
另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。
所述功能如果以軟件功能單元的形式實現(xiàn)并作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中?;谶@樣的理解,本發(fā)明的技術方案本質上或者說對現(xiàn)有技術做出貢獻的部分或者該技術方案的部分可以以軟件產品的形式體現(xiàn)出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:U盤、移動硬盤、只讀存儲器(ROM,Read-Only Memory)、隨機存取存儲器(RAM,Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質。
最后應說明的是:以上各實施例僅用以說明本發(fā)明的技術方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分或者全部技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發(fā)明各實施例技術方案的范圍,其均應涵蓋在本發(fā)明的權利要求和說明書的范圍當中。