當前位置:編程學習大全網 - 編程語言 - 什麽是CC攻擊,如何防止網站被CC攻擊?

什麽是CC攻擊,如何防止網站被CC攻擊?

什麽是CC攻擊?

攻擊者借助代理服務器生成指向受害主機的合法請求,實現DDOS和偽裝就叫:CC(Challenge Collapsar)。CC主要是用來攻擊頁面的。大家都有這樣的經歷,就是在訪問論壇時,如果這個論壇比較大,訪問的人比較多,打開頁面的速度會比較慢,訪問的人越多,論壇的頁面越多,數據庫壓力就越大,被訪問的頻率也越高,占用的系統資源也就相當可觀。

防禦方法

對於CC攻擊.其防禦必須采用多種方法,而這些方法本質上也是在提高服務器的並發能力。

1、服務器垂直擴展和水平擴容

資金允許的情況下,這是最簡單的壹種方法,本質上講,這個方法並不是針對CC攻擊的,而是提升服務本身處理並發的能力,但確實提升了對CC攻擊的承載能力。垂直擴展:是指增加每臺服務器的硬件能力,如升級CPU、增加內存、升級SSD固態硬盤等。水平擴容:是指通過增加提供服務的服務器來提升承載力。上述擴展和擴容可以在服務的各個層級進行,包括:應用服務器、數據庫服務器和緩存服務器等等。

2、數據緩存(內存級別,不要用文件)

對於服務中具備高度***性,多用戶可重用,或單用戶多次可重用的數據,壹旦從數據庫中檢索出,或通過計算得出後,最好將其放在緩存中,後續請求均可直接從緩存中取得數據,減輕數據庫的檢索壓力和應用服務器的計算壓力,並且能夠快速返回結果並釋放進程,從而也能緩解服務器的內存壓力。要註意的是,緩存不要使用文件形式,可以使用redis、mem—cached等基於內存的nosql緩存服務,並且與應用服務器分離,單獨部署在局域網內。局域網內的網絡IO肯定比起磁盤IO要高。為了不使局域網成為瓶頸,千兆網絡也是有必要的。

3、頁面靜態化

與數據緩存壹樣,頁面數據本質上也屬於數據,常見的手段是生成靜態化的html頁面文件,利用客戶端瀏覽器的緩存功能或者服務端的緩存服務,以及CDN節點的緩沖服務,均可以降低服務器端的數據檢索和計算壓力,快速響應結果並釋放連接進程。

4、用戶級別的調用頻率限制

不管服務是有登陸態還是沒登陸態,基於session等方式都可以為客戶端分配唯壹的識別ID(後稱作SID),服務端可以將SID存到緩存中。當客戶端請求服務時,如果沒有帶SID(cookie中或請求參數中等),則由服務端快速分配壹個並返回。可以的話,本次請求可以不返回數據,或者將分配SID獨立出業務服務。當客戶端請求時帶了合法SID(即SID能在服務端緩存中匹配到),便可以依據SID對客戶端進行頻率限制。而對於SID非法的請求,則直接拒絕服務。相比根據IP進行的頻率限制,根據SID的頻率限制更加精準可控,可最大程度地避免誤殺情況。

5、IP限制

最後,IP限制依然可以結合上述規則壹起使用,但是可以將其前置至)JCb層的防火墻或負載均衡器上去做,並且可以調大限制的閾值,防止惡意訪問穿透到應用服務器上,造成應用服務器壓力。

目前市面上已經很多網站防禦CC的產品,如高防CDN、高防IP、高防服務器等。相關鏈接

  • 上一篇:關於北京郵電大學的提前批
  • 下一篇:金屬激光切割機與數控等離子切割機相比有什麽優勢?
  • copyright 2024編程學習大全網