一、CC攻擊的原理:
CC攻擊的原理就是攻擊者控制某些主機不停地發大量數据包給對方服務器造成服務器資源耗盡,一直到宕機崩潰。 CC主要是用來攻擊頁面的,每個人都有這樣的體驗:當一個網頁訪問的人數特別多的時候,打開網頁就慢了,CC就是類比多個用戶(多少線程就是多少用戶)不停地進行訪問那些需要大量數據操作(就是需要大量CPU時間)的頁面,造成服務器資源的浪費,CPU長時間處於100%, 永遠都有處理不完的連接直至就網絡擁塞,正常的訪問被中止。
二、CC攻擊的種類:
CC攻擊的種類有三種,直接攻擊,代理攻擊,僵屍網路攻擊。
直接攻擊主要針對有重要缺陷的WEB應用程序,一般說來是程式寫的有問題的時候才會出現這種情況,比較少見。
僵屍網路攻擊有點類似於DDOS攻擊了,從WEB應用程序層面上已經無法防禦。
代理攻擊:CC攻擊者一般會操作一批代理伺服器,比方說100個代理,然後每個代理同時發出10個請求,這樣WEB服務器同時收到1000個併發請求的,並且在發出請求後,立刻斷掉與代理的連接,避免代理返回的數據將本身的頻寬堵死,而不能發動再次請求, 這時WEB服務器會將響應這些請求的行程進行隊列,資料庫服務器也同樣如此,這樣一來,正常請求將會被排在很後被處理,就象本來你去食堂吃飯時,一般只有不到十個人在排隊,今天前面卻插了一千個人,那麼輪到你的機會就很小很小了, 這時就出現頁面打開極其緩慢或者白屏。
三、攻擊症狀
CC攻擊有一定的隱蔽性,那如何確定服務器正在遭受或者曾經遭受CC攻擊呢? 我們可以通過以下三個方法來確定。
(1).命令列法
一般遭受CC攻擊時,Web服務器會出現80埠對外關閉的現象,因為這個埠已經被大量的垃圾數據堵塞了正常的連接被中止了。 我們可以通過在命令列下輸入命令netstat-an來查看,如果看到類似如下有大量顯示雷同的連接記錄基本就可以被CC攻擊了
TCP 192.168.1.3:80 192.168.1.6:2205 SYN_RECEIVED 4
TCP 192.168.1.3:80 192.168.1.6: 2205 SYN_RECEIVED 4
TCP 192.168.1.3:80 192.168.1.6: 2205 SYN_RECEIVED 4
TCP 192.168.1.3:80 192.168.1.6: 2205 SYN_RECEIVED 4
TCP 192.168.1.3:80 192.168.1.6: 2205 SYN_RECEIVED 4
其中“192.168.1.6”就是被用來代理攻擊的主機的IP,“SYN_RECEIVED”是TCP連接狀態標誌,意思是“正在處於連接的初始同步狀態”,表明無法建立握手應答處於等待狀態。 這就是攻擊的特徵,一般情况下這樣的記錄一般都會有很多條,表示來自不同的代理IP的攻擊。
(2).批次處理法
上述方法需要手工輸入命令且如果Web服務器IP連接太多看起來比較費勁,我們可以建立一個批次檔,通過該腳本程式碼確定是否存在CC攻擊。
打開記事本鍵入如下程式碼保存為CC.bat:
@echooff
time /t >>log.log
netstat -n -p tcp |find ":80">>Log.log
notepad log.log
exit
上面的腳本的含義是篩選出當前所有的到80埠的連接。 當我們感覺服務器异常是就可以按兩下運行該批次檔,然後在打開的log.log檔案中查看所有的連接。 如果同一個IP有比較多的到服務器的連接,那就基本可以確定該IP正在對服務器進行CC攻擊。
(3).查看系統日誌
上面的兩種方法有個弊端,只可以查看當前的CC攻擊,對於確定Web服務器之前是否遭受CC攻擊就無能為力了,此時我們可以通過Web日誌來查,因為Web日誌忠實地記錄了所有IP訪問Web資源的情况。 通過查看日誌我們可以Web服務器之前是否遭受CC攻擊,並確定攻擊者的IP然後採取進一步的措施。
Web日誌一般在C:\WINDOWS\system32\LogFiles\HTTPERR目錄下,該目錄下用類似httperr1.log的日誌檔,這個檔就是記錄Web訪問錯誤的記錄。 管理員可以依據日誌時間内容選擇相應的日誌打開進行分析是否Web被CC攻擊了。 默認情况下,Web日誌記錄的項並不是很多,我們可以通過IIS進行設定,讓Web日誌記錄更多的項以便進行安全分析。 其操作步驟是:
“開始→管理工具”打開“Internet資訊服務器”,展開左側的項定位到到相應的Web網站,然後右鍵點擊選擇“内容”打開網站内容視窗,在“網站”選項卡下點擊“内容”按鈕,在“日誌記錄屬性”視窗的“高級”選項卡下可以勾選相應的“擴展内容”,以便讓Web日誌進行記錄。 比如其中的“發送的位元組數”、“接收的位元組數”、“所用時間”這三項默認是沒有選中的,但在記錄判斷CC攻擊中是非常有用的,可以勾選。 另外,如果你對安全的要求比較高,可以在“常規”選項卡下對“新日誌計畫”進行設定,讓其“每小時”或者“每一天”進行記錄。 為了便於日後進行分析時好確定時間可以勾選“檔案命名和創建使用當地時間”。
四、CC攻擊防禦策略
確定Web服務器正在或者曾經遭受CC攻擊,那如何進行有效的防範呢?
(1).取消功能變數名稱綁定
一般cc攻擊都是針對網站的功能變數名稱進行攻擊,比如我們的網站功能變數名稱是“https://honestidc.com”,那麼攻擊者就在攻擊工具中設定攻擊對象為該功能變數名稱然後實施攻擊。
對於這樣的攻擊我們的措施是在IIS上取消這個功能變數名稱的綁定,讓CC攻擊失去目標。 具體操作步驟是:打開“IIS管理器”定位到具體網站右鍵“内容”打開該網站的内容面板,點擊IP地址右側的“高級”按鈕,選擇該功能變數名稱項進行編輯,將“主機頭值”删除或者改為其它的值(域名)。
經過類比測試,取消功能變數名稱綁定後Web服務器的CPU馬上恢復正常狀態,通過IP進行訪問連接一切正常。 但是不足之處也很明顯,取消或者更改功能變數名稱對於別人的訪問帶來了不變,另外,對於針對IP的CC攻擊它是無效的,就算更換功能變數名稱攻擊者發現之後,他也會對新功能變數名稱實施攻擊。
(2).功能變數名稱欺騙解析
如果發現針對功能變數名稱的CC攻擊,我們可以把被攻擊的功能變數名稱解析到127.0.0.1這個地址上。 我們知道127.0.0.1是本地回環IP是用來進行網絡測試的,如果把被攻擊的功能變數名稱解析到這個IP上,就可以實現攻擊者自己攻擊自己的目的,這樣他再多的肉雞或者代理也會宕機,讓其自作自受。
另外,當我們的Web服務器遭受CC攻擊時把被攻擊的功能變數名稱解析到國家有權威的政府網站或者是網警的網站,讓其網警來收拾他們。
現在一般的Web網站都是利用類似“新網”這樣的服務商提供的動態功能變數名稱解析服務,大家可以登入進去之後進行設定。
(3).更改Web埠
一般情况下Web服務器通過80埠對外提供服務,囙此攻擊者實施攻擊就以默認的80埠進行攻擊,所以,我們可以修改Web埠達到防CC攻擊的目的。 運行IIS管理器,定位到相應網站,打開網站“内容”面板,在“網站標識”下有個TCP埠默認為80,我們修改為其他的埠就可以了。
(4).IIS遮罩IP
我們通過命令或在查看日誌發現了CC攻擊的源IP,就可以在IIS中設定遮罩該IP對Web網站的訪問,從而達到防範IIS攻擊的目的。 在相應網站的“内容”面板中,點擊“目錄安全性”選項卡,點擊“IP地址和功能變數名稱現在”下的“編輯”按鈕打開設定對話方塊。 在此視窗中我們可以設定“授權訪問”也就是“白名單”,也可以設定“拒絕訪問”即“黑名單”。 比如我們可以將攻擊者的IP添加到“拒絕訪問”清單中,就遮罩了該IP對於Web的訪問。
五、CC攻擊的防範手段
防止CC攻擊,不一定非要用高防服務器。 比如,用防CC攻擊軟件就可以有效的防止CC攻擊。
推薦一些CC的防範手段:
1、優化程式碼
盡可能使用緩存來存儲重複的査詢內容,减少重複的資料查詢資源開銷。 减少複雜框架的調用,减少不必要的數據請求和處理邏輯。 程式執行中,及時釋放資源,比如及時關閉mysql連接,及時關閉memcache連接等,减少空連接消耗。
2、限制手段
對一些負載較高的程式新增前置條件判斷,可行的判斷方法如下:
必須具有網站簽發的session資訊才可以使用(可簡單封锁程式發起的集中請求); 必須具有正確的referer(可有效防止嵌入式程式碼的攻擊); 禁止一些用戶端類型的請求(比如一些典型的不良蜘蛛特徵); 同一session多少秒內只能執行一次。
3、完善日誌
盡可能完整保留訪問日誌。 日誌分析程式,能够儘快判斷出异常訪問,比如單一ip密集訪問; 比如特定url同比請求激增。
六、針對CC攻擊的商業解決方案
很多的網站管理者是等到網站遭到攻擊了,受到損失了,才去尋求解决的方案,在將來的互聯網飛速發展的時代,一定要有安全隱患意識,不要等到損失大了,再去想辦法來補救,這樣為時已晚。 然而當網站受到攻擊時,大多數人想到的是-----快點找硬防,基本上都步了一個誤區,就是認為網站或者服務器被攻擊,購買硬體防火牆,什麼事都萬事大吉了,實際上這樣的想法是極端錯誤的。 多年的統計資料表明,想徹底解CC攻擊是幾乎不可能的,就好比治療感冒一樣,我們可以治療,也可以預防,但卻無法根治,但我們若採取積極有效的防禦方法,則可在很大程度上降低或減緩生病的機率,防治DDOS攻擊也是如此。
實際上比較理想解決方案應該是“軟件+硬體”的解決方案。 此方案對於資金較為充足的企業網站來說,這個方案適合他們; 硬體在DDOS防護上有優勢,軟件CC防護上有優勢; 相對於一些對於ICP內容網站、論壇社區BBS、電子商務eBusiness、音樂網站Music、電影網站File等網站服務器越來越普及,但由於種種原因往往會遭受競爭對手或打擊報復者的惡意DDOS攻擊,持續的攻擊會導致大量用戶流失,嚴重的甚至因人氣全失而被迫關閉服務器, 為了最大程度的保護運營者的利益,HONGKONG HONEST NETWORK LIMITED結合多年抗DDOS的實踐經驗給出了最少的安全投資可獲得最大安全回報的抗DDOS解決方案。
感謝您對honestidc的認可與信奈
HONGKONG HONEST NETWORK LIMITED
TOP