ddos是什么,如何防止ddos攻擊,ddos攻擊100g成本多少
分布式拒絕服務(wù)攻擊(DDoS)是目前黑客經(jīng)常采用而難以防范的攻擊手段。DoS的攻擊方式有很多種,最基本的DoS攻擊就是利用合理的服務(wù)請求來占用過多的服務(wù)資源,從而使合法用戶無法得到服務(wù)的響應(yīng)。 DDOS攻擊手段是在傳統(tǒng)的DOS攻擊基礎(chǔ)之上產(chǎn)生的一類攻擊方式。單一的DOS攻擊一般是采用一對一方式的,當(dāng)攻擊目標(biāo)CPU速度低、內(nèi)存小或者網(wǎng)絡(luò)帶寬小等等各項性能指標(biāo)不高它的效果是明顯的。
--ddos攻擊原理及防范方法
DDoS攻擊五花八門,防不勝防,當(dāng)你想建立一個防御系統(tǒng)對抗DDoS的時候,你需要掌握這些攻擊的變異形態(tài)。
DDOS攻擊最初被人們成為DOS(Denial of Service)攻擊,DOS攻擊的原理是:你有一臺服務(wù)器,我有一臺個人電腦,我就用我的個人電腦想你的服務(wù)器發(fā)送大量的垃圾信息,擁堵你的網(wǎng)絡(luò),并加大你處理數(shù)據(jù)的負(fù)擔(dān),降低服務(wù)器CPU和內(nèi)存的工作效率。
隨著科技的告訴發(fā)展,類似DOS這樣一對一的攻擊已經(jīng)起不了什么作用了,于是DDOS—分布式拒絕服務(wù)攻擊誕生了,其原理和DOS相同,不同之處在于DDOS攻擊是多對一進(jìn)行攻擊,甚至達(dá)到數(shù)萬臺個人電腦在同一時間一DOS攻擊的方式攻擊一臺服務(wù)器,最終導(dǎo)致被攻擊的服務(wù)器癱瘓。
DDOS攻擊的方式
DDOS攻擊是目前市面上最常用、最熱的攻擊方式,其攻擊的方法有很多,常用的有以下三種:
SYN/ACK Flood攻擊:這種攻擊方法是經(jīng)典最有效的DDOS攻擊方法,可通殺各種系統(tǒng)的網(wǎng)絡(luò)服務(wù),主要是通過向受害主機發(fā)送大量偽造源IP和源端口的SYN或ACK包,導(dǎo)致主機的緩存資源被耗盡或忙于發(fā)送回應(yīng)包而造成拒絕服務(wù),由于源都是偽造的故追蹤起來比較困難,缺點是實施起來有一定難度,需要高帶寬的僵尸主機支持。
TCP全連接攻擊:這種攻擊是為了繞過常規(guī)防火墻的檢查而設(shè)計的,一般情況下,常規(guī)防火墻大多具備過濾TearDrop、Land等DOS攻擊的能力,但對于正常的TCP連接是放過的,殊不知很多網(wǎng)絡(luò)服務(wù)程序(如:IIS、Apache等Web服務(wù)器)能接受的TCP連接數(shù)是有限的,一旦有大量的TCP連接,即便是正常的,也會導(dǎo)致網(wǎng)站訪問非常緩慢甚至無法訪問,TCP全連接攻擊就是通過許多僵尸主機不斷地與受害服務(wù)器建立大量的TCP連接,直到服務(wù)器的內(nèi)存等資源被耗盡而被拖跨,從而造成拒絕服務(wù),這種攻擊的特點是可繞過一般防火墻的防護(hù)而達(dá)到攻擊目的,缺點是需要找很多僵尸主機,并且由于僵尸主機的IP是暴露的,因此此種DDOS攻擊方式容易被追蹤。
刷Script腳本攻擊:這種攻擊主要是針對存在ASP、JSP、PHP、CGI等腳本程序,并調(diào)用MSSQLServer、MySQLServer、Oracle等數(shù)據(jù)庫的網(wǎng)站系統(tǒng)而設(shè)計的,特征是和服務(wù)器建立正常的TCP連接,并不斷的向腳本程序提交查詢、列表等大量耗費數(shù)據(jù)庫資源的調(diào)用,典型的以小博大的攻擊方法。
防范DDOS攻擊并不一定非要用防火墻。
針對目前各大傳奇私服站長受到盛大或者某些卑鄙小人的無恥行為,我特地整理了防止DDOS的攻擊資料!
絕對可以防止針對傳奇端口,或者WEB的大流量的DDOS承受大約40萬個包的攻擊量
設(shè)置保護(hù)80.7000.7100.7200等你的傳奇端口的。
然后按下面整理的注冊表修改或者添加下面的數(shù)值。
請注意,以下的安全設(shè)置均通過注冊表進(jìn)行修改,該設(shè)置的性能取決于服務(wù)器的配置,尤其是CPU的處理能力。如按照如下進(jìn)行安全設(shè)置,采用雙路至強2.4G的服務(wù)器配置,經(jīng)過測試,可承受大約1萬個包的攻擊量。
接下來你就可以高枕無憂了。
一部份DDOS我們可以通過DOS命令netstat -an|more或者網(wǎng)絡(luò)綜合分析軟件:sniff等查到相關(guān)攻擊手法、如攻擊某個主要端口、或者對方主要來自哪個端口、對方IP等。這樣我們可以利用w2k自帶的遠(yuǎn)程訪問與路由或者IP策略等本身自帶的工具解決掉這些攻擊。做為無法利用這些查到相關(guān)數(shù)據(jù)的我們也可以嘗試一下通過對服務(wù)器進(jìn)行安全設(shè)置來防范DDOS攻擊。
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters]
關(guān)閉無效網(wǎng)關(guān)的檢查。當(dāng)服務(wù)器設(shè)置了多個網(wǎng)關(guān),這樣在網(wǎng)絡(luò)不通暢的時候系統(tǒng)會嘗試連接
第二個網(wǎng)關(guān),通過關(guān)閉它可以優(yōu)化網(wǎng)絡(luò)。
"EnableDeadGWDetect"=dword:00000000
禁止響應(yīng)ICMP重定向報文。此類報文有可能用以攻擊,所以系統(tǒng)應(yīng)該拒絕接受ICMP重定向報文。
"EnableICMPRedirects"=dword:00000000
不允許釋放NETBIOS名。當(dāng)攻擊者發(fā)出查詢服務(wù)器NETBIOS名的請求時,可以使服務(wù)器禁止響應(yīng)。
注意系統(tǒng)必須安裝SP2以上
"NonameReleaseOnDemand"=dword:00000001
發(fā)送驗證保持活動數(shù)據(jù)包。該選項決定TCP間隔多少時間來確定當(dāng)前連接還處于連接狀態(tài),
不設(shè)該值,則系統(tǒng)每隔2小時對TCP是否有閑置連接進(jìn)行檢查,這里設(shè)置時間為5分鐘。
"KeepAliveTime"=dword:000493e0
禁止進(jìn)行最大包長度路徑檢測。該項值為1時,將自動檢測出可以傳輸?shù)臄?shù)據(jù)包的大小,
可以用來提高傳輸效率,如出現(xiàn)故障或安全起見,設(shè)項值為0,表示使用固定MTU值576bytes。
"EnablePMTUDiscovery"=dword:00000000
啟動syn攻擊保護(hù)。缺省項值為0,表示不開啟攻擊保護(hù),項值為1和2表示啟動syn攻擊保護(hù),設(shè)成2之后
安全級別更高,對何種狀況下認(rèn)為是攻擊,則需要根據(jù)下面的TcpMaxHalfOpen和TcpMaxHalfOpenRetried值
設(shè)定的條件來觸發(fā)啟動了。這里需要注意的是,NT4.0必須設(shè)為1,設(shè)為2后在某種特殊數(shù)據(jù)包下會導(dǎo)致系統(tǒng)重啟。
"SynAttackProtect"=dword:00000002
同時允許打開的半連接數(shù)量。所謂半連接,表示未完整建立的TCP會話,用netstat命令可以看到呈SYN_RCVD狀態(tài)
的就是。這里使用微軟建議值,服務(wù)器設(shè)為100,高級服務(wù)器設(shè)為500。建議可以設(shè)稍微小一點。
"TcpMaxHalfOpen"=dword:00000064
判斷是否存在攻擊的觸發(fā)點。這里使用微軟建議值,服務(wù)器為80,高級服務(wù)器為400。
"TcpMaxHalfOpenRetried"=dword:00000050
設(shè)置等待SYN-ACK時間。缺省項值為3,缺省這一過程消耗時間45秒。項值為2,消耗時間為21秒。
項值為1,消耗時間為9秒。最低可以設(shè)為0,表示不等待,消耗時間為3秒。這個值可以根據(jù)遭受攻擊規(guī)模修改。
微軟站點安全推薦為2。
"TcpMaxConnectResponseRetransmissions"=dword:00000001
設(shè)置TCP重傳單個數(shù)據(jù)段的次數(shù)。缺省項值為5,缺省這一過程消耗時間240秒。微軟站點安全推薦為3。
"TcpMaxDataRetransmissions"=dword:00000003
設(shè)置syn攻擊保護(hù)的臨界點。當(dāng)可用的backlog變?yōu)?時,此參數(shù)用于控制syn攻擊保護(hù)的開啟,微軟站點安全推薦為5。
"TCPMaxPortsExhausted"=dword:00000005
禁止IP源路由。缺省項值為1,表示不轉(zhuǎn)發(fā)源路由包,項值設(shè)為0,表示全部轉(zhuǎn)發(fā),設(shè)置為2,表示丟棄所有接受的
源路由包,微軟站點安全推薦為2。
"DisableIPSourceRouting"=dword:0000002
限制處于TIME_WAIT狀態(tài)的最長時間。缺省為240秒,最低為30秒,最高為300秒。建議設(shè)為30秒。
"TcpTimedWaitDelay"=dword:0000001e
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesNetBTParameters]
增大NetBT的連接塊增加幅度。缺省為3,范圍1-20,數(shù)值越大在連接越多時提升性能。每個連接塊消耗87個字節(jié)。
"BacklogIncrement"=dword:00000003
最大NetBT的連接快的數(shù)目。范圍1-40000,這里設(shè)置為1000,數(shù)值越大在連接越多時允許更多連接。
"MaxConnBackLog"=dword:000003e8
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesAfdParameters]
配置激活動態(tài)Backlog。對于網(wǎng)絡(luò)繁忙或者易遭受SYN攻擊的系統(tǒng),建議設(shè)置為1,表示允許動態(tài)Backlog。
"EnableDynamicBacklog"=dword:00000001
配置最小動態(tài)Backlog。默認(rèn)項值為0,表示動態(tài)Backlog分配的自由連接的最小數(shù)目。當(dāng)自由連接數(shù)目
低于此數(shù)目時,將自動的分配自由連接。默認(rèn)值為0,對于網(wǎng)絡(luò)繁忙或者易遭受SYN攻擊的系統(tǒng),建議設(shè)置為20。
"MinimumDynamicBacklog"=dword:00000014
最大動態(tài)Backlog。表示定義最大"準(zhǔn)"連接的數(shù)目,主要看內(nèi)存大小,理論每32M內(nèi)存最大可以
增加5000個,這里設(shè)為20000。
"MaximumDynamicBacklog"=dword:00002e20
每次增加的自由連接數(shù)據(jù)。默認(rèn)項值為5,表示定義每次增加的自由連接數(shù)目。對于網(wǎng)絡(luò)繁忙或者易遭受SYN攻擊
的系統(tǒng),建議設(shè)置為10。
"DynamicBacklogGrowthDelta"=dword:0000000a
以下部分需要根據(jù)實際情況手動修改
-------------------------------------------------------------------------------------------------
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters]
啟用網(wǎng)卡上的安全過濾
"EnableSecurityFilters"=dword:00000001
同時打開的TCP連接數(shù),這里可以根據(jù)情況進(jìn)行控制。
"TcpNumConnections"=
該參數(shù)控制 TCP 報頭表的大小限制。在有大量 RAM 的機器上,增加該設(shè)置可以提高 SYN 攻擊期間的響應(yīng)性能。
"TcpMaxSendFree"=
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParametersInterfaces{自己的網(wǎng)卡接口}]
禁止路由發(fā)現(xiàn)功能。ICMP路由通告報文可以被用來增加路由表紀(jì)錄,可以導(dǎo)致攻擊,所以禁止路由發(fā)現(xiàn)。
"PerformRouterDiscovery "=dword:00000000asp?id=7745" width=1 border=0>
話說用阿里云服務(wù)器已經(jīng)一年多,這一年多的使用體驗來說,阿里云服務(wù)器至少對于我來說只能是很一般的,阿里云的服務(wù)器防御實在是特別一般以至于感覺很垃圾。
我的博客其實流量不大,不過由于我設(shè)計的一些主題使用較多,使得我網(wǎng)站的外鏈極多,這也導(dǎo)致了網(wǎng)站垃圾評論洶涌。所以有利也有弊啊。以前用虛擬主機的時候,人家就跟我說網(wǎng)站負(fù)載挺高的,當(dāng)時也沒什么意識。
使用阿里云以來也讓我學(xué)到了不少東西,也對垃圾評論做了很多過濾,看文章WordPress垃圾評論防御記,以至于我不使用WordPress自帶的防垃圾評論的插件Akismet也能保證幾乎沒有垃圾評論,同時優(yōu)化了主題數(shù)據(jù)庫請求,有利于網(wǎng)站的打開速度。
那之后的還算長的一段時間,網(wǎng)站至少在訪問上也是挺好的,當(dāng)然這個在2014年12月24日終結(jié)。
24日開始阿里云通知服務(wù)器被DDoS攻擊,服務(wù)器進(jìn)行訪問清洗,訪問清洗完直接就黑洞了。當(dāng)然不知道DDoS的可以自行搜索下,阿里云服務(wù)器僅支持每秒請求流量5G,超過就黑洞,黑洞就是服務(wù)器禁止任何訪問,2.5小時解封。然后服務(wù)器就進(jìn)入了流量清洗,黑洞,解封,再清洗。。。無限循環(huán)了。然后網(wǎng)站就訪問不了,服務(wù)器連不上,只能乘著重啟服務(wù)器成功那一刻將網(wǎng)站blog目錄改名,讓其訪問變?yōu)?04,減少服務(wù)器php請求來讓服務(wù)器喘口氣。
只能限制攻擊的IP了,不過這種基本都是使用的肉雞攻擊的,DDoS攻擊這種全球性的難題還是沒什么辦法的。
雖然不喜歡看網(wǎng)站日志,但是這個時候還是得硬著頭皮看起來。根據(jù)這些天粗糙得觀察也得要一些結(jié)論。
1、有國外的固定幾個IP不停的
POST /blog/xmlrpc.php
POST /blog/wp-cron.php
GET /blog/wp-login.php*
利用xmlrpc.php提供的接口嘗試猜解用戶的密碼,可以繞過wordpress對暴力破解的限制。這個想來是想暴力破解博客的密碼,這基本都是荷蘭的IP,提取IP然后deny其IP禁止訪問。
2、183.56.161.* 不間斷的GET網(wǎng)站的各個頁面,導(dǎo)致php請求異常的多,直接屏蔽這個IP段的訪問
3、這段時間內(nèi)蒙古訪問的流量竟然是最多的,這很不正常,通過對日志IP進(jìn)行提取,發(fā)現(xiàn)內(nèi)蒙古的IP各有不同,這個比較難防了,我都是一段時間提取一次異常IP,然后過濾掉。
期間也嘗試了使用360網(wǎng)站衛(wèi)士的dns,如果一個正常的沒有受到攻擊的網(wǎng)站,使用這個還是挺不錯的,他有緩存機制,能夠加快網(wǎng)站的訪問,同時堅持服務(wù)器的請求。
他上面也有網(wǎng)站放DDos攻擊,不過基本沒什么用,或者說我沒有看到他的作用。因為使用了他的緩存機制,服務(wù)器做的一些防IP過濾就沒有用了,因為當(dāng)被限制的IP訪問的時候,會先訪問360的CND節(jié)點,CDN節(jié)點然后請求源服務(wù)器,這就導(dǎo)致了,源服務(wù)器認(rèn)為訪問的IP來自cdn節(jié)點而不是被限制的IP,導(dǎo)致無法禁止訪問,同樣是的服務(wù)器的CPU跑滿,網(wǎng)站宕機。
目前還在跟他做著攻防,服務(wù)器還是不算穩(wěn)定,時不時的訪問緩慢,或者短暫宕機。
攻擊好歹也半個月了,也該停停了,攻擊我等小站也沒多大意思,何必呢。
ddos打的是ip,要想自己服務(wù)器安全,ip地址隱藏起來只是第一步,第二步才是關(guān)鍵,那就是隱藏后對外的服務(wù)器要能抗得住攻擊?,F(xiàn)在免費的能抗的及其有限,站長需要做的事找一家性價比高的云防廠商,一般云防護(hù)廠商都是基于CDN原理做的替身防護(hù),所以自帶的還有CDN加速的效果,節(jié)省了站長購買服務(wù)器時昂貴帶寬的成本。大企業(yè)愿意多花錢買心安的就選了bat,中小企業(yè)注重性價比的可以考慮上海云盾,關(guān)鍵是他家有試用,試用后再決定是否繼續(xù)使用。