專利名稱:一種防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的方法和設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信領(lǐng)域,特別涉及一種防御通過計(jì)算機(jī)自動(dòng)軟件發(fā)起的對(duì)服務(wù)器進(jìn)行攻擊的方法和設(shè)備。
背景技術(shù):
用戶的網(wǎng)絡(luò)瀏覽器獲取Internet站點(diǎn)上的網(wǎng)絡(luò)信息時(shí),一般情況下是直接連接Web服務(wù)器,對(duì)網(wǎng)頁發(fā)送讀取請(qǐng)求,Web服務(wù)器收到讀取請(qǐng)求后,對(duì)用戶進(jìn)行響應(yīng),將信息傳送給用戶。另外,用戶也可以通過代理服務(wù)器與Web服務(wù)器進(jìn)行連接。
代理服務(wù)器是介于用戶網(wǎng)絡(luò)瀏覽器和Web服務(wù)器之間的一臺(tái)服務(wù)器。使用代理服務(wù)器時(shí),瀏覽器并不直接到Web服務(wù)器請(qǐng)求讀取網(wǎng)頁,而是向代理服務(wù)器發(fā)出請(qǐng)求,請(qǐng)求會(huì)先送到代理服務(wù)器,由代理服務(wù)器發(fā)起對(duì)Web服務(wù)器的請(qǐng)求,并將Web服務(wù)器回應(yīng)的網(wǎng)頁傳送給用戶瀏覽器。而且,大部分代理服務(wù)器都具有Cache(高速緩存)的功能,它有很大的存儲(chǔ)空間,不斷將新取得的數(shù)據(jù)儲(chǔ)存到代理服務(wù)器的存儲(chǔ)器上,如果用戶瀏覽器所請(qǐng)求的數(shù)據(jù)在它本機(jī)的存儲(chǔ)器上已經(jīng)存在而且是最新的,那么它就不重新從Web服務(wù)器取數(shù)據(jù),而直接將存儲(chǔ)器上的數(shù)據(jù)傳送給用戶的瀏覽器,這樣就能顯著提高瀏覽速度和效率。
利用代理服務(wù)器的上述特性,網(wǎng)絡(luò)上出現(xiàn)了一種新型的針對(duì)Web服務(wù)器的攻擊方式,這種攻擊方式被稱為DDoS(Distribute Deny of Serviee,分布式拒絕服務(wù))攻擊方式,它的原理是利用眾多代理服務(wù)器模擬大量的用戶訪問,向服務(wù)器動(dòng)態(tài)頁面(asp,php.aspx,jsp等頁面)發(fā)送大量請(qǐng)求,這些頁面可以是存在的頁面,也可以是不存在的頁面。攻擊者通過代理服務(wù)器隱藏其真實(shí)的IP地址,并完成三次握手,因此很難對(duì)真正的攻擊者進(jìn)行防御。對(duì)于不存在的網(wǎng)頁,代理服務(wù)器沒有緩存的數(shù)據(jù),只能將攻擊者的請(qǐng)求發(fā)給服務(wù)器處理。而服務(wù)器處理這些請(qǐng)求的開銷較大,通常會(huì)進(jìn)行數(shù)據(jù)庫查詢等非常耗時(shí)的操作,由于這些操作不能立刻完成,Web服務(wù)器將對(duì)未能處理完的請(qǐng)求進(jìn)行入隊(duì)列緩存,這樣將很快占滿Web服務(wù)器應(yīng)用層服務(wù)的連接數(shù),對(duì)后面正常的用戶訪問只能拒絕。例如,Web服務(wù)器中的很多apache服務(wù)器能夠處理并發(fā)送的連接數(shù)不超過是512或者1024個(gè),通過這種DDoS攻擊,很容易造成DoS(Deny of Service,拒絕服務(wù)),甚至?xí)斐蒞eb服務(wù)器處理負(fù)荷過重,導(dǎo)致Web服務(wù)器癱瘓。
以TCP(Transmission Control Protocol,傳輸控制協(xié)議)連接交互信息描述DDoS攻擊的過程。具體過程如下攻擊者通過代理服務(wù)器在同一條TCP連接中不斷地向Web服務(wù)器請(qǐng)求一個(gè)不存在的頁面,如果攻擊者同時(shí)啟動(dòng)多個(gè)攻擊連接,會(huì)使得Web服務(wù)器忙于處理攻擊者發(fā)起的請(qǐng)求,從而搶占Web服務(wù)器應(yīng)用層服務(wù)的連接數(shù),最終導(dǎo)致Web服務(wù)器DoS。
另外攻擊者也有可能采用如下形式進(jìn)行攻擊攻擊者訪問正常的頁面,并提交相關(guān)的查詢請(qǐng)求,該請(qǐng)求非常消耗Web服務(wù)器資源,如消耗CPU資源,內(nèi)存資源,數(shù)據(jù)庫資源等。Web服務(wù)器將忙于處理這些請(qǐng)求而無法接受新的查詢請(qǐng)求。這類攻擊按目前的技術(shù)難以防范。主要原因是首先,這種攻擊是通過Proxy發(fā)起的全連接訪問,是一個(gè)真實(shí)的訪問,中間抗DDos設(shè)備和Web服務(wù)器無法將真實(shí)用戶和攻擊者區(qū)分開來。其次,這種攻擊可以通過大量的Proxy發(fā)起,Web服務(wù)器和中間抗DDos設(shè)備無法通過限制連接數(shù)的方式來識(shí)別攻擊者。其三,這種攻擊可以是慢速的攻擊,并且只需要較低的速率和較少的連接就能成功攻擊。
由于此類攻擊模擬正常用戶的訪問行為,所以常用的SynFlood防御技術(shù)、TCP代理不能對(duì)其進(jìn)行有效防范。
針對(duì)這種攻擊通常會(huì)在每個(gè)代理服務(wù)器上發(fā)起一定數(shù)目連接請(qǐng)求的特征,可以在防火墻類設(shè)備上對(duì)用戶的流量進(jìn)行管理,限定某個(gè)IP的帶寬,或者針對(duì)每個(gè)IP地址進(jìn)行連接數(shù)目的限制,在一定程度上可以防御此類攻擊。
通過對(duì)用戶的流量進(jìn)行管理,限定某個(gè)IP的帶寬或者限定每個(gè)IP地址發(fā)起的連接數(shù)目有以下局限性(1)此類攻擊是通過大量代理服務(wù)器發(fā)起的,每個(gè)代理服務(wù)器發(fā)起的攻擊連接可能很少。如果限制每個(gè)IP的連接數(shù),需要將連接數(shù)限制在很小的范圍內(nèi)才可能有效。這樣可能限制了真實(shí)的用戶連接。同時(shí),如果攻擊者使用的代理服務(wù)器數(shù)量很多,那么攻擊服務(wù)器的連接仍然很多。通過流量進(jìn)行管理的方法不能達(dá)到很好的防御效果;(2)此類攻擊主要針對(duì)Web服務(wù)器在處理動(dòng)態(tài)網(wǎng)頁時(shí)的性能瓶頸,而不是消耗Web服務(wù)器的帶寬,因此較小的攻擊流量仍然可以消耗大量的服務(wù)器資源,從而達(dá)到攻擊的目的;(3)對(duì)用戶的流量進(jìn)行管理可能會(huì)影響正常用戶對(duì)Web服務(wù)器的正常訪問,導(dǎo)致上網(wǎng)速度慢等問題,影響正常用戶的使用。
另外,這種攻擊模擬正常用戶的訪問都需要通過代理服務(wù)器來完成,所以通過某些技術(shù),檢測(cè)http的request(請(qǐng)求)報(bào)文中是否存在某些特殊的能表示通過代理訪問的信息,并以此信息確定這是一次代理訪問,對(duì)其并作相應(yīng)的過濾。這種方法具備一定的防攻擊能力,但是存在如下問題對(duì)真正在內(nèi)部網(wǎng)絡(luò)通過代理服務(wù)器訪問外部網(wǎng)絡(luò)的請(qǐng)求會(huì)形成誤判,影響正常用戶的使用;代理服務(wù)器的行為不可預(yù)測(cè),對(duì)于那些不攜帶特殊信息的請(qǐng)求無法進(jìn)行識(shí)別和過濾,不能有效地起到防御功能。
發(fā)明內(nèi)容
為了解決現(xiàn)有技術(shù)中不能有效防御對(duì)Web服務(wù)器的攻擊的問題,本發(fā)明實(shí)施例提供了一種防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的方法和設(shè)備。所述技術(shù)方案如下一種防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的方法,所述方法包括在服務(wù)器端設(shè)置中間設(shè)備;所述中間設(shè)備收到用戶發(fā)送的連接請(qǐng)求后,將所述連接請(qǐng)求定向到計(jì)算機(jī)不能自動(dòng)完成的認(rèn)證機(jī)制中,所述認(rèn)證機(jī)制驗(yàn)證所述用戶是否合法,如果合法,將所述用戶的連接請(qǐng)求傳輸給所述服務(wù)器;否則,拒絕所述用戶的連接請(qǐng)求。
本發(fā)明實(shí)施例還提供了一種防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的設(shè)備,所述設(shè)備包括接收與通知模塊,用于接收用戶發(fā)送的連接請(qǐng)求,并將所述連接請(qǐng)求定向到計(jì)算機(jī)不能自動(dòng)完成的認(rèn)證機(jī)制中;驗(yàn)證模塊,用于所述接收與通知模塊將所述連接請(qǐng)求定向到所述認(rèn)證機(jī)制后,通過所述認(rèn)證機(jī)制驗(yàn)證所述用戶是否合法;連接請(qǐng)求處理模塊,用于當(dāng)所述驗(yàn)證模塊驗(yàn)證所述用戶合法時(shí),將所述用戶的連接請(qǐng)求傳輸給所述服務(wù)器;當(dāng)所述用戶不合法時(shí),拒絕所述用戶的連接請(qǐng)求。
本發(fā)明實(shí)施例的技術(shù)方案帶來的有益效果是通過在Web服務(wù)器端設(shè)置中間設(shè)備,將連接請(qǐng)求重定向到計(jì)算機(jī)不能自動(dòng)完成的認(rèn)證機(jī)制中,通過該機(jī)制的認(rèn)證,能夠有效地防御通過計(jì)算機(jī)自動(dòng)軟件對(duì)Web服務(wù)器發(fā)起的攻擊,減輕Web服務(wù)器的負(fù)擔(dān),使正常用戶能夠連接到Web服務(wù)器。
圖1是本發(fā)明實(shí)施例1提供的防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的方法流程圖;圖2是本發(fā)明實(shí)施例2提供的防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的設(shè)備示意圖。
具體實(shí)施例方式
下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步說明,但本發(fā)明不局限于以下實(shí)施例。
本發(fā)明實(shí)施例采用在Web服務(wù)器端設(shè)置中間設(shè)備對(duì)服務(wù)器進(jìn)行保護(hù),防御通過計(jì)算機(jī)自動(dòng)軟件對(duì)服務(wù)器進(jìn)行的攻擊。
自動(dòng)軟件對(duì)Web服務(wù)器發(fā)起的全連接攻擊,可以是通過Proxy發(fā)起的,也可以是計(jì)算機(jī)自身發(fā)起的,都有一個(gè)共同的特征接受軟件自動(dòng)處理,針對(duì)這個(gè)特征,本發(fā)明實(shí)施例提供了一種防御通過計(jì)算機(jī)自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的方法和設(shè)備。
實(shí)施例1參見圖1,是本發(fā)明實(shí)施例1提供的防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的方法流程圖,本實(shí)施例提供了一種防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的方法,具體如下步驟101在Web服務(wù)器端設(shè)置中間設(shè)備;此設(shè)備可以是實(shí)際的物理設(shè)備,比如防火墻設(shè)備,也可以是虛擬的設(shè)備,比如安裝于服務(wù)器的一套具有重定向、驗(yàn)證或連接功能的軟件。如果是軟件,該軟件可以存儲(chǔ)在計(jì)算機(jī)可讀取的物理介質(zhì)中,如硬盤或光盤等。
本實(shí)施例以防火墻設(shè)備為例進(jìn)行說明,所有連接服務(wù)器的請(qǐng)求先到達(dá)防火墻設(shè)備;步驟102防火墻設(shè)備收到用戶發(fā)送的連接請(qǐng)求后,將所述連接請(qǐng)求定向到計(jì)算機(jī)不能自動(dòng)完成的認(rèn)證機(jī)制中。
步驟103認(rèn)證機(jī)制驗(yàn)證該用戶是否合法,如果合法,執(zhí)行步驟104,否則執(zhí)行步驟105。
步驟104將該用戶的連接請(qǐng)求傳輸給Web服務(wù)器,使該用戶與Web服務(wù)器建立連接。
步驟105拒絕該用戶的連接請(qǐng)求,使該用戶不能與Web服務(wù)器建立連接。
其中,認(rèn)證機(jī)制可以是計(jì)算機(jī)無法參與的人工界面,比如圖形顯示界面,通知用戶輸入認(rèn)證信息,驗(yàn)證用戶輸入的認(rèn)證信息;也可以是一個(gè)認(rèn)證確認(rèn)窗口,通過該窗口,通知用戶選擇是否確認(rèn)上述連接請(qǐng)求,如果該用戶選擇是,則該用戶通過驗(yàn)證,如果該用戶不選擇或者選擇否,則該用戶不合法,因?yàn)樽詣?dòng)軟件不具有信息交互的能力,對(duì)認(rèn)證機(jī)制提供的通知不會(huì)做任何響應(yīng),所以通過該認(rèn)證機(jī)制可以有效地防御通過自動(dòng)軟件對(duì)Web服務(wù)器進(jìn)行攻擊。
實(shí)施例2參見圖2,是本發(fā)明實(shí)施例提供的防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的設(shè)備示意圖。本發(fā)明實(shí)施例還提供了一種防御通過計(jì)算機(jī)自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的設(shè)備,該設(shè)備可以是實(shí)際存在的物理設(shè)備,也可以是虛擬的設(shè)備。包括以下幾部分接收與通知模塊,用于接收用戶發(fā)送的連接請(qǐng)求,并將該連接請(qǐng)求定向到計(jì)算機(jī)不能自動(dòng)完成的認(rèn)證機(jī)制中;驗(yàn)證模塊,用于接收與通知模塊將連接請(qǐng)求定向到認(rèn)證機(jī)制后,通過該認(rèn)證機(jī)制驗(yàn)證該用戶是否合法;連接請(qǐng)求處理模塊,用于當(dāng)驗(yàn)證模塊的驗(yàn)證該用戶合法時(shí),將該用戶的連接請(qǐng)求傳送給服務(wù)器;當(dāng)該用戶不合法時(shí),拒絕該用戶的連接請(qǐng)求。
其中,認(rèn)證機(jī)制可以是計(jì)算機(jī)無法參與的人工界面,比如可以是圖形顯示界面。驗(yàn)證模塊通過此圖形顯示界面要求用戶輸入認(rèn)證信息,驗(yàn)證用戶輸入的認(rèn)證信息;也可以是一個(gè)認(rèn)證窗口,驗(yàn)證模塊通過用戶點(diǎn)擊認(rèn)證窗口中的確認(rèn)或取消對(duì)話框的操作,驗(yàn)證用戶的身份。
采用圖形顯示界面進(jìn)行驗(yàn)證時(shí),驗(yàn)證模塊可以包括信息通知單元,用于通知用戶輸入認(rèn)證信息;驗(yàn)證單元,用于用戶輸入認(rèn)證信息后,驗(yàn)證認(rèn)證信息是否正確,如果正確,該用戶合法,否則,該用戶不合法。
采用認(rèn)證窗口進(jìn)行認(rèn)證時(shí),驗(yàn)證模塊可以包括確認(rèn)信息通知單元,用于通知用戶選擇是否確認(rèn)連接請(qǐng)求;用戶響應(yīng)處理單元,用于當(dāng)用戶確認(rèn)所述連接請(qǐng)求時(shí),該用戶通過驗(yàn)證,當(dāng)用戶不選擇或者取消連接請(qǐng)求時(shí),該用戶不合法。
通過以上實(shí)施例,在Web服務(wù)器端設(shè)置中間設(shè)備,將連接請(qǐng)求重定向到計(jì)算機(jī)不能自動(dòng)完成的認(rèn)證機(jī)制中。通過該機(jī)制的認(rèn)證,能夠有效地防御通過計(jì)算機(jī)自動(dòng)軟件對(duì)Web服務(wù)器發(fā)起的攻擊,減輕Web服務(wù)器的負(fù)擔(dān),使正常用戶能夠連接到Web服務(wù)器。
以上所述的實(shí)施例,只是本發(fā)明的一種較優(yōu)選的具體實(shí)施方式
,本領(lǐng)域的技術(shù)人員在本發(fā)明技術(shù)方案范圍內(nèi)進(jìn)行的通常變化和替換都應(yīng)包含在本發(fā)明的保護(hù)范圍內(nèi)。
權(quán)利要求
1.一種防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的方法,其特征在于,所述方法包括在服務(wù)器端設(shè)置中間設(shè)備;所述中間設(shè)備收到用戶發(fā)送的連接請(qǐng)求后,將所述連接請(qǐng)求定向到計(jì)算機(jī)不能自動(dòng)完成的認(rèn)證機(jī)制中,所述認(rèn)證機(jī)制驗(yàn)證所述用戶是否合法,如果合法,將所述用戶的連接請(qǐng)求傳輸給所述服務(wù)器;否則,拒絕所述用戶的連接請(qǐng)求。
2.如權(quán)利要求1所述的防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的方法,其特征在于,所述驗(yàn)證所述用戶是否合法具體包括通知所述用戶輸入認(rèn)證信息;所述用戶輸入認(rèn)證信息后,所述中間設(shè)備驗(yàn)證所述認(rèn)證信息是否正確,如果正確,所述用戶合法,否則,所述用戶不合法。
3.如權(quán)利要求1所述的防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的方法,其特征在于,所述驗(yàn)證所述用戶是否合法具體包括通知所述用戶選擇是否確認(rèn)所述連接請(qǐng)求,如果所述用戶選擇是,則所述用戶通過驗(yàn)證,如果所述用戶不選擇或者選擇否,則所述用戶不合法。
4.如權(quán)利要求1所述的防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的方法,其特征在于,所述中間設(shè)備具體為防火墻設(shè)備。
5.如權(quán)利要求1所述的防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的方法,其特征在于,所述中間設(shè)備具體為具有重定向、驗(yàn)證或連接功能的虛擬設(shè)備。
6.如權(quán)利要求1所述的防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的方法,其特征在于,所述計(jì)算機(jī)不能自動(dòng)完成的認(rèn)證機(jī)制具體為計(jì)算機(jī)無法參與的界面。
7.如權(quán)利要求6所述的防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的方法,其特征在于,所述界面具體為圖形顯示界面。
8.一種防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的設(shè)備,其特征在于,所述設(shè)備包括接收與通知模塊,用于接收用戶發(fā)送的連接請(qǐng)求,并將所述連接請(qǐng)求定向到計(jì)算機(jī)不能自動(dòng)完成的認(rèn)證機(jī)制中;驗(yàn)證模塊,用于所述接收與通知模塊將所述連接請(qǐng)求定向到所述認(rèn)證機(jī)制后,通過所述認(rèn)證機(jī)制驗(yàn)證所述用戶是否合法;連接請(qǐng)求處理模塊,用于當(dāng)所述驗(yàn)證模塊驗(yàn)證所述用戶合法時(shí),將所述用戶的連接請(qǐng)求傳送給服務(wù)器;當(dāng)所述用戶不合法時(shí),拒絕所述用戶的連接請(qǐng)求。
9.如權(quán)利要求8所述的防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的設(shè)備,其特征在于,所述驗(yàn)證模塊具體包括信息通知單元,用于通知所述用戶輸入認(rèn)證信息;驗(yàn)證單元,用于所述用戶輸入認(rèn)證信息后,驗(yàn)證所述認(rèn)證信息是否正確,如果正確,所述用戶合法,否則,所述用戶不合法。
10.如權(quán)利要求8所述的防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的設(shè)備,其特征在于,所述驗(yàn)證模塊具體包括確認(rèn)信息通知單元,用于通知所述用戶選擇是否確認(rèn)所述連接請(qǐng)求;用戶響應(yīng)處理單元,用于當(dāng)所述用戶確認(rèn)所述連接請(qǐng)求時(shí),所述用戶通過驗(yàn)證,當(dāng)所述用戶不選擇或者取消所述連接請(qǐng)求時(shí),所述用戶不合法。
全文摘要
本發(fā)明提供了一種防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的方法和設(shè)備,屬于網(wǎng)絡(luò)通信領(lǐng)域。為了解決現(xiàn)有技術(shù)中不能有效防御對(duì)Web服務(wù)器的攻擊的問題,本發(fā)明提供了一種防御通過自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的方法,包括在服務(wù)器端設(shè)置中間設(shè)備,收到用戶發(fā)送的連接請(qǐng)求后,定向到計(jì)算機(jī)不能自動(dòng)完成的認(rèn)證機(jī)制中,驗(yàn)證用戶是否合法,如果合法,所述用戶與所述服務(wù)器建立連接;否則,拒絕所述用戶的連接請(qǐng)求。本發(fā)明還提供了一種防御自動(dòng)軟件對(duì)服務(wù)器進(jìn)行攻擊的設(shè)備,包括接收與通知模塊、驗(yàn)證模塊和連接請(qǐng)求處理模塊。本發(fā)明所述方案能夠有效地防御通過計(jì)算機(jī)自動(dòng)軟件對(duì)Web服務(wù)器發(fā)起的攻擊,使正常用戶能夠連接到Web服務(wù)器。
文檔編號(hào)H04L29/06GK101030860SQ20071007931
公開日2007年9月5日 申請(qǐng)日期2007年2月15日 優(yōu)先權(quán)日2007年2月15日
發(fā)明者雷奕康, 楚麗娜 申請(qǐng)人:華為技術(shù)有限公司