-
互聯網安全法,互聯網凈網行動
-
”凈網2020”落實好維護網絡安全責任
-
關于端午節放假通知-宇眾網絡
-
宇眾網絡春節放假通知
-
關于公司收款銀行賬戶變更通知函-宇眾網絡
-
關于網上有人冒充我公司名義進行詐騙的公告。
-
關于端午節放假通知,節日放假,但是我們業務不“放假”-宇眾網絡
-
工信部進一步加強未備案網站管理工作的通知-宇眾網絡
-
關于東莞市宇眾網絡科技有限公司香港數據中心(香港機房)路由優化通知
-
宇眾網絡慶祝五·一勞動節快樂
-
東莞東城機房網絡升級通知
-
臨近過年,互聯網IDC貴圈也有被騙的,請認準宇眾網絡公司官方聯系方式
-
我司已獲得ISP/ICP/IDC三證資格,更好的為客戶服務
-
關于浙江金華高防機房網絡線路切割通知
-
工信部近日下發關于進一步規范域名備案工作的通知
行業資訊
- 首頁
- 新聞中心
- 行業資訊
宇眾網絡CC攻擊知識詳解,CC攻擊的原理以及癥狀和解決方式!
攻擊者借助代理服務器生成指向受害主機的合法請求,實現DDOS和偽裝就叫:CC(ChallengeCollapsar)。
CC主要是用來攻擊頁面的。大家都有這樣的經歷,就是在訪問論壇時,如果這個論壇比較大,訪問的人比較多,打開頁面的速度會比較慢,訪問的人越多,論壇的頁面越多,數據庫壓力就越大,被訪問的頻率也越高,占用的系統資源也就相當可觀。
一個靜態頁面不需要服務器多少資源,甚至可以說直接從內存中讀出來發給你就可以了,但是論壇就不一樣了,我看一個帖子,系統需要到數據庫中判斷我是否有讀帖子的權限,如果有,就讀出帖子里面的內容,顯示出來——這里至少訪問了2次數據庫,如果數據庫的數據容量有200MB大小,系統很可能就要在這200MB大小的數據空間搜索一遍,這需要多少的CPU資源和時間?如果我是查找一個關鍵字,那么時間更加可觀,因為前面的搜索可以限定在一個很小的范圍內,比如用戶權限只查用戶表,帖子內容只查帖子表,而且查到就可以馬上停止查詢,而搜索肯定會對所有的數據進行一次判斷,消耗的時間是相當的大。
CC就是充分利用了這個特點,模擬多個用戶(多少線程就是多少用戶)不停的進行訪問(訪問那些需要大量數據操作,就是需要大量CPU時間的頁面).這一點用一個一般的性能測試軟件就可以做到大量模擬用戶并發。
★如有服務器租用相關業務可咨詢宇眾臨風,QQ:2850293179 Tel:15999932452 服務器租用價格列表
服務器處理
假設服務器A對Search.asp的處理時間需要0.01S(多線程只是時間分割,對結論沒有影響),也就是說他一秒可以保證100個用戶的Search請求,服務器允許的最大連接時間為60s,那么使用CC模擬120個用戶并發連接,那么經過 1分鐘,服務器的被請求了7200次,處理了6000次,于是剩下了1200個并發連接沒有被處理.有的朋友會說:丟連接!丟連接!問題是服務器是按先來后到的順序丟的,這1200個是在最后10秒的時候發起的,想丟?!還早,經過計算,服務器滿負開始丟連接的時候,應該是有7200個并發連接存在隊列, 然后服務器開始120個/秒的丟連接,發動的連接也是120個/秒,服務器永遠有處理不完的連接,服務器的CPU 100%并長時間保持,然后丟連接的60秒服務器也判斷處理不過來了,新的連接也處理不了,這樣服務器達到了超級繁忙狀態.
假設服務器處理Search只用了0.01S,也就是10毫秒(這個速度你可以去各個有開放時間顯示的論壇看看),使用的線程也只有120,很多服務器的丟連接時間遠比60S長,使用線程遠比120多,可以想象可怕了吧,而且客戶機只要發送了斷開,連接的保持是代理做的,而且當服務器收到SQL請求,肯定會進入隊列,不論連接是否已經斷開,而且服務器是并發的,不是順序執行,這樣使得更多的請求進入內存請求,對服務器負擔更大.
CC攻擊的原理
CC攻擊的原理就是攻擊者控制某些主機不停地發大量數據包給對方服務器造成服務器資源耗盡,一直到宕機崩潰。CC主要是用來攻擊頁面的,每個人都有這樣的體驗:當一個網頁訪問的人數特別多的時候,打開網頁就慢了,CC就是模擬多個用戶(多少線程就是多少用戶)不停地進行訪問那些需要大量數據操作(就是需要大量CPU時間)的頁面,造成服務器資源的浪費,CPU長時間處于100%,永遠都有處理不完的連接直至就網絡擁塞,正常的訪問被中止。
防CC攻擊
CC攻擊可以歸為DDoS攻擊的一種。他們之間的原理都是一樣的,即發送大量的請求數據來導致服務器拒絕服務,是一種連接攻擊。CC攻擊又可分為代理CC攻擊,和肉雞CC攻擊。代理CC攻擊是黑客借助代理服務器生成指向受害主機的合法網頁請求,實現DDoS,和偽裝就叫:cc(Challenge Collapsar)。而肉雞CC攻擊是黑客使用CC攻擊軟件,控制大量肉雞,發動攻擊,相比來后者比前者更難防御。因為肉雞可以模擬正常用戶訪問網站的請求。偽造成合法數據包。
一個靜態頁面不需要服務器多少資源,甚至可以說直接從內存中讀出來發給你就可以了,但是論壇之類的動態網站就不一樣了,我看一個帖子,系統需要到數據庫中判斷我是否有讀帖子的權限,如果有,就讀出帖子里面的內容,顯示出來——這里至少訪問了2次數據庫,如果數據庫的體積有200MB大小,系統很可能就要在這200MB大小的數據空間搜索一遍,這需要多少的CPU資源和時間?如果我是查找一個關鍵字,那么時間更加可觀,因為前面的搜索可以限定在一個很小的范圍內,比如用戶權限只查用戶表,帖子內容只查帖子表,而且查到就可以馬上停止查詢,而搜索肯定會對所有的數據進行一次判斷,消耗的時間是相當的大。
CC攻擊就是充分利用了這個特點,模擬多個用戶(多少線程就是多少用戶)不停的進行訪問(訪問那些需要大量數據操作,就是需要大量CPU時間的頁面,比如asp/php/jsp/cgi)。很多朋友問到,為什么要使用代理呢?因為代理可以有效地隱藏自己的身份,也可以繞開所有的防火墻,因為基本上所有的防火墻都會檢測并發的TCP/IP連接數目,超過一定數目一定頻率就會被認為是Connection-Flood。當然也可以使用肉雞發動CC攻擊。肉雞的CC攻擊效果更可觀。致使服務器CPU%100,甚至死機的現象。
使用代理攻擊還能很好的保持連接,這里發送了數據,代理轉發給對方服務器,就可以馬上斷開,代理還會繼續保持著和對方連接(我知道的記錄是有人利用2000個代理產生了35萬并發連接)。
當然,CC也可以利用這里方法對FTP、游戲端口、聊天房間等進行攻擊,也可以實現TCP-FLOOD,這些都是經過測試有效的。
防御CC攻擊可以通過多種方法,禁止網站代理訪問,盡量將網站做成靜態頁面,限制連接數量,修改最大超時時間等。
攻擊癥狀
CC攻擊有一定的隱蔽性,那如何確定服務器正在遭受或者曾經遭受CC攻擊呢?可以通過以下三個方法來確定。
命令行法
一般遭受CC攻擊時,Web服務器會出現80端口對外關閉的現象, 因為這個端口已經被大量的垃圾數據堵塞了正常的連接被中止了。可以通過在命令行下輸入命令netstat -an來查看, “SYN_RECEIVED”是TCP連接狀態標志,意思是“正在處于連接的初始同步狀態 ”,表明無法建立握手應答處于等待狀態。這就是攻擊的特征,一般情況下這樣的記錄一般都會有很多條,表示來自不同的代理IP的攻擊。
批處理法
上述方法需要手工輸入命令且如果Web服務器IP連接太多看起來比較費勁,可以建立一個批處理文件,通過該腳本代碼確定是否存在CC攻擊。打開記事本鍵入如下代碼保存為CC.bat:
@echo off
time /t >>log.log
netstat -n -p tcp |find ":80">>Log.log
notepad log.log
exit
上面的腳本的含義是篩選出當前所有的到80端口的連接。當感覺服務器異常時就可以雙擊運行該批處理文件,然后在打開的log.log文件中查看所有的連接。如果同一個IP有比較多的到服務器的連接,那就基本可以確定該IP正在對服務器進行CC攻擊
查看系統日志
Web日志一般在C:\WINDOWS\system32\LogFiles\HTTPERR目錄下,該目錄下用類似httperr1.log的日志文件,這個文件就是記錄Web訪問錯誤的記錄。管理員可以依據日志時間屬性選擇相應的日志打開進行分析是否Web被CC攻擊了。
默認情況下,Web日志記錄的項并不是很多,可以通過ⅡS進行設置,讓Web日志記錄更多的項以便進行安全分析。其操作步驟是:“開始→管理工具”打開“Internet信息服務器”,展開左側的項定位到到相應的Web站點,然后右鍵點擊選擇“屬性”打開站點屬性窗口,在“網站”選項卡下點擊“屬性”按鈕,在“日志記錄屬性”窗口的“高級”選項卡下可以勾選相應的“擴展屬性”,以便讓Web日志進行記錄。比如其中的“發送的字節數”、“接收的字節數”、“所用時間”這三項默認是沒有選中的,但在記錄判斷CC攻擊中是非常有用的,可以勾選。另外,如果你對安全的要求比較高,可以在“常規”選項卡下對“新日志計劃”進行設置,讓其“每小時”或者“每一天”進行記錄。為了便于日后進行分析時好確定時間可以勾選“文件命名和創建使用當地時間”。
★如有服務器租用相關業務可咨詢宇眾臨風,QQ:2850293179 Tel:15999932452 服務器租用價格列表
解決方式
取消域名綁定
一般CC攻擊都是針對網站的域名進行攻擊,比如網站域名是“xxx”,那么攻擊者就在攻擊工具中設定攻擊對象為該域名然后實施攻擊。
對于這樣的攻擊措施是在ⅡS上取消這個域名的綁定,讓CC攻擊失去目標。具體操作步驟是:打開“ⅡS管理器”定位到具體站點右鍵“屬性”打開該站點的屬性面板,點擊IP地址右側的“高級”按鈕,選擇該域名項進行編輯,將“主機頭值”刪除或者改為其它的值(域名)。
實例模擬測試,取消域名綁定后Web服務器的CPU馬上恢復正常狀態,通過IP進行訪問連接一切正常。但是不足之處也很明顯,取消或者更改域名對于別人的訪問帶來了不便,另外,對于針對IP的CC攻擊它是無效的,就算更換域名攻擊者發現之后,他也會對新域名實施攻擊。
更改Web端口
一般情況下Web服務器通過80端口對外提供服務,因此攻擊者實施攻擊就以默認的80端口進行攻擊,所以,我們可以修改Web端口達到防CC攻擊的目的。運行ⅡS管理器,定位到相應站點,打開站點“屬性”面板,在“網站標識”下有個TCP端口默認為80,我們修改為其他的端口就可以了。
ⅡS屏蔽IP
我們通過命令或在查看日志發現了CC攻擊的源IP,就可以在ⅡS中設置屏蔽該IP對Web站點的訪問,從而達到防范ⅡS攻擊的目的。在相應站點的“屬性”面板中,點擊“目錄安全性”選項卡,點擊“IP地址和域名現在”下的“編輯”按鈕打開設置對話框。在此窗口中我們可以設置“授權訪問”也就是“白名單”,也可以設置“拒絕訪問”即“黑名單”。比如我們可以將攻擊者的IP添加到“拒絕訪問”列表中,就屏蔽了該IP對于Web的訪問。
IPSec封鎖
IPSec是優秀的系統防火墻,在排除其他還有別的類型的DDOS攻擊時,針對CC攻擊可以用設置IP策略來對付攻擊。以219.128.*.43這個IP為例子,筆者實際操作對該IP的訪問封鎖。
第一步:“開始→管理工具”,打開“本地安全設置”,右鍵點擊“IP安全策略,在本地機器”選擇“創建IP安全策略”,然后點擊“下一步”,輸入策略“名稱”和“描述”。然后默認一路“下一步”創建了一個名為“封CC攻擊”的IPSec策略。
第二步:右鍵點擊“IP安全策略,在本地機器”選擇“管理IP篩選器表和篩選器操作”,在打開的窗口中點“添加”,在“IP 篩選器列表”窗口添入同第一步的名稱和描述信息。取消“使用添加向導”的勾選,然后點擊“添加”。在“IP 篩選器 屬性”窗口的“地址”選項下設置“源地址”為“192.168.1.6”,目標地址為“我的IP地址”,取消對“鏡像”的勾選;點擊“協議”選項卡,設置“協議類型”為“TCP”,設置“協議端口”為“從任意端口”到“此端口80”最后確定退出。
第三步:在“新規則 屬性”窗口中點選剛才創建的“封CC攻擊”規則,點擊“篩選器操作”選項卡下的“添加”,點選“安全措施”下的“阻止”,在“常規”選項卡下為該篩選器命名為“阻止CC攻擊”然后確定退出。
第四步:點選剛才創建的“阻止CC攻擊”篩選器,一路“確定”退出IP策略編輯器,可以看到在組策略窗口的中創建成功一個名為“封CC攻擊”的策略,然后右鍵點擊該策略選擇“指派”。這樣就實現了對該IP的封鎖。
防火墻
除了利用上述方法外,還可以通過第三方的防火墻進行防范,打開防護墻防火墻可以了,筆者以天鷹ddos防火墻為例進行演示。安裝好天鷹ddos防火墻即可開啟防護,傻瓜式配置界面,默認參數即可防護網站,誤封較少,智能識別蜘蛛。
★如有服務器租用相關業務可咨詢宇眾臨風,QQ:2850293179 Tel:15999932452 服務器租用價格列表
總結
總體說來CC攻擊屬于技術技巧強的攻擊,防護手段足以解決諸如此類的攻擊,然而帶給我們巨大的挑戰的是巨型流量的攻擊,在帶寬資源緊缺的情況下任何的防護措施都會消耗很大的成本,我們期待不久的云概念被炒作的沸沸揚揚,至于能否起到實實在在的作用就不可而知了。希望上述文檔給您幫助。