本發(fā)明涉及一種防御攻擊的方法及其系統(tǒng),特別是一種防御ddos攻擊的方法及其系統(tǒng)。
背景技術(shù):
分布式拒絕服務(wù)(ddos:distributeddenialofservice)攻擊指借助于客戶/服務(wù)器技術(shù),將多個計算機聯(lián)合起來作為攻擊平臺,對一個或多個目標(biāo)發(fā)動ddos攻擊,從而成倍地提高拒絕服務(wù)攻擊的威力。通常,攻擊者使用一個偷竊帳號將ddos主控程序安裝在一個計算機上,在一個設(shè)定的時間主控程序?qū)⑴c大量代理程序通訊,代理程序已經(jīng)被安裝在網(wǎng)絡(luò)上的許多計算機上。代理程序收到指令時就發(fā)動攻擊。利用客戶/服務(wù)器技術(shù),主控程序能在幾秒鐘內(nèi)激活成百上千次代理程序的運行。
在現(xiàn)有技術(shù)上,普遍認(rèn)為ddos攻擊是沒辦法防御的,唯一能緩解的方案就是根據(jù)攻擊流量的大小不斷地增加帶寬,但是一個服務(wù)器的帶寬是有限的,而攻擊者的流量理論上可以無限大,并且隨著服務(wù)器帶寬的增加,相應(yīng)的花費在寬帶上的費用也會大大增加。
技術(shù)實現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問題是提供一種防御ddos攻擊的方法及其系統(tǒng),其有效防御ddos攻擊并且成本較低。
為解決上述技術(shù)問題,本發(fā)明所采用的技術(shù)方案是:
一種防御ddos攻擊的方法,其特征在于包含以下步驟:
步驟一:生成a個特定順序的二級域名,并將二級域名與b個中轉(zhuǎn)服務(wù)器ip綁定,其中a≧b;
步驟二:客戶端從第n個二級域名開始按照二級域名的特定順序訪問中轉(zhuǎn)服務(wù)器請求服務(wù),若失敗則訪問下一個中轉(zhuǎn)服務(wù)器,直至請求服務(wù)成功,其中n<a。
進一步地,所述步驟一中,二級域名生成方法采用種子隨機數(shù)、md5或sha算法生成。
進一步地,所述步驟一中,b個二級域名與b個中轉(zhuǎn)服務(wù)器一一綁定后,剩余的a-b個二級域名設(shè)置錯誤的干擾ip地址。
進一步地,所述步驟二中,中轉(zhuǎn)服務(wù)器收到客戶端的請求,判斷客戶端的身份信息決定是否響應(yīng)請求。
進一步地,所述身份信息包含會員等級、活躍度、綁定手機號。
進一步地,當(dāng)某個中轉(zhuǎn)服務(wù)器受到攻擊后,將連接到該服務(wù)器上的客戶端通過跳轉(zhuǎn)指令再平均分配到不同的中轉(zhuǎn)服務(wù)器,找到發(fā)起攻擊的客戶端用戶身份,針對該客戶端用戶身份發(fā)起的請求,服務(wù)器不再響應(yīng)。
一種防御ddos攻擊的系統(tǒng),其特征在于:包含客戶端、若干中轉(zhuǎn)服務(wù)器和主服務(wù)器,主服務(wù)器接收并處理客戶端發(fā)出經(jīng)中轉(zhuǎn)服務(wù)器送達的數(shù)據(jù),根據(jù)數(shù)據(jù)內(nèi)容決定是否處理該客戶端請求,或決定是否發(fā)出讓客戶端跳轉(zhuǎn)到指定中轉(zhuǎn)服務(wù)器的指令;客戶端以特定順序訪問中轉(zhuǎn)服務(wù)器,接收并處理服務(wù)器端返回經(jīng)中轉(zhuǎn)服務(wù)器送達的數(shù)據(jù)指令,若收到跳轉(zhuǎn)指令,則跳轉(zhuǎn)到指定的中轉(zhuǎn)服務(wù)器。
本發(fā)明與現(xiàn)有技術(shù)相比,具有以下優(yōu)點和效果:本發(fā)明提供了一種防御ddos攻擊的方法及其系統(tǒng),相比于現(xiàn)在毫無辦法只能拓寬帶寬的方法,本發(fā)明的成本大大降低,同時本發(fā)明相比于現(xiàn)有技術(shù)對ddos攻擊的防御效果更加的顯著。
附圖說明
圖1是本發(fā)明的一種防御ddos攻擊的系統(tǒng)的示意圖。
圖2是本發(fā)明的實施例的二級域名與中轉(zhuǎn)服務(wù)器ip綁定示意表格。
具體實施方式
本發(fā)明的一種防御ddos攻擊的方法,其特征在于包含以下步驟:
步驟一:生成a個特定順序的二級域名,并將二級域名與b個中轉(zhuǎn)服務(wù)器ip綁定,其中a≧b;
二級域名生成方法采用種子隨機數(shù)、md5或sha算法生成。
b個二級域名與b個中轉(zhuǎn)服務(wù)器一一綁定后,剩余的a-b個二級域名設(shè)置錯誤的干擾ip地址。
步驟二:客戶端從第n個二級域名開始按找二級域名的特定順序訪問中轉(zhuǎn)服務(wù)器請求服務(wù),若失敗則訪問下一個中轉(zhuǎn)服務(wù)器,直至請求服務(wù)成功,其中n<a。
中轉(zhuǎn)服務(wù)器收到客戶端的請求,判斷客戶端的身份信息決定是否響應(yīng)請求。身份信息包含會員等級、活躍度、綁定手機號。
當(dāng)某個中轉(zhuǎn)服務(wù)器收到攻擊后,將連接到該服務(wù)器上的客戶端通過跳轉(zhuǎn)指令再平均分配到不同的中轉(zhuǎn)服務(wù)器,找到發(fā)起攻擊的客戶端用戶身份,針對該客戶端用戶身份發(fā)起的請求,服務(wù)器不再響應(yīng)。
如圖1所示,一種防御ddos攻擊的系統(tǒng),包含客戶端、若干中轉(zhuǎn)服務(wù)器和主服務(wù)器,主服務(wù)器接收并處理客戶端發(fā)出經(jīng)中轉(zhuǎn)服務(wù)器送達的數(shù)據(jù),根據(jù)數(shù)據(jù)內(nèi)容決定是否處理該客戶端請求,或決定是否發(fā)出讓客戶端跳轉(zhuǎn)到指定中轉(zhuǎn)服務(wù)器的指令;客戶端以特定順序訪問中轉(zhuǎn)服務(wù)器,接收并處理服務(wù)器端返回經(jīng)中轉(zhuǎn)服務(wù)器送達的數(shù)據(jù)指令,若收到跳轉(zhuǎn)指令,則跳轉(zhuǎn)到指定的中轉(zhuǎn)服務(wù)器。
相比傳統(tǒng)的c/s結(jié)構(gòu),除了客戶端和主服務(wù)器端,中間需增加一個中轉(zhuǎn)服務(wù)器端,中轉(zhuǎn)服務(wù)器的功能為:接收客戶端的數(shù)據(jù)并發(fā)送給主服務(wù)器端,接收主服務(wù)器端的數(shù)據(jù)并發(fā)送給客戶端。由于中轉(zhuǎn)服務(wù)器只負(fù)責(zé)數(shù)據(jù)的轉(zhuǎn)發(fā),所以對性能要求不高,租用成本低廉。為保證數(shù)據(jù)傳輸?shù)男?,中轉(zhuǎn)服務(wù)器與主服務(wù)器可以在同一內(nèi)網(wǎng)。
下面結(jié)合附圖并通過實施例對本發(fā)明作進一步的詳細說明,以下實施例是對本發(fā)明的解釋而本發(fā)明并不局限于以下實施例。
假設(shè)有主域名abc.com,使用種子隨機數(shù)或類似md5、sha等算法生成100個特定順序的二級域名,例如以下生成算法:
stringkey="abcdefg";
stringcode="1234567890";
for(intm=0;m<100;m++){
code=global.md5(code+key);
system.out.println(code);
}
以上算法key和code的初始值可自行輸入,以確保生成結(jié)果不同,只需有特定順序即可。
如圖2所示,將100個二級域名與50個中轉(zhuǎn)服務(wù)器ip綁定,其中一些二級域名可綁定一些錯誤的干擾ip。
客戶端從第1個二級域名開始按順序訪問中轉(zhuǎn)服務(wù)器請求服務(wù),若失敗則向下訪問第2個,直到成功。
服務(wù)器收到客戶端的請求,可根據(jù)客戶端的身份信息(例如會員等級、活躍度等)決定是否響應(yīng)請求,若不響應(yīng)請求,則從客戶端來看,該地址跟錯誤干擾ip地址一樣,攻擊者也就無法判斷該地址是否為正常的服務(wù)器地址,無法決定是否進行攻擊。
由于沒有特定的域名地址,攻擊者也只能通過正常使用客戶端才能訪問到正確的中轉(zhuǎn)服務(wù)器地址,而且一次只能訪問1個,想要一直不斷進行攻擊效率不高。
服務(wù)器也可以決定每個中轉(zhuǎn)服務(wù)器上正常連接的客戶端數(shù)量,如果攻擊者發(fā)起對某個中轉(zhuǎn)服務(wù)器的攻擊,也只會暫時影響連接到該中轉(zhuǎn)服務(wù)器的客戶端,其他中轉(zhuǎn)服務(wù)器不受影響。
如果客戶端用戶身份可以通過手機號等唯一標(biāo)識手段進行驗證的,在某個中轉(zhuǎn)服務(wù)器受到攻擊后,可以將連接到該服務(wù)器上的客戶端通過跳轉(zhuǎn)指令再平均分配到不同的中轉(zhuǎn)服務(wù)器,以此類推將可以找到發(fā)起攻擊的客戶端用戶身份,針對該客戶端用戶身份發(fā)起的請求,服務(wù)器可以不用響應(yīng),從而徹底防止攻擊者再次找到正常的中轉(zhuǎn)服務(wù)器進行攻擊。
現(xiàn)有技術(shù)租用云服務(wù)商高防ip價格為,20g防御能力需要費用21800元/月;而本發(fā)明租用一個基礎(chǔ)防御能力5g的中轉(zhuǎn)服務(wù)器只需要45元/月,租用50個中轉(zhuǎn)服務(wù)器費用為2250元/月,而防御能力達到了250g,理論上可以徹底防御ddos攻擊。
本說明書中所描述的以上內(nèi)容僅僅是對本發(fā)明所作的舉例說明。本發(fā)明所屬技術(shù)領(lǐng)域的技術(shù)人員可以對所描述的具體實施例做各種各樣的修改或補充或采用類似的方式替代,只要不偏離本發(fā)明說明書的內(nèi)容或者超越本權(quán)利要求書所定義的范圍,均應(yīng)屬于本發(fā)明的保護范圍。