CC = Challenge Collapsar,其前身名為Fatboy攻擊,Collapsar(黑洞) 是綠盟科技的一款抗DDOS產(chǎn)品品牌,在對抗拒絕服務攻擊的領域內(nèi)具有比較高的影響力和口碑。 因此,存在這樣一種拒絕攻擊行為,可以將受到Collapsar (黑洞)防火墻保護的網(wǎng)站擊潰,因此攻擊發(fā)起者挑釁式的將其更名為Challenge Collapsar 攻擊,簡稱CC攻擊。
攻擊原理:
CC攻擊的原理并不復雜,其主要思路是基于應用層的弱點進行攻擊;傳統(tǒng)的拒絕服務攻擊,如Syn flood 主要是基于協(xié)議層和服務層的弱點開展攻擊,早期的抗拒絕服務攻擊產(chǎn)品也是基于此進行防護。而應用層的弱點,取決于各自應用平臺的開發(fā)能力,因此難以具有通用性的防護方案,這也是CC攻擊沒有很好的防護產(chǎn)品,非常容易得手的原因。
簡單舉例,一個論壇系統(tǒng),如果存在較多的分頁,當一個蜘蛛程序,多并發(fā)高頻次的進行大量翻頁抓取時,已經(jīng)產(chǎn)生了一種CC攻擊。
應用層常見SQL代碼范例如下(以php為例)
$sql="select * from post where tagid='$tagid' order by postid desc limit $start ,30";
當post表數(shù)據(jù)龐大,翻頁頻繁,$start數(shù)字急劇增加時,查詢影響結果集=$start+30; 該查詢效率呈現(xiàn)明顯下降趨勢,而多并發(fā)頻繁調(diào)用,因查詢無法立即完成,資源無法立即釋放,會導致數(shù)據(jù)庫請求連接過多,導致數(shù)據(jù)庫阻塞,網(wǎng)站無法正常打開。
性能不夠優(yōu)良的數(shù)據(jù)查詢,不良的程序執(zhí)行結構,比較消耗資源的功能,都可能成為CC攻擊的目標,而執(zhí)行方法可能是單機發(fā)起,也可能是通過肉雞發(fā)起,還有可能通過高流量站點嵌入腳本(iframe嵌入或js嵌入)發(fā)起,基于高流量網(wǎng)站嵌入攻擊代碼的CC攻擊,在目前互聯(lián)網(wǎng)環(huán)境上來講,更加無解。
防CC攻擊軟件:
CC攻擊可以歸為DDoS攻擊的一種。他們之間都原理都是一樣的,即發(fā)送大量的請求數(shù)據(jù)來導致服務器拒絕服務,是一種連接攻擊。CC攻擊又可分為代理CC攻擊,和肉雞CC攻擊。代理CC攻擊是黑客借助代理服務器生成指向受害主機的合法網(wǎng)頁請求,實現(xiàn)DOS,和偽裝就叫:cc(ChallengeCollapsar)。而肉雞CC攻擊是黑客使用CC攻擊軟件,控制大量肉雞,發(fā)動攻擊,相比來后者比前者更難防御。因為肉雞可以模擬正常用戶訪問網(wǎng)站的請求。偽造成合法數(shù)據(jù)包。防御CC攻擊可以通過多種方法,禁止網(wǎng)站代理訪問,盡量將網(wǎng)站做成靜態(tài)頁面,限制連接數(shù)量等。這里就不一一介紹了,推薦使用金盾抗DDoS防火墻,%100防御CC攻擊!金盾抗DDoS防火墻是目前國內(nèi)效率最高的軟件抗DDO防火墻,其自主研發(fā)的獨特抗攻擊算法,高效的主動防御系統(tǒng)可有效防御DoS/DDoS、SuperDDoS、DrDoS、代理CC、變異CC、僵尸集群CC、UDPFlood、變異UDP、隨機UDP、ICMP、IGMP、SYN、SYNFLOOD、ARP攻擊,傳奇假人攻擊、論壇假人攻擊、非TCP/IP協(xié)議層攻擊、等多種未知攻擊。各種常見的攻擊行為均可有效識別,并通過集成的機制實時對這些攻擊流量進行處理及阻斷,具備遠處網(wǎng)絡監(jiān)控和數(shù)據(jù)包分析功能,能夠迅速獲取、分析最新的攻擊特征,防御最新的攻擊手段。同時,金盾DDoS防火墻又是一款服務器安全衛(wèi)士,具有多種服務器入侵防護功能,防止黑客嗅探,入侵篡改,真正做到了外防內(nèi)保,為您打造一臺安全省心免維護的服務器。
CC攻擊可謂是較為常見的攻擊手段,也是需要網(wǎng)站抵擋的攻擊之一。那么,高防服務器防御CC攻擊需要注意什么?安全性如何保證?下面一起來了解一下。
1.TCP洪水攻擊:
由于TCP協(xié)議連接三次握手的需要,在每個TCP建立連接時,都要發(fā)送一個帶SYN標記的數(shù)據(jù)報,如果在服務器端發(fā)送應答包后,客戶端不發(fā)出確認,服務器會等待到數(shù)據(jù)超時,如果大量的受控制客戶發(fā)出大量的帶SYN標記的TCP請求數(shù)據(jù)包到服務器端后都沒有應答,會使服務器端的TCP資源迅速枯竭,導致正常的連接不能進入,甚至會導致服務器的系統(tǒng)崩潰。
2.UDP洪水攻擊:
UDP是一個無連接協(xié)議,發(fā)送UDP數(shù)據(jù)報時接受方必須處理該數(shù)據(jù)報。在UDP洪流攻擊訂時,報文發(fā)往受害系統(tǒng)的隨機或指定的端口,通常是目標主機的隨機端口,這使得受害系統(tǒng)必須對流入的數(shù)據(jù)進行分析以確定那個應用服務請求了數(shù)據(jù),若受害系統(tǒng)的某個攻擊端口沒有運行服務,它將用ICMP報文回應一個“目標端口不可達”消息。當控制了大量的代理主機發(fā)送這種數(shù)據(jù)報時,使得受害主機應接不暇,造成拒絕服務,同時也會擁塞受害主機周圍的網(wǎng)絡帶寬。
3.ICMP洪流攻擊:
就是通過代理向受害主機發(fā)送大量ICMPECHoREQUEST報文。這些報文涌向目標并使其回應報文,兩者和起來的流量將使受害者主機網(wǎng)絡帶寬飽和,造成拒絕服務。
4.發(fā)送異常數(shù)據(jù)報攻擊:
發(fā)送IP碎片,或超過主機能夠處理的數(shù)據(jù)報使得受害主機崩潰。著名的TeardroD攻擊工具就利用了某些系統(tǒng)IP協(xié)議棧中有關分片重組的程序漏洞,當數(shù)據(jù)報在不同的網(wǎng)絡中傳輸時。可能需要根據(jù)網(wǎng)絡的最大傳輸單元(MTU),將數(shù)據(jù)報分割成多個分片。各個網(wǎng)絡段都有不同的能夠處理的最大數(shù)據(jù)單元,當主機收到超過網(wǎng)絡主機能夠處理的網(wǎng)絡數(shù)據(jù)數(shù)據(jù)報時,就不知道該怎么處理這種數(shù)據(jù)報,從而引發(fā)系統(tǒng)崩潰。
5.對郵件系統(tǒng)的攻擊:
向一個郵件地址或郵件服務器發(fā)送大量的相同或不同的郵件,使得該地址或者服務器的存儲空間塞滿而不能提供正常的服務。電子郵件炸彈是最古老的匿名攻擊之一,它的原理就是利用舊的SMTP協(xié)議不要求對發(fā)信人進行身份認證,黑客以受害者的Email地址訂閱大量的郵件列表,從而導致受害者的郵箱空間被占滿。而且在攻擊的發(fā)展下,新的SMTP協(xié)議增加了2個命令,對發(fā)信人進行身份認證,在一定程度上降低了電子郵件炸彈的風險。
6.僵尸網(wǎng)絡攻擊:
通常是指可以自動地執(zhí)行預定義的功能、可以被預定義的命令控制、具有一定人工智能的程序。Bot可以通過溢出漏洞攻擊、蠕蟲郵件、網(wǎng)絡共享、口令猜測、P2P軟件、IRc文件傳遞等多種途徑進入被害者的主機,被害主機被植入Bot后,就主動和互聯(lián)網(wǎng)上的一臺或多臺控制節(jié)點(例如IRC服務器)取得聯(lián)系,進而自動接收黑客通過這些控制節(jié)點發(fā)送的控制指令,這些被害主機和控制服務器就組成了BotNet(僵尸網(wǎng)絡)。黑客可以控制這些“僵尸網(wǎng)絡”集中發(fā)動對目標主機的拒絕服務攻擊。
防范手段:
1、優(yōu)化代碼
盡可能使用緩存來存儲重復的查詢內(nèi)容,減少重復的數(shù)據(jù)查詢資源開銷。
減少復雜框架的調(diào)用,減少不必要的數(shù)據(jù)請求和處理邏輯。
程序執(zhí)行中,及時釋放資源,比如及時關閉mysql連接,及時關閉memcache連接等,減少空連接消耗。
2、限制手段
對一些負載較高的程序增加前置條件判斷,可行的判斷方法如下
必須具有網(wǎng)站簽發(fā)的session信息才可以使用(可簡單阻止程序發(fā)起的集中請求)
必須具有正確的referer(可有效防止嵌入式代碼的攻擊)
禁止一些客戶端類型的請求(比如一些典型的不良蜘蛛特征)
同一session多少秒內(nèi)只能執(zhí)行一次
3、完善日志
盡可能完整保留訪問日志。