什么是CC攻擊 判斷網(wǎng)站是否被CC攻擊并且如何防御CC攻擊

什么是CC攻擊
CC主要是用來攻擊頁面的。大家都有這樣的經(jīng)歷,就是在訪問論壇時,如果這個論壇比較大,訪問的人比較多,打開頁面的速度會比較慢,對不?!一般來說,訪問的人越多,論壇的頁面越多,數(shù)據(jù)庫就越大,被訪問的頻率也越高,占用的系統(tǒng)資源也就相當(dāng)可觀。
一個靜態(tài)頁面不會占用服務(wù)器多少資源,甚至可以說直接從內(nèi)存中讀出來發(fā)給你就可以了。但是論壇就不一樣了,我看一個帖子,系統(tǒng)需要到數(shù)據(jù)庫中判斷我是否有讀帖子的權(quán)限,如果有,就讀出帖子里面的內(nèi)容,顯示出來。
這里至少訪問了2次數(shù)據(jù)庫,如果數(shù)據(jù)庫的體積有200MB大小,系統(tǒng)很可能就要在這200MB大小的數(shù)據(jù)空間搜索一遍,這需要多少的CPU資源和時間?如果我是查找一個關(guān)鍵字,那么時間更加可觀,因?yàn)榍懊娴乃阉骺梢韵薅ㄔ谝粋€很小的范圍內(nèi),比如用戶權(quán)限只查用戶表,帖子內(nèi)容只查帖子表,而且查到就可以馬上停止查詢,而搜索肯定會對所有的數(shù)據(jù)進(jìn)行一次判斷,消耗的時間是相當(dāng)?shù)拇蟆?/p>
CC就是充分利用了這個特點(diǎn),模擬多個用戶(多少線程就是多少用戶)不停的進(jìn)行訪問(訪問那些需要大量數(shù)據(jù)操作,就是需要大量CPU時間的頁面)。很多朋友問到,為什么要使用代理呢?因?yàn)榇砜梢杂行У仉[藏自己的身份,也可以繞開所有的防火墻,因?yàn)榛旧纤械姆阑饓Χ紩z測并發(fā)的TCP/IP連接數(shù)目,超過一定數(shù)目一定頻率就會被認(rèn)為是Connection-Flood。
使用代理攻擊還能很好的保持連接,我們這里發(fā)送了數(shù)據(jù),代理幫我們轉(zhuǎn)發(fā)給對方服務(wù)器,我們就可以馬上斷開,代理還會繼續(xù)保持著和對方連接(我知道的記錄是有人利用2000個代理產(chǎn)生了35萬并發(fā)連接)。
可能很多朋友還不能很好的理解,我來描述一下吧。我們假設(shè)服務(wù)器A對Search.asp的處理時間需要0.01S(多線程只是時間分割,對結(jié)論沒有影響),也就是說他一秒可以保證100個用戶的Search請求,服務(wù)器允許的最大連接時間為60s,那么我們使用CC模擬120個用戶并發(fā)連接,那么經(jīng)過1分鐘,服務(wù)器的被請求了7200次,處理了6000次,于是剩下了1200個并發(fā)連接沒有被處理。
有的朋友會說:丟連接!丟連接!問題是服務(wù)器是按先來后到的順序丟的,這1200個是在最后10秒的時候發(fā)起的,想丟?!經(jīng)過計(jì)算,服務(wù)器滿負(fù)開始丟連接的時候,應(yīng)該是有7200個并發(fā)連接存在隊(duì)列,然后服務(wù)器開始120個/秒的丟連接,我們發(fā)動的連接也是120個/秒,服務(wù)器永遠(yuǎn)有處理不完的連接,服務(wù)器的CPU 100%并長時間保持,然后丟連接的60秒服務(wù)器也判斷處理不過來了,新的連接也處理不了,這樣服務(wù)器達(dá)到了超級繁忙狀態(tài)。
當(dāng)然,CC也可以利用這里方法對FTP進(jìn)行攻擊,也可以實(shí)現(xiàn)TCP-FLOOD,這些都是經(jīng)過測試有效的。
如何判斷網(wǎng)站是否被CC攻擊?
1、如果網(wǎng)站是動態(tài)網(wǎng)站,比如asp/asp.net/php等,在被CC攻擊的情況下,IIS站點(diǎn)會出錯提示SERVER IS TOO BUSY,如果不是使用IIS來提供網(wǎng)站服務(wù),會發(fā)現(xiàn)提供網(wǎng)站服務(wù)的程序無緣無故自動崩潰,出錯。如果排除了網(wǎng)站程序的問題,而出現(xiàn)這類型的情況,基本上可以斷定是網(wǎng)站被CC攻擊了。
2、如果網(wǎng)站是靜態(tài)站點(diǎn),比如html頁面,在被CC攻擊的情況下,打開任務(wù)管理器,看網(wǎng)絡(luò)流量,會發(fā)現(xiàn)網(wǎng)絡(luò)應(yīng)用里數(shù)據(jù)的發(fā)送出現(xiàn)嚴(yán)重偏高的現(xiàn)象,在大量的CC攻擊下,甚至?xí)_(dá)到99%的網(wǎng)絡(luò)占用,當(dāng)然,在被CC攻擊的情況下網(wǎng)站是沒辦法正常訪問的,但是通過3389連接服務(wù)器還是可以正常連接。
3、如果是被小量CC攻擊,則站點(diǎn)還是可以間歇性訪問到,但是一些比較大的文件,比如圖片會出現(xiàn)顯示不出來的現(xiàn)象。如果是動態(tài)網(wǎng)站被小量CC攻擊,還會發(fā)現(xiàn)服務(wù)器的CPU占用率出現(xiàn)飆升的現(xiàn)象。這是最基本的CC攻擊癥狀。
CC攻擊怎么防御?
對于CC攻擊,其防御必須采用多種方法,而這些方法本質(zhì)上也是在提高服務(wù)器的并發(fā)能力
1、服務(wù)器垂直擴(kuò)展和水平擴(kuò)容
資金允許的情況下,這是最簡單的一種方法,本質(zhì)上講,這個方法并不是針對CC攻擊的,而是提升服務(wù)本身處理并發(fā)的能力,但確實(shí)提升了對CC攻擊的承載能力。垂直擴(kuò)展:是指增加每臺服務(wù)器的硬件能力,如升級CPU、增加內(nèi)存、升級SSD固態(tài)硬盤等。水平擴(kuò)容:是指通過增加提供服務(wù)的服務(wù)器來提升承載力。上述擴(kuò)展和擴(kuò)容可以在服務(wù)的各個層級進(jìn)行,包括:應(yīng)用服務(wù)器、數(shù)據(jù)庫服務(wù)器和緩存服務(wù)器等等。
2、數(shù)據(jù)緩存(內(nèi)存級別,不要用文件)
對于服務(wù)中具備高度共性,多用戶可重用,或單用戶多次可重用的數(shù)據(jù),一旦從數(shù)據(jù)庫中檢索出,或通過計(jì)算得出后,最好將其放在緩存中,后續(xù)請求均可直接從緩存中取得數(shù)據(jù),減輕數(shù)據(jù)庫的檢索壓力和應(yīng)用服務(wù)器的計(jì)算壓力,并且能夠快速返回結(jié)果并釋放進(jìn)程,從而也能緩解服務(wù)器的內(nèi)存壓力。要注意的是,緩存不要使用文件形式,可以使用redis、mem—cached等基于內(nèi)存的nosql緩存服務(wù),并且與應(yīng)用服務(wù)器分離,單獨(dú)部署在局域網(wǎng)內(nèi)。局域網(wǎng)內(nèi)的網(wǎng)絡(luò)IO肯定比起磁盤IO要高。為了不使局域網(wǎng)成為瓶頸,千兆網(wǎng)絡(luò)也是有必要的。
3、頁面靜態(tài)化
與數(shù)據(jù)緩存一樣,頁面數(shù)據(jù)本質(zhì)上也屬于數(shù)據(jù),常見的手段是生成靜態(tài)化的html頁面文件,利用客戶端瀏覽器的緩存功能或者服務(wù)端的緩存服務(wù),以及CDN節(jié)點(diǎn)的緩沖服務(wù),均可以降低服務(wù)器端的數(shù)據(jù)檢索和計(jì)算壓力,快速響應(yīng)結(jié)果并釋放連接進(jìn)程。
4、用戶級別的調(diào)用頻率限制
不管服務(wù)是有登陸態(tài)還是沒登陸態(tài),基于session等方式都可以為客戶端分配唯一的識別ID(后稱作SID),服務(wù)端可以將SID存到緩存中。當(dāng)客戶端請求服務(wù)時,如果沒有帶SID(cookie中或請求參數(shù)中等),則由服務(wù)端快速分配一個并返回。可以的話,本次請求可以不返回?cái)?shù)據(jù),或者將分配SID獨(dú)立出業(yè)務(wù)服務(wù)。當(dāng)客戶端請求時帶了合法SID(即SID能在服務(wù)端緩存中匹配到),便可以依據(jù)SID對客戶端進(jìn)行頻率限制。而對于SID非法的請求,則直接拒絕服務(wù)。相比根據(jù)IP進(jìn)行的頻率限制,根據(jù)SID的頻率限制更加精準(zhǔn)可控,可最大程度地避免誤殺情況。
5、IP限制
最后,IP限制依然可以結(jié)合上述規(guī)則一起使用,但是可以將其前置至)JCb層的防火墻或負(fù)載均衡器上去做,并且可以調(diào)大限制的閾值,防止惡意訪問穿透到應(yīng)用服務(wù)器上,造成應(yīng)用服務(wù)器壓力。
相關(guān)文章
什么是CC攻擊 判斷網(wǎng)站是否被CC攻擊并且如何防御CC攻擊
CC主要是用來攻擊頁面的,大家都有這樣的經(jīng)歷,就是在訪問論壇時,如果這個論壇比較大,訪問的人比較多,打開頁面的速度會比較慢,對不?!一般來說,訪問的人越多,論壇的頁2024-01-06Windows系統(tǒng)安全風(fēng)險-本地NTLM重放提權(quán)
入侵者主要通過Potato程序攻擊擁有SYSTEM權(quán)限的端口偽造網(wǎng)絡(luò)身份認(rèn)證過程,利用NTLM重放機(jī)制騙取SYSTEM身份令牌,最終取得系統(tǒng)權(quán)限,該安全風(fēng)險微軟并不認(rèn)為存在漏洞,所以2021-04-15- 這篇文章主要介紹了文件上傳漏洞全面滲透分析小結(jié),這里主要為大家分享一下防御方法,需要的朋友可以參考下2021-03-21
- 這篇文章主要介紹了sql手工注入語句&SQL手工注入大全,需要的朋友可以參考下2017-09-06
- 這篇文章主要介紹了詳解Filezilla server 提權(quán),需要的朋友可以參考下2017-05-13
FileZilla Server 2008 x64 提權(quán)與防御方法
這篇文章主要介紹了FileZilla Server 2008 x64 提權(quán)與防御方法,需要的朋友可以參考下2017-05-13https加密也被破解 HEIST攻擊從加密數(shù)據(jù)獲取明文
不久之前我們說過關(guān)于http和https的區(qū)別,對于加密的https,我們一直認(rèn)為它是相對安全的,可今天要講的是,一種繞過HTTPS加密得到明文信息的web攻擊方式,不知道這消息對你2016-08-10iPhone和Mac也會被黑 一條iMessage密碼可能就被盜了
一直以來蘋果系統(tǒng)的安全性都是比安卓要高的,但是再安全的系統(tǒng)也免不了漏洞,蘋果也一樣。最近爆出的新漏洞,只需要接收一條多媒體信息或者iMessage就會導(dǎo)致用戶信息泄露。2016-07-27- 國家正在修正關(guān)于黑客方面的法律法規(guī),有一條震驚黑客圈的“世紀(jì)佳緣”起訴白帽黑客事件,深深的傷害了廣大黑客們的心,加上扎克伯格和特拉維斯·卡蘭尼克賬號被盜,于是黑2016-07-11
如何逆向破解HawkEye keylogger鍵盤記錄器進(jìn)入攻擊者郵箱
面對惡意郵件攻擊,我們就只能默默忍受被他攻擊,連自我保護(hù)能力都沒有談什么反抗?讓人痛快的是,如今有了解決辦法,逆向破解鍵盤記錄器,進(jìn)入攻擊者郵箱2016-07-06