合肥市高新區(qū)長(zhǎng)江西路與科學(xué)大道交口5F創(chuàng)業(yè)園A座309
136 5560 1775

不用防火墻 如何自動(dòng)對(duì)付CC攻擊問題

發(fā)表日期:2011-11-20 瀏覽次數(shù):2394次

CC攻擊原理 


CC主要是用來攻擊頁面的.大家都有這樣的經(jīng)歷,就是在訪問論壇時(shí),如果這個(gè)論壇比較大,訪問的人比較多,打開頁面的速度會(huì)比較慢,一般來說,訪問的人越多,論壇的頁面越多,數(shù)據(jù)庫就越大,被訪問的頻率也越高,占用的系統(tǒng)資源也就相當(dāng)可觀,現(xiàn)在知道為什么很多空間服務(wù)商都說大家不要上傳論壇,聊天室等東西了吧. 


一個(gè)靜態(tài)頁面不需要服務(wù)器多少資源,甚至可以說直接從內(nèi)存中讀出來發(fā)給你就可以了,但是論壇就不一樣了,我看一個(gè)帖子,系統(tǒng)需要到數(shù)據(jù)庫中判斷我是否有讀讀帖子的權(quán)限,如果有,就讀出帖子里面的內(nèi)容,顯示出來——這里至少訪問了2次數(shù)據(jù)庫,如果數(shù)據(jù)庫的體積有200MB大小,系統(tǒng)很可能就要在這200MB大小的數(shù)據(jù)空間搜索一遍,這需要多少的CPU資源和時(shí)間?如果我是查找一個(gè)關(guān)鍵字,那么時(shí)間更加可觀,因?yàn)榍懊娴乃阉骺梢韵薅ㄔ谝粋€(gè)很小的范圍內(nèi),比如用戶權(quán)限只查用戶表,帖子內(nèi)容只查帖子表,而且查到就可以馬上停止查詢,而搜索肯定會(huì)對(duì)所有的數(shù)據(jù)進(jìn)行一次判斷,消耗的時(shí)間是相當(dāng)?shù)拇? 

CC就是充分利用了這個(gè)特點(diǎn),模擬多個(gè)用戶(多少線程就是多少用戶)不停的進(jìn)行訪問(訪問那些需要大量數(shù)據(jù)操作,就是需要大量CPU時(shí)間的頁面). 


攻擊現(xiàn)象:

服務(wù)器的流量瞬間可達(dá)到幾十M以上,網(wǎng)站打不開。重啟iis會(huì)發(fā)現(xiàn)流量馬上就降下來。查看IIS日志會(huì)發(fā)現(xiàn)很多不同的IP都反復(fù)訪問一個(gè)相同的文件。查看C:WINDOWSsystem32LogFilesHTTPERR 會(huì)發(fā)現(xiàn)很多出錯(cuò)的IIS日志,如下:

  2007-08-22 06:05:28 61.140.127.206 61905 61.139.129.56 80 HTTP/1.1 GET /list.asp?

  ProdId=0961 503 30 ConnLimit pool21
  2007-08-22 06:05:28 221.8.137.99 3916 61.139.129.56 80 HTTP/1.1 GET /list.asp?ProdId=0961 

  503 30 ConnLimit pool21
  2007-08-22 06:05:28 220.187.143.183 4059 61.139.129.56 80 HTTP/1.1 GET /list.asp?

  ProdId=0961 503 30 ConnLimit pool21
  2007-08-22 06:05:28 218.18.42.231 1791 61.139.129.56 80 HTTP/1.1 GET /list.asp?

  ProdId=0961 503 30 ConnLimit pool21
  2007-08-22 06:05:28 125.109.129.32 3030 61.139.129.56 80 HTTP/1.1 GET /list.asp?

  ProdId=0961 503 30 ConnLimit pool21
  2007-08-22 06:05:28 58.216.2.232 1224 61.139.129.56 80 HTTP/1.1 GET /list.asp?ProdId=0961 

  503 30 ConnLimit pool21
  ...

可以看出很多不同的IP都在訪問list.asp這個(gè)文件。以上現(xiàn)象就是CC攻擊的特征。根據(jù)發(fā)動(dòng)CC攻擊所使用的肉機(jī)數(shù)量,小的攻擊可以導(dǎo)致網(wǎng)站很慢或者不穩(wěn)定,大的攻擊可以讓網(wǎng)站一直都無法打開。

因這類攻擊,是模擬正常用戶不斷請(qǐng)求一個(gè)網(wǎng)頁。所以一般的防火墻很難防御。

下面啟邁合肥網(wǎng)絡(luò)公司根據(jù)實(shí)際工作經(jīng)驗(yàn),講一下不用防火墻 如何自動(dòng)對(duì)付CC攻擊問題

因?yàn)?STRONG>CC攻擊都是使用的肉機(jī)或代理來訪問我們的服務(wù)器的,它跟synflood攻擊不一樣。synfoold一直是不斷變化的虛假IP,而CC攻擊的IP都是真實(shí)的IP而基本上不變化的,只要我們用安全策略把這些IP全部封掉就可以了。

看過有網(wǎng)友介紹的方法,不過是手工一條一條地封,而攻擊IP一般都是數(shù)千個(gè)不同的IP。用手工封IP的辦法太麻煩。下面啟邁網(wǎng)絡(luò)公司告訴大家用程序來實(shí)現(xiàn)自動(dòng)封這些IP!

程序主要是讀取這個(gè)網(wǎng)站的iis日志,分析出其中的IP地址,用安全策略自動(dòng)封閉。VBS代碼如下:

  ’代碼開始

  Set fileobj=CreateObject("Scripting.FileSystemObject")
  logfilepath="E:w3logW3SVC237ex070512old.log" ’注意指定受攻擊網(wǎng)站的日志路徑。
  ’如果是虛擬主機(jī),要查是哪個(gè)網(wǎng)站受攻擊,可以查看:C:WINDOWSsystem32LogFilesHTTPERR ,

  根據(jù)錯(cuò)誤日志很容易分析出來。
  writelog "netsh ipsec static add policy name=XBLUE"
  writelog "netsh ipsec static add filterlist name=denyip"

  overip=""
  f_name=logfilepath
  ’指定日志文件

  ’程序功能:把logfiles中的IP提取成ipsec需要的過濾格式,導(dǎo)入ipsec中過濾。適合某個(gè)網(wǎng)站受大量CC攻擊的情況。

  set fileobj88=CreateObject("Scripting.FileSystemObject")
  Set MYFILE=fileobj88.OpenTextFile(f_name,1,false)
  contentover=MYFILE.ReadAll()
  contentip=lcase(contentover)
  MYFILE.close
  set fileobj88=nothing
  on error resume next
  myline=split(contentip,chr(13))
  for i=0 to ubound(myline)-1 

  myline2=split(myline(i)," ")
  newip=myline2(6)
  ’指定分離的標(biāo)識(shí)字符串!
  if instr(overip,newip)=0 then ’去除重復(fù)的IP。
  overip=overip&newip
  dsafasf=split(newip,".")
  if ubound(dsafasf)=3 then
  writelog "netsh ipsec static add filter filterlist=denyip srcaddr="&newip&" dstaddr=Me 

  dstport=80 protocol=TCP"
  end if
  else
  wscript.echo newip &" is exits!"
  end if
  next
  writelog "netsh ipsec static add filteraction name=denyact action=block"
  writelog "netsh ipsec static add rule name=kill3389 policy=XBLUE filterlist=denyip 

  filteraction=denyact"
  writelog "netsh ipsec static set policy name=XBLUE assign=y"


  Sub writelog(errmes) ’導(dǎo)出IPsec的策略文件為一個(gè)bat文件。
  ipfilename="denyerrorip.bat"
  Set logfile=fileobj.opentextfile(ipfilename,8,true)
  logfile.writeline errmes
  logfile.close
  Set logfile=nothing
  End Sub

  ’代碼結(jié)束

把上述代碼存為一個(gè).vbs文件,設(shè)置好其中日志的路徑。雙擊運(yùn)行即可,運(yùn)行完畢后生成一個(gè)denyerrorip.bat文件,這個(gè)是ipsec所需要的策略文件,直接雙擊運(yùn)行即可。 運(yùn)行完畢即可解決CC攻擊問題。


將文章分享到:

版權(quán)所有:?jiǎn)⑦~科技-合肥網(wǎng)站建設(shè) 皖I(lǐng)CP備19009304號(hào)-1 皖公網(wǎng)安備 34010402702162號(hào)

網(wǎng)站建設(shè),網(wǎng)站設(shè)計(jì)公司啟邁科技,為眾多企業(yè)提供網(wǎng)站建設(shè),網(wǎng)站制作,響應(yīng)式網(wǎng)站設(shè)計(jì),手機(jī)網(wǎng)站建設(shè),微網(wǎng)站,模板建站,企業(yè)郵箱等一站式互聯(lián)網(wǎng)解決方案和建站服務(wù)10年。