本發(fā)明涉及互聯(lián)網安全領域,具體而言,涉及一種防御網絡攻擊的方法、裝置和系統(tǒng)。
背景技術:
cc攻擊(挑戰(zhàn)黑洞,challengecollapsar的簡寫)目前已發(fā)展成為網絡安全領域中的一種常見攻擊方式,攻擊者主要通過控制大量僵尸主機向被攻擊服務器發(fā)送大量請求來耗盡服務器資源;主要攻擊方式有兩種,即httpgetflood(超文本傳輸協(xié)議泛洪)攻擊和鏈接耗盡型攻擊。例如,如圖1所示,攻擊者通過控制主機下發(fā)控制指令給傀儡機向目標主機發(fā)起大量http請求或tcp連接,導致目標主機進行大量計算或占用大量系統(tǒng)資源,從而導致目標主機拒絕所有用戶的服務請求。
目前,常見的cc攻擊防護依賴清洗設備或防火墻,通過對訪問服務器的單個ip連接數(shù)(或http頭中url請求、請求參數(shù)、cookies等)統(tǒng)計進行訪問限制;同時當前有些專利提出使用在用戶客戶端使用sdk進行安全加密的方式來區(qū)分正常流量和攻擊流量。清洗設備和防火墻的防御方式只需要部署在服務提供側,部署簡單,但是只能通過各種訪問連接控制來限制,無法區(qū)分正常用戶流量和攻擊流量,容易造成誤殺,影響攻擊時訪問體驗。
針對在遭受到網絡攻擊時,當前的防御方法難以區(qū)分正常用戶和攻擊者的流量的問題,目前尚未提出有效的解決方案。
技術實現(xiàn)要素:
本發(fā)明實施例提供了一種防御網絡攻擊的方法、裝置和系統(tǒng),以至少解決在遭受到網絡攻擊時,當前的防御方法難以區(qū)分正常用戶和攻擊者的流量的技術問題。
根據(jù)本發(fā)明實施例的一個方面,提供了一種防御網絡攻擊的方法,包括:安全服務器接收到訪問數(shù)據(jù)包之后,將訪問數(shù)據(jù)包進行安全處理,其中,安全服務器與客戶端具有通信關系,獲取客戶端發(fā)起的訪問數(shù)據(jù)包;安全服務器將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關;其中,如果安全網關解析安全處理后的訪問數(shù)據(jù)包成功, 則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包。
根據(jù)本發(fā)明實施例的另一方面,還提供了一種防御網絡攻擊的方法,包括:安全網關獲取到安全服務器進行安全處理后的訪問數(shù)據(jù)包;安全網關解析安全處理后的訪問數(shù)據(jù)包;如果安全網關成功解析安全處理后的訪問數(shù)據(jù)包,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包;其中,由安全服務器接收客戶端發(fā)起的訪問數(shù)據(jù)包,在將訪問數(shù)據(jù)包進行安全處理之后,將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關;其中,安全服務器與客戶端具有通信關系。
根據(jù)本發(fā)明實施例的另一方面,還提供了一種防御網絡攻擊的系統(tǒng),包括:客戶端,用于發(fā)送訪問數(shù)據(jù)包;安全服務器,與客戶端具有通信關系,用于將接收到的訪問數(shù)據(jù)包進行安全處理,并將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關;安全網關,用于解析安全處理后的訪問數(shù)據(jù)包,如果解析成功,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包。
根據(jù)本發(fā)明實施例的另一方面,還提供了一種防御網絡攻擊的裝置,包括:處理模塊,用于接收到訪問數(shù)據(jù)包之后,將訪問數(shù)據(jù)包進行安全處理,其中,訪問數(shù)據(jù)包為與安全服務器具有通信關系的客戶端發(fā)起的數(shù)據(jù)報文;發(fā)送模塊,用于將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關;其中,如果安全網關解析安全處理后的訪問數(shù)據(jù)包成功,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包。
根據(jù)本發(fā)明實施例的另一方面,還提供了一種防御網絡攻擊的裝置,包括:獲取模塊,用于獲取到安全服務器進行安全處理后的訪問數(shù)據(jù)包;解析模塊,用于解析安全處理后的訪問數(shù)據(jù)包;發(fā)送模塊,用于如果成功解析安全處理后的訪問數(shù)據(jù)包,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包;其中,由安全服務器接收客戶端發(fā)起的訪問數(shù)據(jù)包,在將訪問數(shù)據(jù)包進行安全處理之后,將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關;其中,安全服務器與客戶端具有通信關系。
在本發(fā)明實施例中,安全服務器接收到訪問數(shù)據(jù)包之后,可以將訪問數(shù)據(jù)包進行安全處理,并將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關,如果安全網關解析安全處理后的訪問數(shù)據(jù)包成功,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包。本方案可以根據(jù)判斷訪問數(shù)據(jù)包是否進行安全處理來區(qū)分該訪問數(shù)據(jù)包來自正常用戶還是攻擊者。
容易注意到,由于在接收到正常用戶發(fā)送的訪問數(shù)據(jù)包之后,安全服務器對訪問數(shù)據(jù)包進行安全處理,并將安全處理后的訪問數(shù)據(jù)包發(fā)送給安全網關,安全網關在接收到訪問數(shù)據(jù)包之后,對訪問數(shù)據(jù)包進行解析,如果解析成功則將該訪問數(shù)據(jù)包發(fā)送 至目標主機,如果解析失敗則直接丟棄,因此,通過本申請實施例所提供的方案,不僅可以在cc攻擊時有效的區(qū)分正常訪問流量和異常流量,而且,相對sdk加密的防御方式,本申請實施例提供的方案部署簡單,即只需要用戶使用安全服務器,不需要服務提供商進行開發(fā)集成,通用性更強,即適用于端服務提供商,也適用于網站服務提供商,因此,可以在cc攻擊時有效的區(qū)分正常訪問流量和異常流量,保證用戶的正常訪問。
由此,本發(fā)明實施例提供的方案解決了在遭受到網絡攻擊時,當前的防御方法難以區(qū)分正常用戶和攻擊者的流量的技術問題。
附圖說明
此處所說明的附圖用來提供對本發(fā)明的進一步理解,構成本申請的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構成對本發(fā)明的不當限定。在附圖中:
圖1是根據(jù)現(xiàn)有技術的一種防御網絡攻擊的系統(tǒng)的示意圖;
圖2是根據(jù)本申請實施例的一種防御網絡攻擊的方法的計算機終端的硬件結構框圖;
圖3是根據(jù)本申請實施例一的一種防御網絡攻擊的方法的流程圖;
圖4是根據(jù)本申請實施例的一種udp報文的示意圖;
圖5是根據(jù)本申請實施例一的一種可選的防御網絡攻擊的方法的流程圖;
圖6是根據(jù)本申請實施例二的一種防御網絡攻擊的方法的流程圖;
圖7是根據(jù)本申請實施例三的一種防御網絡攻擊的裝置的示意圖;
圖8是根據(jù)本申請實施例四的一種防御網絡攻擊的裝置的示意圖;
圖9是根據(jù)本申請實施例五的一種防御網絡攻擊的系統(tǒng)的示意圖;
圖10是根據(jù)本申請實施例五的一種可選的防御網絡攻擊的系統(tǒng)的示意圖;
圖11是根據(jù)本申請實施例五的一種可選的防御網絡攻擊的系統(tǒng)的示意圖;以及
圖12是根據(jù)本申請實施例的一種計算機終端的結構框圖。
具體實施方式
為了使本技術領域的人員更好地理解本申請方案,下面將結合本申請實施例中的 附圖,對本申請實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本申請一部分的實施例,而不是全部的實施例?;诒旧暾堉械膶嵤├绢I域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都應當屬于本申請保護的范圍。
需要說明的是,本申請的說明書和權利要求書及上述附圖中的術語“第一”、“第二”等是用于區(qū)別類似的對象,而不必用于描述特定的順序或先后次序。應該理解這樣使用的數(shù)據(jù)在適當情況下可以互換,以便這里描述的本申請的實施例能夠以除了在這里圖示或描述的那些以外的順序實施。此外,術語“包括”和“具有”以及他們的任何變形,意圖在于覆蓋不排他的包含,例如,包含了一系列步驟或單元的過程、方法、系統(tǒng)、產品或設備不必限于清楚地列出的那些步驟或單元,而是可包括沒有清楚地列出的或對于這些過程、方法、產品或設備固有的其它步驟或單元。
首先,在對本申請實施例進行描述的過程中出現(xiàn)的部分名詞或術語適用于如下解釋:
cc攻擊:challengecollapsar(挑戰(zhàn)黑洞),其前身名為fatboy攻擊,是利用不斷對網站發(fā)送連接請求致使形成拒絕服務的目的。
路由器:互聯(lián)網絡中必不可少的網絡設備之一,路由器是一種連接多個網絡或網段的網絡設備,它能將不同網絡或網段之間的數(shù)據(jù)信息進行“翻譯”,以使它們能夠相互“讀”懂對方的數(shù)據(jù),從而構成一個更大的網絡。一般具有兩大典型功能,即數(shù)據(jù)通道功能和控制功能。
傀儡機:是指可以被黑客遠程控制的機器。它們被黑客攻破或用戶自己不小心,種植了木馬,黑客可以隨意操縱它并利用它做任何事情。肉雞通常被用作ddos攻擊??梢允歉鞣N系統(tǒng),如windows、linux、unix等,更可以是一家公司、企業(yè)、學校。
加密:是以某種特殊的算法改變原有的信息數(shù)據(jù),使得未授權的用戶即使獲得了已加密的信息,但因不知解密的方法,仍然無法了解信息的內容。
隧道:(tunneling)是一種通過使用互聯(lián)網絡的基礎設施在網絡之間傳遞數(shù)據(jù)的方式。使用隧道傳遞的數(shù)據(jù)(或負載)可以是不同協(xié)議的數(shù)據(jù)幀或包。隧道協(xié)議將其它協(xié)議的數(shù)據(jù)幀或包重新封裝然后通過隧道發(fā)送。新的幀頭提供路由信息,以便通過互聯(lián)網傳遞被封裝的負載數(shù)據(jù)。
實施例1
根據(jù)本申請實施例,還提供了一種防御網絡攻擊的方法實施例,需要說明的是, 在附圖的流程圖示出的步驟可以在諸如一組計算機可執(zhí)行指令的計算機系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。
本申請實施例一所提供的方法實施例可以在移動終端、計算機終端或者類似的運算裝置中執(zhí)行。以運行在計算機終端上為例,圖2是根據(jù)本申請實施例的一種防御網絡攻擊的方法的計算機終端的硬件結構框圖。如圖2所示,計算機終端20可以包括一個或多個(圖中僅示出一個)處理器202(處理器202可以包括但不限于微處理器mcu或可編程邏輯器件fpga等的處理裝置)、用于存儲數(shù)據(jù)的存儲器204、以及用于通信功能的傳輸模塊206。本領域普通技術人員可以理解,圖2所示的結構僅為示意,其并不對上述電子裝置的結構造成限定。例如,計算機終端20還可包括比圖2中所示更多或者更少的組件,或者具有與圖2所示不同的配置。
存儲器204可用于存儲應用軟件的軟件程序以及模塊,如本申請實施例中的防御網絡攻擊的方法對應的程序指令/模塊,處理器202通過運行存儲在存儲器204內的軟件程序以及模塊,從而執(zhí)行各種功能應用以及數(shù)據(jù)處理,即實現(xiàn)上述的防御網絡攻擊的方法。存儲器204可包括高速隨機存儲器,還可包括非易失性存儲器,如一個或者多個磁性存儲裝置、閃存、或者其他非易失性固態(tài)存儲器。在一些實例中,存儲器204可進一步包括相對于處理器202遠程設置的存儲器,這些遠程存儲器可以通過網絡連接至計算機終端20。上述網絡的實例包括但不限于互聯(lián)網、企業(yè)內部網、局域網、移動通信網及其組合。
傳輸裝置206用于經由一個網絡接收或者發(fā)送數(shù)據(jù)。上述的網絡具體實例可包括計算機終端20的通信供應商提供的無線網絡。在一個實例中,傳輸裝置206包括一個網絡適配器(networkinterfacecontroller,nic),其可通過基站與其他網絡設備相連從而可與互聯(lián)網進行通訊。在一個實例中,傳輸裝置206可以為射頻(radiofrequency,rf)模塊,其用于通過無線方式與互聯(lián)網進行通訊。
在上述運行環(huán)境下,本申請?zhí)峁┝巳鐖D3所示的防御網絡攻擊的方法。圖3是根據(jù)本申請實施例一的一種防御網絡攻擊的方法的流程圖,如圖3所示,上述方法可以包括如下步驟:
步驟s31,安全服務器接收到訪問數(shù)據(jù)包之后,將訪問數(shù)據(jù)包進行安全處理,其中,安全服務器與客戶端具有通信關系,獲取客戶端發(fā)起的訪問數(shù)據(jù)包。
可選地,上述安全服務器可以是具有安全加密功能的智能路由器設備,該設備可以對接收到的訪問數(shù)據(jù)包進行報文加密,實現(xiàn)將訪問數(shù)據(jù)包進行安全處理的目的,上 述訪問數(shù)據(jù)包可以是訪問對應服務生成的報文,上述客戶端可以是計算機終端,也可以是智能手機(如android手機、ios手機等)、平板電腦、掌上電腦以及移動互聯(lián)網設備(mobileinternetdevices,mid)、pad等終端設備,上述安全服務器和上述客戶端也通過有線網絡,無線網絡,移動通信網絡等網絡進行通訊,本申請中不做具體限定。
步驟s33,安全服務器將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關。
其中,如果安全網關解析安全處理后的訪問數(shù)據(jù)包成功,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包。
可選地,上述安全網關可以是隧道網關,可以將不同協(xié)議的訪問數(shù)據(jù)包進行重新封裝,得的滿足接收協(xié)議要求的訪問數(shù)據(jù)包。
此處需要說明的是,在攻擊者發(fā)起cc攻擊時,因其控制的傀儡機發(fā)送的訪問數(shù)據(jù)包未通過安全服務器進行安全處理,從而安全網關在接收到攻擊者發(fā)送的訪問數(shù)據(jù)包之后被直接丟棄,無法到達目標主機。
在一種可選的方案中,客戶端可以通過網絡將訪問數(shù)據(jù)包發(fā)送至安全服務器,該安全服務器在接收到客戶端發(fā)送的訪問數(shù)據(jù)包之后,可以對訪問數(shù)據(jù)包進行安全處理,將加密后的訪問數(shù)據(jù)包發(fā)送給安全網關,安全網關在接收到訪問數(shù)據(jù)包之后可以,對訪問數(shù)據(jù)包進行解析,如果解析成功,則確定該訪問數(shù)據(jù)包為正常用戶發(fā)送,將解析得到的訪問數(shù)據(jù)包重新封裝,并將封裝后的訪問數(shù)據(jù)包發(fā)送至目標主機;如果解析失敗,則確定該訪問數(shù)據(jù)包為攻擊者發(fā)送,則直接將該訪問數(shù)據(jù)包丟棄,不進行任何處理。
例如,以客戶端為pc計算機,安全服務器為智能路由器設備,安全網關為隧道網關,目標主機為服務器為例,對本申請上述實施例進行詳細說明。用戶可以從pc計算機訪問對應的服務,發(fā)送對應的報文,智能路由器在接收到報文之后,將該報文進行安全處理,將安全處理后的報文發(fā)送給對應的隧道網關,隧道網關在接收到報文之后,對報文進行解析,如果可以解析成功,則將報文轉發(fā)到后端服務器上;如果解析失敗,則直接將報文丟棄。
本申請上述實施例一公開的方案中,安全服務器接收到訪問數(shù)據(jù)包之后,可以將訪問數(shù)據(jù)包進行安全處理,并將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關,如果安全網關解析安全處理后的訪問數(shù)據(jù)包成功,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包。本方案可以根據(jù)判斷訪問數(shù)據(jù)包是否進行安全處理來區(qū)分該訪問數(shù)據(jù)包來自正常用戶還是攻擊者。
容易注意到,由于在接收到正常用戶發(fā)送的訪問數(shù)據(jù)包之后,安全服務器對訪問數(shù)據(jù)包進行安全處理,并將安全處理后的訪問數(shù)據(jù)包發(fā)送給安全網關,安全網關在接收到訪問數(shù)據(jù)包之后,對訪問數(shù)據(jù)包進行解析,如果解析成功則將該訪問數(shù)據(jù)包發(fā)送至目標主機,如果解析失敗則直接丟棄,因此,通過本申請實施例所提供的方案,不僅可以在cc攻擊時有效的區(qū)分正常訪問流量和異常流量,而且,相對sdk加密的防御方式,本申請實施例提供的方案部署簡單,即只需要用戶使用安全服務器,不需要服務提供商進行開發(fā)集成,通用性更強,即適用于端服務提供商,也適用于網站服務提供商,因此,可以在cc攻擊時有效的區(qū)分正常訪問流量和異常流量,保證用戶的正常訪問。
由此,本申請?zhí)峁┑纳鲜鰧嵤├坏姆桨附鉀Q了在遭受到網絡攻擊時,當前的防御方法難以區(qū)分正常用戶和攻擊者的流量的技術問題。
在本申請上述實施例中,在步驟s31,將訪問數(shù)據(jù)包進行安全處理之前,上述方法還可以包括如下步驟:
步驟s301,安全服務器接收配置信息,其中,配置信息包括如下任意一個或多個預設的數(shù)據(jù):ip地址、域名和訪問端口。
步驟s303,安全服務器訪問對應的調度中心服務器,并從調度中心服務器獲取到與配置信息對應的安全信息,安全信息至少包括:加密指令和安全網關的網關地址。
可選地,上述安全網關的網關地址可以是ip地址,mac地址等網關地址,但不僅限于此,其他用于唯一標識安全網關的地址信息。
在一種可選的方案中,用戶可以在安全服務器上配置訪問客戶端的ip地址或者域名,以及對應端口。安全服務器在接收到客戶端發(fā)送的訪問數(shù)據(jù)包之后,訪問調取中心服務器,獲取調度中心服務器返回的加密指令和安全網絡的ip地址。
例如,仍以客戶端為pc計算機,安全服務器為智能路由器設備,安全網關為隧道網關,目標主機為服務器,調度中心服務器為智能調度中心為例,對本申請上述實施例進行詳細說明。用戶可以在智能路由上配置訪問ip地址或域名,以及對應端口,智能路由器在接收到配置信息之后,訪問智能調度中心,獲取智能調度中心根據(jù)配置信息返回的隧道網關ip和加密指令。
在本申請上述實施例中,步驟s31,將訪問數(shù)據(jù)包進行安全處理可以包括如下步驟:
步驟s311,安全服務器使用加密指令對訪問數(shù)據(jù)包進行加密,并對訪問數(shù)據(jù)包或 加密后的訪問數(shù)據(jù)包進行封裝,得到封裝報文。
可選地,上述封裝報文可以是使用udp封裝方法的udp報文,但不僅限于此,其他封裝方法也可以實現(xiàn)本實施例的目的。
在一種可選的方案中,安全服務器可以在獲取到調度中心服務器返回的加密指令之后,使用該加密指令對用戶發(fā)送的報文進行加密,并將正常報文和加密后的報文進行封裝,得到udp報文,如圖4所示,udp報文中包括如下字段:發(fā)送報文的源端口字段,接收報文的目的端口字段,長度字段,校驗和字段,加密數(shù)據(jù)字段和正常報文數(shù)據(jù)字段。
例如,仍以客戶端為pc計算機,安全服務器為智能路由器設備,安全網關為隧道網關,目標主機為服務器,調度中心服務器為智能調度中心為例,對本申請上述實施例進行詳細說明。用戶可以在智能路由上配置訪問ip地址或域名,以及對應端口,智能路由器在接收到配置信息之后,訪問智能調度中心,獲取智能調度中心根據(jù)配置信息返回的隧道網關ip和加密指令。用戶可以從pc計算機訪問對應的服務,發(fā)送對應的報文,智能路由器在接收到報文之后,對報文進行加密和封裝處理,得到udp報文。
在本申請上述實施例中,安全信息還包括:隨機數(shù)組,其中,步驟s311,安全服務器使用加密指令對訪問數(shù)據(jù)包進行加密可以包括如下步驟:
步驟s3112,對訪問數(shù)據(jù)包進行md5加密,并將隨機數(shù)組和md5加密后的訪問數(shù)據(jù)包進行異或計算,通過將異或的計算結果填充至訪問數(shù)據(jù)包的加密字段中得到加密后的訪問數(shù)據(jù)包。
在一種可選的方案中,調度中心服務器可以每隔一段時間隨機生成一段用于加密的隨機數(shù)組(即隨機生成的數(shù)組),在接收智能路由器訪問調度中心服務器時返回該隨機數(shù)組。安全服務器在接收到調度中心發(fā)送的隨機數(shù)組(例如,0xaabbccdd)之后,將用戶發(fā)送的報文進行md5哈希算法,得到哈希md5值,將該md5值與隨機數(shù)組進行異或得到一個數(shù)值,即加密數(shù)據(jù),并將該加密數(shù)據(jù)填充至udp報文的加密數(shù)據(jù)字段中。
例如,仍以客戶端為pc計算機,安全服務器為智能路由器設備,安全網關為隧道網關,目標主機為服務器,調度中心服務器為智能調度中心為例,對本申請上述實施例進行詳細說明。用戶可以在智能路由上配置訪問ip地址或域名,以及對應端口,智能路由器在接收到配置信息之后,訪問智能調度中心,獲取智能調度中心根據(jù)配置信息返回的隧道網關ip,加密指令和數(shù)組。用戶可以從pc計算機訪問對應的服務,發(fā)送對應的報文,智能路由器在接收到報文之后,對報文進行計算得到md5值,將該md5值和數(shù)組進行異或得到加密數(shù)據(jù),并填充至加密數(shù)據(jù)字段,對報文進行udp封裝,得 到udp報文。
在本申請上述實施例中,在步驟s311,使用加密指令對訪問數(shù)據(jù)包進行加密,并對訪問數(shù)據(jù)包或加密后的訪問數(shù)據(jù)包進行封裝之前,上述方法還可以包括如下步驟:
步驟s310,安全服務器判斷訪問數(shù)據(jù)包中攜帶的訪問地址和端口是否與配置信息匹配成功;其中,如果匹配成功,則確定訪問數(shù)據(jù)包中攜帶的訪問地址和端口為配置的保護地址,則對訪問數(shù)據(jù)包執(zhí)行安全處理,否則,將訪問數(shù)據(jù)包直接發(fā)送至安全網關。
在一種可選的方案中,安全服務器可以在接收到訪問數(shù)據(jù)包之后,判斷訪問數(shù)據(jù)包中攜帶的訪問地址、域名或者訪問端口是否與配置信息匹配成功,即檢測當前配置信息中預先設置的數(shù)據(jù)中是否包含了當前發(fā)起所述訪問數(shù)據(jù)包的客戶端的ip地址和/或端口,如果匹配成功,即如果在配置信息中包含了上述客戶端的ip地址和/或端口,則確定該訪問數(shù)據(jù)包由正常用戶發(fā)送,安全服務器對該訪問數(shù)據(jù)包進行安全處理;如果匹配失敗,則確定該訪問數(shù)據(jù)包由攻擊者發(fā)送,安全服務器不對該訪問數(shù)據(jù)包進行安全處理,直接發(fā)送至安全網關。此處需要說明的是,上述ip地址還可以是域名。
例如,仍以客戶端為pc計算機,安全服務器為智能路由器設備,安全網關為隧道網關,目標主機為服務器,調度中心服務器為智能調度中心為例,對本申請上述實施例進行詳細說明。用戶可以在智能路由上配置訪問ip地址或域名,以及對應端口,智能路由器在接收到配置信息之后,訪問智能調度中心,獲取智能調度中心根據(jù)配置信息返回的隧道網關ip,加密指令和數(shù)組。用戶可以從pc計算機訪問對應的服務,發(fā)送對應的報文,智能路由器在接收到報文之后,判斷訪問地址和端口是否為配置的保護地址,如果不是,則直接發(fā)送報文至服務器;如果是則對報文進行計算得到md5值,將該md5值和數(shù)組進行異或得到加密數(shù)據(jù),并填充至加密數(shù)據(jù)字段,對報文進行udp封裝,得到udp報文,并將udp報文發(fā)送至服務器。
在本申請上述實施例中,步驟s33,安全服務器將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關之后,安全網關解析安全處理后的訪問數(shù)據(jù)包,其中,步驟s33,如果安全網關解析安全處理后的訪問數(shù)據(jù)包成功,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包,可以包括如下步驟:
步驟s331,如果封裝報文的報文格式與預定的報文格式不匹配,則丟棄封裝報文。
可選地,上述預定的報文格式可以與安全服務器的封裝格式相同,均為udp報文格式。
在一種可選的方案中,安全網關可以在接收到封裝報文之后,判斷該封裝報文的 報文格式是否與udp報文格式相同,如果該封裝報文的報文格式與udp報文格式不同,則確定該封裝報文由攻擊者發(fā)送,直接丟棄。
步驟s333,如果封裝報文的報文格式與預定的報文格式匹配,則安全網關對訪問數(shù)據(jù)包或加密后的訪問數(shù)據(jù)包進行解封裝處理,并對解封裝處理后得到的報文進行指令解密,其中,如果解密成功,則將解密得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,如果解密失敗,則丟棄解密得到的訪問數(shù)據(jù)包。
在一種可選的方案中,如果安全網關確定該封裝報文的報文格式與udp報文格式相同,則可以將該封裝報文進行解封裝處理,并在解封裝之后進行指令解密處理,如果解密錯誤,則確定該封裝報文由攻擊者發(fā)送,直接丟棄。如果解密成功,則可以將該報文轉發(fā)至目標主機。
例如,仍以客戶端為pc計算機,安全服務器為智能路由器設備,安全網關為隧道網關,目標主機為服務器,調度中心服務器為智能調度中心為例,對本申請上述實施例進行詳細說明。隧道網關接收到3個封裝報文,分別為報文1、報文2和報文3,首先判斷3個報文的報文格式,得到報文1的報文格式為udp格式,報文2的報文格式為udp格式,報文3的報文格式為tcp報文,報文3的報文格式不為udp報文,因此直接丟棄。將報文1和報文2進行指令解密,報文1解密錯誤,報文2解密成功,將報文1直接丟棄,將報文2發(fā)送至后端的目標服務器上。
在本申請上述實施例中,安全網關轉發(fā)至目標主機的訪問數(shù)據(jù)包為客戶端產生的正常流量,安全網關丟棄的訪問數(shù)據(jù)包為異常客戶端產生的攻擊流量。
在一種可選的方案中,安全網關在判斷接收到的報文的封裝格式以及解密運算之后,如果接收到的報文的封裝格式正確,并且解密成功,則確定該報文為正常用戶通過客戶端產生的正常流量,將該報文轉發(fā)至目標主機;如果接收到的報文的封裝格式不正確,或者解密失敗,則確定該報文為攻擊者通過異??蛻舳水a生的攻擊流量,將該報文直接丟棄,不轉發(fā)至目標主機。
例如,仍以客戶端為pc計算機,安全服務器為智能路由器設備,安全網關為隧道網關,目標主機為服務器,調度中心服務器為智能調度中心為例,對本申請上述實施例進行詳細說明。隧道網關接收到3個封裝報文,分別為報文1、報文2和報文3,首先判斷3個報文的報文格式,得到報文1的報文格式為udp格式,報文2的報文格式為udp格式,報文3的報文格式為tcp報文,報文3的報文格式不為udp報文,因此直接丟棄。將報文1和報文2進行指令解密,報文1解密錯誤,報文2解密成功,將報文1直接丟棄,將報文2發(fā)送至后端的目標服務器上。因此可以確定報文1和報文 2是攻擊者發(fā)送的攻擊流量,報文2是正常用戶發(fā)送的正常流量。
下面結合圖5詳細介紹本申請的一種優(yōu)選實施例。
如圖5所示,以客戶端為pc計算機,安全服務器為智能路由器設備,安全網關為隧道網關,目標主機為服務器,調度中心服務器為智能調度中心為應用場景,提供了一種可選的防御網絡攻擊的方法,該方法可以包括如下步驟s51至步驟s55:
步驟s51,用戶在安全服務器93上配置ip或域名和端口。
具體地,上述安全服務器可以是智能路由器設備,用戶在智能路由器上配置訪問終端的ip地址或域名以及對應端口。
步驟s52,安全服務器93從調度中心服務器101獲取對應隧道網關ip和加密指令。
具體地,智能路由器接收到對應配置后,聯(lián)系智能調度中心(即上述的調度中心服務器),調度中心選取一個可用的隧道網關,并隨機生成加密指令,返回隧道網關ip和加密指令給智能路由器。
步驟s53,用戶通過客戶端91發(fā)送報文。
具體地,用戶從客戶端(pc、手機等)訪問對應服務,發(fā)送對應報文。
步驟s54,安全服務器93將報文發(fā)送給相應的安全網關95。
具體地,上述安全網關可以是隧道網關,智能路由器收到報文后,判斷訪問地址和端口為配置的保護地址,是則對報文進行隧道封裝,并通過調度中心返回的加密指令對報文進行加密,并發(fā)送給調度中心返回的隧道網關ip對應的隧道網關;否則直接發(fā)送原始報文給調度中心返回的隧道網關ip對應的隧道網關。
步驟s55,安全網關95對接收到的報文進行解封裝和解密處理,并根據(jù)解封裝和解密處理上述報文的結果確定當前客戶端發(fā)出的報文是否為安全報文。
具體地,隧道網關收到報文后,進行如下判斷:非指定格式封裝報文,直接丟棄;符合指定格式的封裝報文,進行解封裝處理;解封裝后進行指令解密,解密錯誤,則直接丟棄;解密成功,將報文轉發(fā)后端的服務器上。服務端收到客戶端訪問報文處理后,將報文發(fā)送到隧道網關。
通過本申請上述優(yōu)選實施例,在用戶端部署一個具有安全加密功能的智能路由器設備,該設備可從智能調度中心動態(tài)獲取加密指令以及隧道網關ip,所有正常用戶的訪問數(shù)據(jù)包將通過該智能路由器進行報文加密發(fā)送給隧道網關,隧道網關將對所有訪 問數(shù)據(jù)包進行解密來區(qū)分是否正常用戶報文和攻擊流量。以此在攻擊者發(fā)起cc攻擊時,因控制的傀儡機報文未通過智能路由器加密,從而在隧道網關側被直接丟棄,攻擊流量無法到達服務提供商,而正常流量因能被隧道網關識別放行到服務提供商,從而在攻擊時不影響正常用戶訪問。
需要說明的是,對于前述的各方法實施例,為了簡單描述,故將其都表述為一系列的動作組合,但是本領域技術人員應該知悉,本申請并不受所描述的動作順序的限制,因為依據(jù)本申請,某些步驟可以采用其他順序或者同時進行。其次,本領域技術人員也應該知悉,說明書中所描述的實施例均屬于優(yōu)選實施例,所涉及的動作和模塊并不一定是本申請所必須的。
通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到根據(jù)上述實施例的方法可借助軟件加必需的通用硬件平臺的方式來實現(xiàn),當然也可以通過硬件,但很多情況下前者是更佳的實施方式?;谶@樣的理解,本申請的技術方案本質上或者說對現(xiàn)有技術做出貢獻的部分可以以軟件產品的形式體現(xiàn)出來,該計算機軟件產品存儲在一個存儲介質(如rom/ram、磁碟、光盤)中,包括若干指令用以使得一臺終端設備(可以是手機,計算機,服務器,或者網絡設備等)執(zhí)行本申請各個實施例所述的方法。
實施例2
根據(jù)本申請實施例,還提供了一種防御網絡攻擊的方法實施例,需要說明的是,在附圖的流程圖示出的步驟可以在諸如一組計算機可執(zhí)行指令的計算機系統(tǒng)中執(zhí)行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執(zhí)行所示出或描述的步驟。圖6是根據(jù)本申請實施例二的一種防御網絡攻擊的方法的流程圖,如圖6所示,上述方法可以包括如下步驟:
步驟s61,安全網關獲取到安全服務器進行安全處理后的訪問數(shù)據(jù)包。
可選地,上述安全服務器可以是具有安全加密功能的智能路由器設備,該設備可以對接收到的訪問數(shù)據(jù)包進行報文加密,實現(xiàn)將訪問數(shù)據(jù)包進行安全處理的目的,上述訪問數(shù)據(jù)包可以是訪問對應服務生成的報文,上述客戶端可以是計算機終端,也可以是智能手機(如android手機、ios手機等)、平板電腦、掌上電腦以及移動互聯(lián)網設備(mobileinternetdevices,mid)、pad等終端設備,上述安全服務器和上述客戶端也通過有線網絡,無線網絡,移動通信網絡等網絡進行通訊,本申請中不做具體限定,上述安全網關可以是隧道網關,可以將不同協(xié)議的訪問數(shù)據(jù)包進行重新封裝,得的滿足接收協(xié)議要求的訪問數(shù)據(jù)包。
步驟s63,安全網關解析安全處理后的訪問數(shù)據(jù)包。
步驟s65,如果安全網關成功解析安全處理后的訪問數(shù)據(jù)包,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包。
其中,由安全服務器接收客戶端發(fā)起的訪問數(shù)據(jù)包,在將訪問數(shù)據(jù)包進行安全處理之后,將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關;其中,安全服務器與客戶端具有通信關系。
此處需要說明的是,在攻擊者發(fā)起cc攻擊時,因其控制的傀儡機發(fā)送的訪問數(shù)據(jù)包未通過安全服務器進行安全處理,從而安全網關在接收到攻擊者發(fā)送的訪問數(shù)據(jù)包之后被直接丟棄,無法到達目標主機。
在一種可選的方案中,客戶端可以通過網絡將訪問數(shù)據(jù)包發(fā)送至安全服務器,該安全服務器在接收到客戶端發(fā)送的訪問數(shù)據(jù)包之后,可以對訪問數(shù)據(jù)包進行安全處理,將加密后的訪問數(shù)據(jù)包發(fā)送給安全網關,安全網關在接收到訪問數(shù)據(jù)包之后可以,對訪問數(shù)據(jù)包進行解析,如果解析成功,則確定該訪問數(shù)據(jù)包為正常用戶發(fā)送,將解析得到的訪問數(shù)據(jù)包重新封裝,并將封裝后的訪問數(shù)據(jù)包發(fā)送至目標主機;如果解析失敗,則確定該訪問數(shù)據(jù)包為攻擊者發(fā)送,則直接將該訪問數(shù)據(jù)包丟棄,不進行任何處理。
例如,以客戶端為pc計算機,安全服務器為智能路由器設備,安全網關為隧道網關,目標主機為服務器為例,對本申請上述實施例進行詳細說明。用戶可以從pc計算機訪問對應的服務,發(fā)送對應的報文,智能路由器在接收到報文之后,將該報文進行安全處理,將安全處理后的報文發(fā)送給對應的隧道網關,隧道網關在接收到報文之后,對報文進行解析,如果可以解析成功,則將報文轉發(fā)到后端服務器上;如果解析失敗,則直接將報文丟棄。
本申請上述實施例二公開的方案中,安全服務器接收到訪問數(shù)據(jù)包之后,可以將訪問數(shù)據(jù)包進行安全處理,并將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關,如果安全網關解析安全處理后的訪問數(shù)據(jù)包成功,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包。本方案可以根據(jù)判斷訪問數(shù)據(jù)包是否進行安全處理來區(qū)分該訪問數(shù)據(jù)包來自正常用戶還是攻擊者。
容易注意到,由于在接收到正常用戶發(fā)送的訪問數(shù)據(jù)包之后,安全服務器對訪問數(shù)據(jù)包進行安全處理,并將安全處理后的訪問數(shù)據(jù)包發(fā)送給安全網關,安全網關在接收到訪問數(shù)據(jù)包之后,對訪問數(shù)據(jù)包進行解析,如果解析成功則將該訪問數(shù)據(jù)包發(fā)送至目標主機,如果解析失敗則直接丟棄,因此,通過本申請實施例所提供的方案,不 僅可以在cc攻擊時有效的區(qū)分正常訪問流量和異常流量,而且,相對sdk加密的防御方式,本申請實施例提供的方案部署簡單,即只需要用戶使用安全服務器,不需要服務提供商進行開發(fā)集成,通用性更強,即適用于端服務提供商,也適用于網站服務提供商,因此,可以在cc攻擊時有效的區(qū)分正常訪問流量和異常流量,保證用戶的正常訪問。
由此,本申請?zhí)峁┑纳鲜鰧嵤├姆桨附鉀Q了在遭受到網絡攻擊時,當前的防御方法難以區(qū)分正常用戶和攻擊者的流量的技術問題。
實施例3
根據(jù)本申請實施例,還提供了一種用于實施上述防御網絡攻擊的方法的防御網絡攻擊的裝置,如圖7所示,該裝置包括:處理模塊71和發(fā)送模塊73。
其中,處理模塊71,用于接收到訪問數(shù)據(jù)包之后,將訪問數(shù)據(jù)包進行安全處理,其中,訪問數(shù)據(jù)包為與安全服務器具有通信關系的客戶端發(fā)起的數(shù)據(jù)報文;發(fā)送模塊73,用于安全服務器將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關;其中,如果安全網關解析安全處理后的訪問數(shù)據(jù)包成功,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包。
可選地,上述處理模塊71可以是安全服務器中運行的一個功能模塊,可以是具有安全加密功能的智能路由器設備,該設備可以對接收到的訪問數(shù)據(jù)包進行報文加密,實現(xiàn)將訪問數(shù)據(jù)包進行安全處理的目的,上述訪問數(shù)據(jù)包可以是訪問對應服務生成的報文,上述客戶端可以是計算機終端,也可以是智能手機(如android手機、ios手機等)、平板電腦、掌上電腦以及移動互聯(lián)網設備(mobileinternetdevices,mid)、pad等終端設備,上述安全服務器和上述客戶端也通過有線網絡,無線網絡,移動通信網絡等網絡進行通訊,本申請中不做具體限定,上述安全網關可以是隧道網關,可以將不同協(xié)議的訪問數(shù)據(jù)包進行重新封裝,得的滿足接收協(xié)議要求的訪問數(shù)據(jù)包。
此處需要說明的是,在攻擊者發(fā)起cc攻擊時,因其控制的傀儡機發(fā)送的訪問數(shù)據(jù)包未通過安全服務器進行安全處理,從而安全網關在接收到攻擊者發(fā)送的訪問數(shù)據(jù)包之后被直接丟棄,無法到達目標主機。
在一種可選的方案中,客戶端可以通過網絡將訪問數(shù)據(jù)包發(fā)送至安全服務器,該安全服務器在接收到客戶端發(fā)送的訪問數(shù)據(jù)包之后,可以對訪問數(shù)據(jù)包進行安全處理,將加密后的訪問數(shù)據(jù)包發(fā)送給安全網關,安全網關在接收到訪問數(shù)據(jù)包之后可以,對訪問數(shù)據(jù)包進行解析,如果解析成功,則確定該訪問數(shù)據(jù)包為正常用戶發(fā)送,將解析得到的訪問數(shù)據(jù)包重新封裝,并將封裝后的訪問數(shù)據(jù)包發(fā)送至目標主機;如果解析失 敗,則確定該訪問數(shù)據(jù)包為攻擊者發(fā)送,則直接將該訪問數(shù)據(jù)包丟棄,不進行任何處理。
例如,以客戶端為pc計算機,安全服務器為智能路由器設備,安全網關為隧道網關,目標主機為服務器為例,對本申請上述實施例進行詳細說明。用戶可以從pc計算機訪問對應的服務,發(fā)送對應的報文,智能路由器在接收到報文之后,將該報文進行安全處理,將安全處理后的報文發(fā)送給對應的隧道網關,隧道網關在接收到報文之后,對報文進行解析,如果可以解析成功,則將報文轉發(fā)到后端服務器上;如果解析失敗,則直接將報文丟棄。
本申請上述實施例三公開的方案中,安全服務器接收到訪問數(shù)據(jù)包之后,可以將訪問數(shù)據(jù)包進行安全處理,并將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關,如果安全網關解析安全處理后的訪問數(shù)據(jù)包成功,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包。本方案可以根據(jù)判斷訪問數(shù)據(jù)包是否進行安全處理來區(qū)分該訪問數(shù)據(jù)包來自正常用戶還是攻擊者。
容易注意到,由于在接收到正常用戶發(fā)送的訪問數(shù)據(jù)包之后,安全服務器對訪問數(shù)據(jù)包進行安全處理,并將安全處理后的訪問數(shù)據(jù)包發(fā)送給安全網關,安全網關在接收到訪問數(shù)據(jù)包之后,對訪問數(shù)據(jù)包進行解析,如果解析成功則將該訪問數(shù)據(jù)包發(fā)送至目標主機,如果解析失敗則直接丟棄,因此,通過本申請實施例所提供的方案,不僅可以在cc攻擊時有效的區(qū)分正常訪問流量和異常流量,而且,相對sdk加密的防御方式,本申請實施例提供的方案部署簡單,即只需要用戶使用安全服務器,不需要服務提供商進行開發(fā)集成,通用性更強,即適用于端服務提供商,也適用于網站服務提供商,因此,可以在cc攻擊時有效的區(qū)分正常訪問流量和異常流量,保證用戶的正常訪問。
由此,本申請?zhí)峁┑纳鲜鰧嵤├姆桨附鉀Q了在遭受到網絡攻擊時,當前的防御方法難以區(qū)分正常用戶和攻擊者的流量的技術問題。
此處需要說明的是,上述處理模塊71和發(fā)送模塊73對應于實施例一中的步驟s31和步驟s33,兩個模塊與對應的步驟所實現(xiàn)的實例和應用場景相同,但不限于上述實施例一所公開的內容。需要說明的是,上述模塊作為裝置的一部分可以運行在實施例一提供的計算機終端20中。
實施例4
根據(jù)本申請實施例,還提供了一種用于實施上述防御網絡攻擊的方法的防御網絡攻擊的裝置,如圖8所示,該裝置包括:獲取模塊81,解析模塊83和發(fā)送模塊85。
其中,獲取模塊81,用于獲取到安全服務器進行安全處理后的訪問數(shù)據(jù)包;解析模塊83,用于解析安全處理后的訪問數(shù)據(jù)包;發(fā)送模塊85,用于如果成功解析安全處理后的訪問數(shù)據(jù)包,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包;其中,由安全服務器接收客戶端發(fā)起的訪問數(shù)據(jù)包,在將訪問數(shù)據(jù)包進行安全處理之后,將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關;其中,安全服務器與客戶端具有通信關系。
可選地,上述獲取模塊81,解析模塊83和發(fā)送模塊85可以是安全服務器中具有的功能模塊,該安全服務器可以是具有安全加密功能的智能路由器設備,該設備可以對接收到的訪問數(shù)據(jù)包進行報文加密,實現(xiàn)將訪問數(shù)據(jù)包進行安全處理的目的,上述訪問數(shù)據(jù)包可以是訪問對應服務生成的報文,上述客戶端可以是計算機終端,也可以是智能手機(如android手機、ios手機等)、平板電腦、掌上電腦以及移動互聯(lián)網設備(mobileinternetdevices,mid)、pad等終端設備,上述安全服務器和上述客戶端也通過有線網絡,無線網絡,移動通信網絡等網絡進行通訊,本申請中不做具體限定,上述安全網關可以是隧道網關,可以將不同協(xié)議的訪問數(shù)據(jù)包進行重新封裝,得的滿足接收協(xié)議要求的訪問數(shù)據(jù)包。
此處需要說明的是,在攻擊者發(fā)起cc攻擊時,因其控制的傀儡機發(fā)送的訪問數(shù)據(jù)包未通過安全服務器進行安全處理,從而安全網關在接收到攻擊者發(fā)送的訪問數(shù)據(jù)包之后被直接丟棄,無法到達目標主機。
在一種可選的方案中,客戶端可以通過網絡將訪問數(shù)據(jù)包發(fā)送至安全服務器,該安全服務器在接收到客戶端發(fā)送的訪問數(shù)據(jù)包之后,可以對訪問數(shù)據(jù)包進行安全處理,將加密后的訪問數(shù)據(jù)包發(fā)送給安全網關,安全網關在接收到訪問數(shù)據(jù)包之后可以,對訪問數(shù)據(jù)包進行解析,如果解析成功,則確定該訪問數(shù)據(jù)包為正常用戶發(fā)送,將解析得到的訪問數(shù)據(jù)包重新封裝,并將封裝后的訪問數(shù)據(jù)包發(fā)送至目標主機;如果解析失敗,則確定該訪問數(shù)據(jù)包為攻擊者發(fā)送,則直接將該訪問數(shù)據(jù)包丟棄,不進行任何處理。
例如,以客戶端為pc計算機,安全服務器為智能路由器設備,安全網關為隧道網關,目標主機為服務器為例,對本申請上述實施例進行詳細說明。用戶可以從pc計算機訪問對應的服務,發(fā)送對應的報文,智能路由器在接收到報文之后,將該報文進行安全處理,將安全處理后的報文發(fā)送給對應的隧道網關,隧道網關在接收到報文之后,對報文進行解析,如果可以解析成功,則將報文轉發(fā)到后端服務器上;如果解析失敗,則直接將報文丟棄。
本申請上述實施例四公開的方案中,安全服務器接收到訪問數(shù)據(jù)包之后,可以將 訪問數(shù)據(jù)包進行安全處理,并將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關,如果安全網關解析安全處理后的訪問數(shù)據(jù)包成功,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包。本方案可以根據(jù)判斷訪問數(shù)據(jù)包是否進行安全處理來區(qū)分該訪問數(shù)據(jù)包來自正常用戶還是攻擊者。
容易注意到,由于在接收到正常用戶發(fā)送的訪問數(shù)據(jù)包之后,安全服務器對訪問數(shù)據(jù)包進行安全處理,并將安全處理后的訪問數(shù)據(jù)包發(fā)送給安全網關,安全網關在接收到訪問數(shù)據(jù)包之后,對訪問數(shù)據(jù)包進行解析,如果解析成功則將該訪問數(shù)據(jù)包發(fā)送至目標主機,如果解析失敗則直接丟棄,因此,通過本申請實施例所提供的方案,不僅可以在cc攻擊時有效的區(qū)分正常訪問流量和異常流量,而且,相對sdk加密的防御方式,本申請實施例提供的方案部署簡單,即只需要用戶使用安全服務器,不需要服務提供商進行開發(fā)集成,通用性更強,即適用于端服務提供商,也適用于網站服務提供商,因此,可以在cc攻擊時有效的區(qū)分正常訪問流量和異常流量,保證用戶的正常訪問。
由此,本申請?zhí)峁┑纳鲜鰧嵤├牡姆桨附鉀Q了在遭受到網絡攻擊時,當前的防御方法難以區(qū)分正常用戶和攻擊者的流量的技術問題。
此處需要說明的是,上述獲取模塊81,解析模塊83和發(fā)送模塊85對應于實施例二中的步驟s61至步驟s65,兩個模塊與對應的步驟所實現(xiàn)的實例和應用場景相同,但不限于上述實施例二所公開的內容。需要說明的是,上述模塊作為裝置的一部分可以運行在實施例一提供的計算機終端20中。
實施例5
根據(jù)本申請實施例,還提供了一種用于實施上述防御網絡攻擊的方法的防御網絡攻擊的系統(tǒng),如圖9所示,該系統(tǒng)包括:客戶端91,安全服務器93和安全網關95。
其中,客戶端91,用于發(fā)送訪問數(shù)據(jù)包。
安全服務器93,與客戶端91具有通信關系,用于將接收到的訪問數(shù)據(jù)包進行安全處理,并將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關。
安全網關95,用于解析安全處理后的訪問數(shù)據(jù)包,如果解析成功,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包。
可選地,上述安全服務器可以是具有安全加密功能的智能路由器設備,該設備可以對接收到的訪問數(shù)據(jù)包進行報文加密,實現(xiàn)將訪問數(shù)據(jù)包進行安全處理的目的,上述訪問數(shù)據(jù)包可以是訪問對應服務生成的報文,上述客戶端可以是計算機終端,也可 以是智能手機(如android手機、ios手機等)、平板電腦、掌上電腦以及移動互聯(lián)網設備(mobileinternetdevices,mid)、pad等終端設備,上述安全服務器和上述客戶端也通過有線網絡,無線網絡,移動通信網絡等網絡進行通訊,本申請中不做具體限定,上述安全網關可以是隧道網關,可以將不同協(xié)議的訪問數(shù)據(jù)包進行重新封裝,得的滿足接收協(xié)議要求的訪問數(shù)據(jù)包。
此處需要說明的是,在攻擊者發(fā)起cc攻擊時,因其控制的傀儡機發(fā)送的訪問數(shù)據(jù)包未通過安全服務器進行安全處理,從而安全網關在接收到攻擊者發(fā)送的訪問數(shù)據(jù)包之后被直接丟棄,無法到達目標主機。
在一種可選的方案中,客戶端可以通過網絡將訪問數(shù)據(jù)包發(fā)送至安全服務器,該安全服務器在接收到客戶端發(fā)送的訪問數(shù)據(jù)包之后,可以對訪問數(shù)據(jù)包進行安全處理,將加密后的訪問數(shù)據(jù)包發(fā)送給安全網關,安全網關在接收到訪問數(shù)據(jù)包之后可以,對訪問數(shù)據(jù)包進行解析,如果解析成功,則確定該訪問數(shù)據(jù)包為正常用戶發(fā)送,將解析得到的訪問數(shù)據(jù)包重新封裝,并將封裝后的訪問數(shù)據(jù)包發(fā)送至目標主機;如果解析失敗,則確定該訪問數(shù)據(jù)包為攻擊者發(fā)送,則直接將該訪問數(shù)據(jù)包丟棄,不進行任何處理。
例如,以客戶端為pc計算機,安全服務器為智能路由器設備,安全網關為隧道網關,目標主機為服務器為例,對本申請上述實施例進行詳細說明。用戶可以從pc計算機訪問對應的服務,發(fā)送對應的報文,智能路由器在接收到報文之后,將該報文進行安全處理,將安全處理后的報文發(fā)送給對應的隧道網關,隧道網關在接收到報文之后,對報文進行解析,如果可以解析成功,則將報文轉發(fā)到后端服務器上;如果解析失敗,則直接將報文丟棄。
圖10是根據(jù)本申請實施例五的一種可選的防御網絡攻擊的系統(tǒng)的示意圖,如圖10所示,用戶通過訪問終端發(fā)送訪問服務對應的報文至智能路由器,智能路由器在接受到報文之后,對該報文進行安全處理,并將安全處理后的報文發(fā)送給隧道網關,隧道網關在接收到安全處理后的報文之后,對該安全處理后的報文進行解析,如果解析成功,則確定該報文由正常用戶發(fā)送,將該報文發(fā)送至后端的服務器;如果解析失敗,則確定該報文由攻擊者發(fā)送,直接丟棄,保證攻擊者發(fā)送的報文不會發(fā)送到服務器。
本申請上述實施例五公開的方案中,安全服務器接收到訪問數(shù)據(jù)包之后,可以將訪問數(shù)據(jù)包進行安全處理,并將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關,如果安全網關解析安全處理后的訪問數(shù)據(jù)包成功,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包。本方案可以根據(jù)判斷訪問數(shù)據(jù)包是否進行安全處理來區(qū)分該訪問數(shù)據(jù)包來自正常用戶還是攻擊者。
容易注意到,由于在接收到正常用戶發(fā)送的訪問數(shù)據(jù)包之后,安全服務器對訪問數(shù)據(jù)包進行安全處理,并將安全處理后的訪問數(shù)據(jù)包發(fā)送給安全網關,安全網關在接收到訪問數(shù)據(jù)包之后,對訪問數(shù)據(jù)包進行解析,如果解析成功則將該訪問數(shù)據(jù)包發(fā)送至目標主機,如果解析失敗則直接丟棄,因此,通過本申請實施例所提供的方案,不僅可以在cc攻擊時有效的區(qū)分正常訪問流量和異常流量,而且,相對sdk加密的防御方式,本申請實施例提供的方案部署簡單,即只需要用戶使用安全服務器,不需要服務提供商進行開發(fā)集成,通用性更強,即適用于端服務提供商,也適用于網站服務提供商,因此,可以在cc攻擊時有效的區(qū)分正常訪問流量和異常流量,保證用戶的正常訪問。
由此,本申請?zhí)峁┑纳鲜鰧嵤├宓姆桨附鉀Q了在遭受到網絡攻擊時,當前的防御方法難以區(qū)分正常用戶和攻擊者的流量的技術問題。
在本申請?zhí)峁┑囊环N可選實施例中,如圖11所示,上述系統(tǒng)還包括:調度中心服務器101。
其中,調度中心服務器101,與安全服務器93連接,用于將確定的安全信息返回給安全服務器,安全信息至少包括:加密指令和安全網關的網關地址;安全服務器93還用于接收配置信息,并訪問對應的安全服務器,其中,配置信息包括如下任意一個或多個預設的數(shù)據(jù):ip地址、域名和訪問端口。
可選地,上述安全網關的網關地址可以是ip地址,mac地址等網關地址,但不僅限于此,其他用于唯一標識安全網關的地址信息。
在一種可選的方案中,用戶可以在安全服務器上配置訪問客戶端的ip地址或者域名,以及對應端口。安全服務器在接收到客戶端發(fā)送的訪問數(shù)據(jù)包之后,訪問調取中心服務器,獲取調度中心服務器返回的加密指令和安全網絡的ip地址。
例如,仍以客戶端為pc計算機,安全服務器為智能路由器設備,安全網關為隧道網關,目標主機為服務器,調度中心服務器為智能調度中心為例,對本申請上述實施例進行詳細說明。用戶可以在智能路由上配置訪問ip地址或域名,以及對應端口,智能路由器在接收到配置信息之后,訪問智能調度中心,獲取智能調度中心根據(jù)配置信息返回的隧道網關ip和加密指令。
如圖11所示,用戶可以在智能路由器上配置訪問ip或域名和端口,用戶通過訪問終端發(fā)送訪問服務對應的報文至智能路由器,智能路由器在接受到報文之后,向調度中心請求隧道網關ip,調度中心選取一個可用的隧道網關和隨機聲場的加密指令返回給智能路由器,智能路由器對該報文進行安全處理,并將安全處理后的報文發(fā)送給 隧道網關,隧道網關在接收到安全處理后的報文之后,對該安全處理后的報文進行解析,如果解析成功,則確定該報文由正常用戶發(fā)送,將該報文發(fā)送至后端的服務器;如果解析失敗,則確定該報文由攻擊者發(fā)送,直接丟棄,保證攻擊者發(fā)送的報文不會發(fā)送到服務器。
在本申請?zhí)峁┑囊环N可選實施例中,上述安全服務器93還用于安全服務器使用加密指令對訪問數(shù)據(jù)包進行加密,并對訪問數(shù)據(jù)包或加密后的訪問數(shù)據(jù)包進行封裝,得到封裝報文。
可選地,上述封裝報文可以是使用udp封裝方法的udp報文,但不僅限于此,其他封裝方法也可以實現(xiàn)本實施例的目的。
在一種可選的方案中,安全服務器可以在獲取到調度中心服務器返回的加密指令之后,使用該加密指令對用戶發(fā)送的報文進行加密,并將正常報文和加密后的報文進行封裝,得到udp報文,如圖4所示,udp報文中包括如下字段:發(fā)送報文的源端口字段,接收報文的目的端口字段,長度字段,校驗和字段,加密數(shù)據(jù)字段和正常報文數(shù)據(jù)字段。
例如,仍以客戶端為pc計算機,安全服務器為智能路由器設備,安全網關為隧道網關,目標主機為服務器,調度中心服務器為智能調度中心為例,對本申請上述實施例進行詳細說明。用戶可以在智能路由上配置訪問ip地址或域名,以及對應端口,智能路由器在接收到配置信息之后,訪問智能調度中心,獲取智能調度中心根據(jù)配置信息返回的隧道網關ip和加密指令。用戶可以從pc計算機訪問對應的服務,發(fā)送對應的報文,智能路由器在接收到報文之后,對報文進行加密和封裝處理,得到udp報文。
在本申請?zhí)峁┑囊环N可選實施例中,上述安全服務器93還用于對訪問數(shù)據(jù)包進行md5加密,并將隨機數(shù)組和md5加密后的訪問數(shù)據(jù)包進行異或計算,通過將異或的計算結果填充至訪問數(shù)據(jù)包的加密字段中得到加密后的訪問數(shù)據(jù)包。
在一種可選的方案中,調度中心服務器可以每隔一段時間隨機生成一段用于加密的隨機數(shù)組,在接收智能路由器訪問調度中心服務器時返回該隨機數(shù)組。安全服務器在接收到調度中心發(fā)送的隨機數(shù)組(例如,0xaabbccdd)之后,將用戶發(fā)送的報文進行md5哈希算法,得到哈希md5值,將該md5值與隨機數(shù)組進行異或得到一個數(shù)值,即加密數(shù)據(jù),并將該加密數(shù)據(jù)填充至udp報文的加密數(shù)據(jù)字段中。
例如,仍以客戶端為pc計算機,安全服務器為智能路由器設備,安全網關為隧道網關,目標主機為服務器,調度中心服務器為智能調度中心為例,對本申請上述實施例進行詳細說明。用戶可以在智能路由上配置訪問ip地址或域名,以及對應端口,智 能路由器在接收到配置信息之后,訪問智能調度中心,獲取智能調度中心根據(jù)配置信息返回的隧道網關ip,加密指令和數(shù)組。用戶可以從pc計算機訪問對應的服務,發(fā)送對應的報文,智能路由器在接收到報文之后,對報文進行計算得到md5值,將該md5值和數(shù)組進行異或得到加密數(shù)據(jù),并填充至加密數(shù)據(jù)字段,對報文進行udp封裝,得到udp報文。
在本申請?zhí)峁┑囊环N可選實施例中,上述安全服務器93還用于安全服務器判斷訪問數(shù)據(jù)包中攜帶的訪問地址和端口是否與配置信息匹配成功;其中,如果匹配成功,則確定訪問數(shù)據(jù)包中攜帶的訪問地址和端口為配置的保護地址,則對訪問數(shù)據(jù)包執(zhí)行安全處理,否則,將訪問數(shù)據(jù)包直接發(fā)送至安全網關。
在一種可選的方案中,安全服務器可以在接收到訪問數(shù)據(jù)包之后,判斷訪問數(shù)據(jù)包中攜帶的訪問地址、域名或者訪問端口是否與配置信息匹配成功,即檢測當前配置信息中預先設置的數(shù)據(jù)中是否包含了當前發(fā)起所述訪問數(shù)據(jù)包的客戶端的ip地址和/或端口,如果匹配成功,即如果在配置信息中包含了上述客戶端的ip地址和/或端口,確定該訪問數(shù)據(jù)包由正常用戶發(fā)送,安全服務器對該訪問數(shù)據(jù)包進行安全處理;如果匹配失敗,確定該訪問數(shù)據(jù)包由攻擊者發(fā)送,安全服務器不對該訪問數(shù)據(jù)包進行安全處理,直接發(fā)送至安全網關。此處需要說明的是,上述ip地址還可以是域名。
例如,仍以客戶端為pc計算機,安全服務器為智能路由器設備,安全網關為隧道網關,目標主機為服務器,調度中心服務器為智能調度中心為例,對本申請上述實施例進行詳細說明。用戶可以在智能路由上配置訪問ip地址或域名,以及對應端口,智能路由器在接收到配置信息之后,訪問智能調度中心,獲取智能調度中心根據(jù)配置信息返回的隧道網關ip,加密指令和數(shù)組。用戶可以從pc計算機訪問對應的服務,發(fā)送對應的報文,智能路由器在接收到報文之后,判斷訪問地址和端口是否為配置的保護地址,如果不是,則直接發(fā)送報文至服務器;如果是則對報文進行計算得到md5值,將該md5值和數(shù)組進行異或得到加密數(shù)據(jù),并填充至加密數(shù)據(jù)字段,對報文進行udp封裝,得到udp報文,并將udp報文發(fā)送至服務器。
在本申請?zhí)峁┑囊环N可選實施例中,上述安全網關95還用于如果封裝報文的報文格式與預定的報文格式不匹配,則丟棄封裝報文;如果封裝報文的報文格式與預定的報文格式匹配,則安全網關對訪問數(shù)據(jù)包或加密后的訪問數(shù)據(jù)包進行解封裝處理,并對解封裝處理后得到的報文進行指令解密,其中,如果解密成功,則將解密得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,如果解密失敗,則丟棄解密得到的訪問數(shù)據(jù)包。
可選地,上述預定的報文格式可以與安全服務器的封裝格式相同,均為udp報文格式。
在一種可選的方案中,安全網關可以在接收到封裝報文之后,判斷該封裝報文的報文格式是否與udp報文格式相同,如果該封裝報文的報文格式與udp報文格式不同,則確定該封裝報文由攻擊者發(fā)送,直接丟棄。
如果安全網關確定該封裝報文的報文格式與udp報文格式相同,則可以將該封裝報文進行解封裝處理,并在解封裝之后進行指令解密處理,如果解密錯誤,則確定該封裝報文由攻擊者發(fā)送,直接丟棄。如果解密成功,則可以將該報文轉發(fā)至目標主機。
例如,仍以客戶端為pc計算機,安全服務器為智能路由器設備,安全網關為隧道網關,目標主機為服務器,調度中心服務器為智能調度中心為例,對本申請上述實施例進行詳細說明。隧道網關接收到3個封裝報文,分別為報文1、報文2和報文3,首先判斷3個報文的報文格式,得到報文1的報文格式為udp格式,報文2的報文格式為udp格式,報文3的報文格式為tcp報文,報文3的報文格式不為udp報文,因此直接丟棄。將報文1和報文2進行指令解密,報文1解密錯誤,報文2解密成功,將報文1直接丟棄,將報文2發(fā)送至后端的目標服務器上。
實施例6
本申請的實施例可以提供一種計算機終端,該計算機終端可以是計算機終端群中的任意一個計算機終端設備。可選地,在本實施例中,上述計算機終端也可以替換為移動終端等終端設備。
可選地,在本實施例中,上述計算機終端可以位于計算機網絡的多個網絡設備中的至少一個網絡設備。
在本實施例中,上述計算機終端可以執(zhí)行應用程序的漏洞檢測方法中以下步驟的程序代碼:安全服務器接收到訪問數(shù)據(jù)包之后,將訪問數(shù)據(jù)包進行安全處理,其中,安全服務器與客戶端具有通信關系,獲取客戶端發(fā)起的訪問數(shù)據(jù)包;安全服務器將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關;其中,如果安全網關解析安全處理后的訪問數(shù)據(jù)包成功,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包。
可選地,圖12是根據(jù)本申請實施例的一種計算機終端的結構框圖。如圖12所示,該計算機終端a可以包括:一個或多個(圖中僅示出一個)處理器121、存儲器123、以及傳輸裝置125。
其中,存儲器123可用于存儲軟件程序以及模塊,如本申請實施例中的防御網絡攻擊的方法及裝置對應的程序指令/模塊,處理器121通過運行存儲在存儲器123內的軟件程序及模塊,從而執(zhí)行各種功能應用以及數(shù)據(jù)處理,即實現(xiàn)上述的防御網絡攻擊 的方法。存儲器123可包括高速隨機存儲器,還可以包括非易失性存儲器,如一個或者多個磁性存儲裝置、閃存、或者其他非易失性固態(tài)存儲器。在一些實例中,存儲器123可進一步包括相對于處理器遠程設置的存儲器,這些遠程存儲器可以通過網絡連接至終端a。上述網絡的實例包括但不限于互聯(lián)網、企業(yè)內部網、局域網、移動通信網及其組合。
處理器121可以通過傳輸裝置調用存儲器存儲的信息及應用程序,以執(zhí)行下述步驟:安全服務器接收到訪問數(shù)據(jù)包之后,將訪問數(shù)據(jù)包進行安全處理,其中,安全服務器與客戶端具有通信關系,獲取客戶端發(fā)起的訪問數(shù)據(jù)包;安全服務器將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關;其中,如果安全網關解析安全處理后的訪問數(shù)據(jù)包成功,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包。
可選的,上述處理器121還可以執(zhí)行如下步驟的程序代碼:安全服務器接收配置信息,其中,配置信息包括如下任意一個或多個預設的數(shù)據(jù):ip地址、域名和訪問端口;安全服務器訪問對應的調度中心服務器,并從調度中心服務器獲取到與配置信息對應的安全信息,所述安全信息至少包括:加密指令和安全網關的網關地址。
可選的,上述處理器121還可以執(zhí)行如下步驟的程序代碼:安全服務器使用加密指令對訪問數(shù)據(jù)包進行加密,并對訪問數(shù)據(jù)包或加密后的訪問數(shù)據(jù)包進行封裝,得到封裝報文。
可選的,上述處理器121還可以執(zhí)行如下步驟的程序代碼:安全信息還包括:隨機數(shù)組,對訪問數(shù)據(jù)包進行md5加密,并將隨機數(shù)組和md5加密后的訪問數(shù)據(jù)包進行異或計算,通過將異或的計算結果填充至訪問數(shù)據(jù)包的加密字段中得到加密后的訪問數(shù)據(jù)包。
可選的,上述處理器121還可以執(zhí)行如下步驟的程序代碼:安全服務器判斷訪問數(shù)據(jù)包中攜帶的訪問地址和端口是否與配置信息匹配成功;其中,如果匹配成功,則確定所述訪問數(shù)據(jù)包中攜帶的所述訪問地址和端口為配置的保護地址,則對訪問數(shù)據(jù)包執(zhí)行安全處理,否則,將訪問數(shù)據(jù)包直接發(fā)送至安全網關。
可選的,上述處理器121還可以執(zhí)行如下步驟的程序代碼:安全服務器將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關之后,安全網關解析安全處理后的訪問數(shù)據(jù)包,如果封裝報文的報文格式與預定的報文格式不匹配,則丟棄封裝報文;如果封裝報文的報文格式與預定的報文格式匹配,則安全網關對訪問數(shù)據(jù)包或加密后的訪問數(shù)據(jù)包進行解封裝處理,并對解封裝處理后得到的報文進行指令解密,其中,如果解密成功,則將解密得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,如果解密失敗,則丟棄解密得到 的訪問數(shù)據(jù)包。
可選的,上述處理器121還可以執(zhí)行如下步驟的程序代碼:安全網關轉發(fā)至目標主機的訪問數(shù)據(jù)包為客戶端產生的正常流量,安全網關丟棄的訪問數(shù)據(jù)包為異常客戶端產生的攻擊流量。
采用本申請實施例,安全服務器接收到訪問數(shù)據(jù)包之后,可以將訪問數(shù)據(jù)包進行安全處理,并將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關,如果安全網關解析安全處理后的訪問數(shù)據(jù)包成功,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包。本方案可以根據(jù)判斷訪問數(shù)據(jù)包是否進行安全處理來區(qū)分該訪問數(shù)據(jù)包來自正常用戶還是攻擊者。
容易注意到,由于在接收到正常用戶發(fā)送的訪問數(shù)據(jù)包之后,安全服務器對訪問數(shù)據(jù)包進行安全處理,并將安全處理后的訪問數(shù)據(jù)包發(fā)送給安全網關,安全網關在接收到訪問數(shù)據(jù)包之后,對訪問數(shù)據(jù)包進行解析,如果解析成功則將該訪問數(shù)據(jù)包發(fā)送至目標主機,如果解析失敗則直接丟棄,因此,通過本申請實施例所提供的方案,不僅可以在cc攻擊時有效的區(qū)分正常訪問流量和異常流量,而且,相對sdk加密的防御方式,本申請實施例提供的方案部署簡單,即只需要用戶使用安全服務器,不需要服務提供商進行開發(fā)集成,通用性更強,即適用于端服務提供商,也適用于網站服務提供商,因此,可以在cc攻擊時有效的區(qū)分正常訪問流量和異常流量,保證用戶的正常訪問。
由此,本申請?zhí)峁┑姆桨附鉀Q了在遭受到網絡攻擊時,當前的防御方法難以區(qū)分正常用戶和攻擊者的流量的技術問題。
本領域普通技術人員可以理解,圖12所示的結構僅為示意,計算機終端也可以是智能手機(如android手機、ios手機等)、平板電腦、掌聲電腦以及移動互聯(lián)網設備(mobileinternetdevices,mid)、pad等終端設備。圖12其并不對上述電子裝置的結構造成限定。例如,計算機終端12還可包括比圖12中所示更多或者更少的組件(如網絡接口、顯示裝置等),或者具有與圖12所示不同的配置。
本領域普通技術人員可以理解上述實施例的各種方法中的全部或部分步驟是可以通過程序來指令終端設備相關的硬件來完成,該程序可以存儲于一計算機可讀存儲介質中,存儲介質可以包括:閃存盤、只讀存儲器(read-onlymemory,rom)、隨機存取器(randomaccessmemory,ram)、磁盤或光盤等。
實施例7
本申請的實施例還提供了一種存儲介質??蛇x地,在本實施例中,上述存儲介質 可以用于保存上述實施例一所提供的防御網絡攻擊的方法所執(zhí)行的程序代碼。
可選地,在本實施例中,上述存儲介質可以位于計算機網絡中計算機終端群中的任意一個計算機終端中,或者位于移動終端群中的任意一個移動終端中。
可選地,在本實施例中,存儲介質被設置為存儲用于執(zhí)行以下步驟的程序代碼:安全服務器接收到訪問數(shù)據(jù)包之后,將訪問數(shù)據(jù)包進行安全處理,其中,安全服務器與客戶端具有通信關系,獲取客戶端發(fā)起的訪問數(shù)據(jù)包;安全服務器將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關;其中,如果安全網關解析安全處理后的訪問數(shù)據(jù)包成功,則將解析得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,否則,則丟棄訪問數(shù)據(jù)包。
可選的,上述存儲介質還被設置為存儲用于執(zhí)行以下步驟的程序代碼:安全服務器接收配置信息,其中,配置信息包括如下任意一個或多個預設的數(shù)據(jù):ip地址、域名和訪問端口;安全服務器訪問對應的調度中心服務器,并從調度中心服務器獲取到與所述配置信息對應的安全信息,安全信息至少包括:加密指令和安全網關的網關地址。
可選的,上述存儲介質還被設置為存儲用于執(zhí)行以下步驟的程序代碼:安全服務器使用加密指令對訪問數(shù)據(jù)包進行加密,并對訪問數(shù)據(jù)包或加密后的訪問數(shù)據(jù)包進行封裝,得到封裝報文。
可選的,上述存儲介質還被設置為存儲用于執(zhí)行以下步驟的程序代碼:安全信息還包括:隨機數(shù)組,對訪問數(shù)據(jù)包進行md5加密,并將隨機數(shù)組和md5加密后的訪問數(shù)據(jù)包進行異或計算,通過將異或的計算結果填充至訪問數(shù)據(jù)包的加密字段中得到加密后的訪問數(shù)據(jù)包。
可選的,上述存儲介質還被設置為存儲用于執(zhí)行以下步驟的程序代碼:安全服務器判斷訪問數(shù)據(jù)包中攜帶的訪問地址和端口是否與配置信息匹配成功;其中,如果匹配成功,則確定所述訪問數(shù)據(jù)包中攜帶的所述訪問地址和端口為配置的保護地址,則對訪問數(shù)據(jù)包執(zhí)行安全處理,否則,將訪問數(shù)據(jù)包直接發(fā)送至安全網關。
可選的,上述存儲介質還被設置為存儲用于執(zhí)行以下步驟的程序代碼:安全服務器將安全處理后的訪問數(shù)據(jù)包發(fā)送至對應的安全網關之后,安全網關解析安全處理后的訪問數(shù)據(jù)包,如果封裝報文的報文格式與預定的報文格式不匹配,則丟棄封裝報文;如果封裝報文的報文格式與預定的報文格式匹配,則安全網關對訪問數(shù)據(jù)包或加密后的訪問數(shù)據(jù)包進行解封裝處理,并對解封裝處理后得到的報文進行指令解密,其中,如果解密成功,則將解密得到的訪問數(shù)據(jù)包轉發(fā)至目標主機,如果解密失敗,則丟棄解密得到的訪問數(shù)據(jù)包。
可選的,上述存儲介質還被設置為存儲用于執(zhí)行以下步驟的程序代碼:安全網關轉發(fā)至目標主機的訪問數(shù)據(jù)包為客戶端產生的正常流量,安全網關丟棄的訪問數(shù)據(jù)包為異??蛻舳水a生的攻擊流量。
上述本發(fā)明實施例序號僅僅為了描述,不代表實施例的優(yōu)劣。
在本發(fā)明的上述實施例中,對各個實施例的描述都各有側重,某個實施例中沒有詳述的部分,可以參見其他實施例的相關描述。
在本申請所提供的幾個實施例中,應該理解到,所揭露的技術內容,可通過其它的方式實現(xiàn)。其中,以上所描述的裝置實施例僅僅是示意性的,例如所述單元的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統(tǒng),或一些特征可以忽略,或不執(zhí)行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,單元或模塊的間接耦合或通信連接,可以是電性或其它的形式。
所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部單元來實現(xiàn)本實施例方案的目的。
另外,在本發(fā)明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現(xiàn),也可以采用軟件功能單元的形式實現(xiàn)。
所述集成的單元如果以軟件功能單元的形式實現(xiàn)并作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中。基于這樣的理解,本發(fā)明的技術方案本質上或者說對現(xiàn)有技術做出貢獻的部分或者該技術方案的全部或部分可以以軟件產品的形式體現(xiàn)出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可為個人計算機、服務器或者網絡設備等)執(zhí)行本發(fā)明各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:u盤、只讀存儲器(rom,read-onlymemory)、隨機存取存儲器(ram,randomaccessmemory)、移動硬盤、磁碟或者光盤等各種可以存儲程序代碼的介質。
以上所述僅是本發(fā)明的優(yōu)選實施方式,應當指出,對于本技術領域的普通技術人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本發(fā)明的保護范圍。