CC攻擊原理
HTTP Flood 俗稱CC攻擊(Challenge Collapsar)是DDoS(分布式拒絕服務)的一種,前身名為Fatboy攻擊,也是一種常見的網站攻擊方法。是針對 Web 服務在第七層協議發起的攻擊。
攻擊者相較其他三層和四層,并不需要控制大量的肉雞,取而代之的是通過端口掃描程序在互聯網上尋找匿名的 HTTP 代理或者 SOCKS 代理,攻擊者通過匿名代理對攻擊目標發起HTTP 請求。
匿名代理服務器在互聯網上廣泛存在。因此攻擊容易發起而且可以保持長期高強度的持續攻擊,同樣可以隱藏攻擊者來源避免被追查。
HTTP/CC 攻擊的特點:
- HTTP/CC 攻擊的 ip 都是真實的,分散的
- HTTP/CC 攻擊的數據包都是正常的數據包
- HTTP/CC 攻擊的請求都是有效請求,且無法拒絕
- HTTP/CC 攻擊的是網頁,服務器可以連接,ping 也沒問題,但是網頁就是訪問不了
- 如果 IIS 一開,服務器很快就死,容易丟包。
如果 Web 服務器支持 HTTPS,那么進行 HTTPS 洪水攻擊是更為有效的一種攻擊方式。原因有二:
其一,在進行 HTTPS 通信時,Web 服務器需要消耗更多的資源用來認證和加解密。
其二,目前一部分防護設備無法對 HTTPS 通信數據流進行處理,會導致攻擊流量繞過防護設備,直接對 Web 服務器造成攻擊。
簡易CC攻擊防御方法
1. 利用Session做訪問計數器:
利用Session針對每個IP做頁面訪問計數器或文件下載計數器,防止用戶對某個頁面頻繁刷新導致數據庫頻繁讀取或頻繁下載某個文件而產生大額流量。(文件下載不要直接使用下載地址,才能在服務端代碼中做CC攻擊的過濾處理)
2. 把網站做成靜態頁面:
大量事實證明,把網站盡可能做成靜態頁面,不僅能大大提高抗攻擊能力,而且還給駭客入侵帶來不少麻煩,至少到現在為止關于html的溢出還沒出現,看看吧!新浪、搜狐、網易等門戶網站主要都是靜態頁面,若你非需要動態腳本調用,那就把它弄到另外一臺單獨主機去,免的遭受攻擊時連累主服務器。
3. 增強操作系統的TCP/IP棧
Win2000和Win2003作為服務器操作系統,本身就具備一定的抵抗DDOS攻擊的能力,只是默認狀態下沒有開啟而已,若開啟的話可抵擋約10000個SYN攻擊包,若沒有開啟則僅能抵御數百個,具體怎么開啟,自己去看微軟的文章吧!
《強化 TCP/IP 堆棧安全》。也許有的人會問,那我用的是linux和FreeBSD怎么辦?很簡單,按照這篇文章去做吧!《SYN Cookies》。
4. 服務器前端加CDN中轉
如果資金充裕的話,可以購買高防的盾機,用于隱藏服務器真實IP,域名解析使用CDN的IP,所有解析的子域名都使用CDN的IP地址。此外,服務器上部署的其他域名也不能使用真實IP解析,全部都使用CDN來解析。
另外,防止服務器對外傳送信息泄漏IP地址,最常見的情況是,服務器不要使用發送郵件功能,因為郵件頭會泄漏服務器的IP地址。如果非要發送郵件,可以通過第三方代理(例如sendcloud)發送,這樣對外顯示的IP是代理的IP地址。
總之,只要服務器的真實IP不泄露,10G以下小流量DDOS的預防花不了多少錢,免費的CDN就可以應付得了。如果攻擊流量超過20G,那么免費的CDN可能就頂不住了,需要購買一個高防的盾機來應付了,而服務器的真實IP同樣需要隱藏
簡易CC攻擊防御策略
確定Web服務器正在或者曾經遭受CC攻擊,那如何進行有效的防范呢?
(1).取消域名綁定
一般cc攻擊都是針對網站的域名進行攻擊,比如我們的網站域名是“www.abc.com”,那么攻擊者就在攻擊工具中設定攻擊對象為該域名然后實施攻擊。對于這樣的攻擊我們的措施是取消這個域名的綁定,讓CC攻擊失去目標。
(2).域名欺騙解析
如果發現針對域名的CC攻擊,我們可以把被攻擊的域名解析到127.0.0.1這個地址上。我們知道127.0.0.1是本地回環IP是用來進行網絡測試的,如果把被攻擊的域名解析到這個IP上,就可以實現攻擊者自己攻擊自己的目的,這樣他再多的肉雞或者代理也會宕機,讓其自作自受。
(3).更改Web端口
一般情況下Web服務器通過80端口對外提供服務,因此攻擊者實施攻擊就以默認的80端口進行攻擊,所以,我們可以修改Web端口達到防CC攻擊的目的。運行IIS管理器,定位到相應站點,打開站點“屬性”面板,在“網站標識”下有個TCP端口默認為80,我們修改為其他的端口就可以了。
(4).屏蔽IP
我們通過命令或在查看日志發現了CC攻擊的源IP,就可以在防火墻中設置屏蔽該IP對Web站點的訪問,從而達到防范攻擊的目的。
聲明:我們尊重原創者版權,除確實無法確認作者外,均會注明作者和來源。轉載文章僅供個人學習研究,同時向原創作者表示感謝,若涉及版權問題,請及時聯系小編刪除!