分散式拒絕服務

分散式拒絕服務

分散式拒絕服務(DDoS:Distributed Denial of Service)攻擊指藉助於客戶/伺服器技術,將多個計算機聯合起來作為攻擊平台,對一個或多個目標發動DDoS攻擊,從而成倍地提高拒絕服務攻擊的威力。通常,攻擊者使用一個偷竊帳號將DDoS主控程式安裝在一個計算機上,在一個設定的時間主控程式將與大量代理程式通訊,代理程式已經被安裝在網路上的許多計算機上。代理程式收到指令時就發動攻擊。利用客戶/伺服器技術,主控程式能在幾秒鐘內激活成百上千次代理程式的運行。

基本信息

定義

首先從一個比方來深入理解什麼是DDOS。
一群惡霸試圖讓對面那家有著競爭關係的商鋪無法正常營業,他們會採取什麼手段呢?(只為舉例,切勿模仿)惡霸們扮作普通客戶一直擁擠在對手的商鋪,賴著不走,真正的購物者卻無法進入;或者總是和營業員有一搭沒一搭的東扯西扯,讓工作人員不能正常服務客戶;也可以為商鋪的經營者提供虛假信息,商鋪的上上下下忙成一團之後卻發現都是一場空,最終跑了真正的大客戶,損失慘重。此外惡霸們完成這些壞事有時憑單幹難以完成,需要叫上很多人一起。嗯,網路安全領域中DoS和DDoS攻擊就遵循著這些思路。
在信息安全的三要素——“保密性”、“完整性”和“可用性”中,DoS(DenialofService),即拒絕服務攻擊,針對的目標正是“可用性”。該攻擊方式利用目標系統網路服務功能缺陷或者直接消耗其系統資源,使得該目標系統無法提供正常的服務。
DdoS的攻擊方式有很多種,最基本的DoS攻擊就是利用合理的服務請求來占用過多的服務資源,從而使合法用戶無法得到服務的回響。單一的DoS攻擊一般是採用一對一方式的,當攻擊目標CPU速度低、記憶體小或者網路頻寬小等等各項指標不高的性能,它的效果是明顯的。隨著計算機與網路技術的發展,計算機的處理能力迅速增長,記憶體大大增加,同時也出現了千兆級別的網路,這使得DoS攻擊的困難程度加大了-目標對惡意攻擊包的“消化能力”加強了不少。這時候分散式的拒絕服務攻擊手段(DDoS)就應運而生了。DDoS就是利用更多的傀儡機(肉雞)來發起進攻,以比從前更大的規模來進攻受害者。

攻擊方式

攻擊體系結構攻擊體系結構
DDoS攻擊通過大量合法的請求占用大量網路資源,以達到癱瘓網路的目的。這種攻擊方式可分為以下幾種:
通過使網路過載來干擾甚至阻斷正常的網路通訊;
通過向伺服器提交大量請求,使伺服器超負荷;
阻斷某一用戶訪問伺服器;
阻斷某服務與特定系統或個人的通訊。

IPSpoofing
IP欺騙攻擊是一種黑客通過向服務端傳送虛假的包以欺騙伺服器的做法。具體說,就是將包中的源IP位址設定為不存在或不合法的值。伺服器一旦接受到該包便會返回接受請求包,但實際上這個包永遠返回不到來源處的計算機。這種做法使伺服器必需開啟自己的監聽連線埠不斷等待,也就浪費了系統各方面的資源。

LANDattack

這種攻擊方式與SYNfloods類似,不過在LANDattack攻擊包中的原地址和目標地址都是攻擊對象的IP。這種攻擊會導致被攻擊的機器死循環,最終耗盡資源而當機。

ICMPfloods
ICMPfloods是通過向未良好設定的路由器傳送廣播信息占用系統資源的做法。

Application
與前面敘說的攻擊方式不同,Applicationlevelfloods主要是針對套用軟體層的,也就是高於OSI的。它同樣是以大量消耗系統資源為目的,通過向IIS這樣的網路服務程式提出無節制的資源申請來迫害正常的網路服務。

攻擊現象

分散式拒絕服務攻擊採取的攻擊手段就是分散式的,在攻擊的模式改變了傳統的點對點的攻擊模式,使攻擊方式出現了沒有規律的情況,而且在進行攻擊的時候,通常使用的也是常見的協定和服務,這樣只是從協定和服務的類型上是很難對攻擊進行區分的。在進行攻擊的時候,攻擊數據包都是經過偽裝的,在源IP位址上也是進行偽造的,這樣就很難對攻擊進行地址的確定,在查找方面也是很難的。這樣就導致了分散式拒絕服務攻擊在檢驗方法上是很難做到的。

攻擊特性

按照TCP/IP協定的層次可將DDOS攻擊分為基於ARP的攻擊、基於ICMP的攻擊、基於IP的攻擊、基於UDP的攻擊、基於TCP的攻擊和基於套用層的攻擊。

基於ARP

ARP是無連線的協定,當收到攻擊者傳送來的ARP應答時。它將接收ARP應答包中所提供的信息。更新流程ARP快取。因此,含有錯誤源地址信息的ARP請求和含有錯誤目標地址信息的ARP應答均會使上層套用忙於處理這種異常而無法回響外來請求,使得目標主機喪失網路通信能力。產生拒絕服務,如ARP重定向攻擊。

基於ICMP

攻擊者向一個子網的廣播地址傳送多個ICMPEcho請求數據包。並將源地址偽裝成想要攻擊的目標主機的地址。這樣,該子網上的所有主機均對此ICMPEcho請求包作出答覆,向被攻擊的目標主機傳送數據包,使該主機受到攻擊,導致網路阻塞。

基於IP

TCP/IP中的IP數據包在網路傳遞時,數據包可以分成更小的片段。到達目的地後再進行合併重裝。在實現分段重新組裝的進程中存在漏洞,缺乏必要的檢查。利用IP報文分片後重組的重疊現象攻擊伺服器,進而引起伺服器核心崩潰。如Teardrop是基於IP的攻擊。

基於套用層

套用層包括SMTP,HTTP,DNS等各種套用協定。其中SMTP定義了如何在兩個主機間傳輸郵件的過程,基於標準SMTP的郵件伺服器,在客戶端請求傳送郵件時,是不對其身份進行驗證的。另外,許多郵件伺服器都允許郵件中繼。攻擊者利用郵件伺服器持續不斷地向攻擊目標傳送垃圾郵件,大量侵占伺服器資源。

流程

DDoS並不象入侵一台主機那樣簡單。了解這些原理之後,你便會更加明白入侵者的意圖,從此便掌握了預防的技巧。一般來說,黑客進行DDoS攻擊時會經過這樣的步驟:

蒐集資料

下列情況是黑客非常關心的情報:被攻擊目標主機數目、地址情況目標主機的配置、性能目標的寬頻。
對於DDoS攻擊者來說,攻擊網際網路上的某個站點,有一個重點就是確定到底有多少台主機在支持這個站點,一個大的網站可能有很多台主機利用負載均衡技術提供同一個網站的www服務。
如果要進行DDoS攻擊的話,應該攻擊哪一個地址呢?使這台機器癱瘓,但其他的主機還是能向外提供www服務,所以想讓別人訪問不到網站的話,要所有這些IP位址的機器都癱掉才行。在實際的套用中,一個IP位址往往還代表著數台機器:網站維護者使用了四層或七層交換機來做負載均衡,把對一個IP位址的訪問以特定的算法分配到下屬的每個主機上去。這時對於DDoS攻擊者來說情況就更複雜了,他面對的任務可能是讓幾十台主機的服務都不正常。
所以說事先蒐集情報對DDoS攻擊者來說是非常重要的,這關係到使用多少台傀儡機才能達到效果的問題。簡單地考慮一下,在相同的條件下,攻擊同一站點的2台主機需要2台傀儡機的話,攻擊5台主機可能就需要5台以上的傀儡機。有人說做攻擊的傀儡機越多越好,不管你有多少台主機我都用儘量多的傀儡機來攻就是了,反正傀儡機超過了時候效果更好。
但在實際過程中,有很多黑客並不進行情報的蒐集而直接進行DDoS的攻擊,這時候攻擊的盲目性就很大了,效果如何也要靠運氣。其實做黑客也象網管員一樣,是不能偷懶的。一件事做得好與壞,態度最重要,水平還在其次。

占領

黑客最感興趣的是有下列情況的主機:網路狀態好的主機,性能好的主機,安全管理水平差的主機
這一部分實際上是使用了另一大類的攻擊手段:利用形攻擊。這是和DDoS並列的攻擊方式。簡單地說,就是占領和控制被攻擊的主機。取得最高的管理許可權,或者至少得到一個有許可權完成DDoS攻擊任務的帳號。對於一個DDoS攻擊者來說,準備好一定數量的傀儡機是一個必要的條件,下面說一下他是如何攻擊並占領它們。
首先,黑客做的工作一般是掃描,隨機地或者是有針對性地利用掃描器去發現網際網路上那些有漏洞的機器,像程式的溢出漏洞、cgi、Unicode、ftp、資料庫漏洞…(簡直舉不勝舉啊),都是黑客希望看到的掃描結果。隨後就是嘗試入侵了,具體的手段就不在這裡多說了,感興趣的話網上有很多關於這些內容的文章。
總之黑客占領了一台傀儡機了!然後他做什麼呢?除了上面說過留後門擦腳印這些基本工作之外,他會把DDoS攻擊用的程式上載過去,一般是利用ftp。在攻擊機上,會有一個DDoS的發包程式,黑客就是利用它來向受害目標傳送惡意攻擊包的。

實際攻擊

經過前2個階段的精心準備之後,黑客就開始瞄準目標準備發射了。前面的準備做得好的話,實際攻擊過程反而是比較簡單的。就象圖示里的那樣,黑客登錄到做為控制台的傀儡機,向所有的攻擊機發出命令:“預備~ ,瞄準~,開火!”。這時候埋伏在攻擊機中的DDoS攻擊程式就會回響控制台的命令,一起向受害主機以高速度傳送大量的數據包,導致它當機或是無法回響正常的請求。黑客一般會以遠遠超出受害方處理能力的速度進行攻擊,他們不會“憐香惜玉”。
老道的攻擊者一邊攻擊,還會用各種手段來監視攻擊的效果,在需要的時候進行一些調整。簡單些就是開個視窗不斷地ping目標主機,在能接到回應的時候就再加大一些流量或是再命令更多的傀儡機來加入攻擊。

防範

主機設定

所有的主機平台都有抵禦DoS的設定,總結一下,基本的有幾種:
關閉不必要的服務
限制同時打開的Syn半連線數目
縮短Syn半連線的timeout時間
及時更新系統補丁

網路設定

網路設備可以從防火牆與路由器上考慮。這兩個設備是到外界的接口設備,在進行防DDoS設定的同時,要注意一下這是以多大的效率犧牲為代價的,對你來說是否值得。
1、防火牆
禁止對主機的非開放服務的訪問限制同時打開的SYN最大連線數,限制特定IP位址的訪問,啟用防火牆的防DDoS的屬性,嚴格限制對外開放的伺服器的向外訪問,第五項主要是防止自己的伺服器被當做工具去害人。
2、路由器
設定SYN數據包流量速率升級版本過低的ISO為路由器建立logserver

Windows系統防禦

攻擊正常議棧攻擊正常議棧
對於windows系統來說,可以從以下幾個方面來進行防禦:
一、啟用SYN攻擊保護
啟用SYN攻擊保護的命名值位於此註冊表項的下面:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services。
值名稱:SynAttackProtect
建議值:2
有效值:0–2
說明:使TCP調整SYN-ACK的重傳。配置此值後,在遇到SYN攻擊時,對連線逾時的回響將更快速。在超過TcpMaxHalfOpen或TcpMaxHalfOpenRetried的值後,將觸發SYN攻擊保護。

設定SYN保護閾值

下列值確定觸發SYN保護的閾值。這一部分中的所有註冊表項和值都位於註冊表項HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services的下面。這些註冊表項和值是:
值名稱:TcpMaxPortsExhausted

建議值:5

有效值:0–65535

說明:指定觸發SYN洪水攻擊保護所必須超過的TCP連線請求數的閾值。

值名稱:TcpMaxHalfOpen

建議的數值數據:500

有效值:100–65535

說明:在啟用SynAttackProtect後,該值指定處於SYN_RCVD狀態的TCP連線數的閾值。

在超過SynAttackProtect後,將觸發SYN洪水攻擊保護。

值名稱:TcpMaxHalfOpenRetried

建議的數值數據:400

有效值:80–65535

說明:在啟用SynAttackProtect後,該值指定處於至少已傳送一次重傳的SYN_RCVD狀態中的TCP連線數的閾值。

在超過SynAttackProtect後,將觸發SYN洪水攻擊保護。

設定其他保護

這一部分中的所有註冊表項和值都位於註冊表項HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services的下面。這些註冊表項和值是:
值名稱:TcpMaxConnectResponseRetransmissions 

建議的數值數據:2

有效值:0–255

說明:控制在回響一次SYN請求之後、在取消重傳嘗試之前SYN-ACK的重傳次數。

值名稱:TcpMaxDataRetransmissions

建議的數值數據:2

有效值:0–65535

說明:指定在終止連線之前TC重傳一個數據段(不是連線請求段)的次數。

值名稱:EnablePMTUDiscovery

建議的數值數據:0

有效值:0,1

說明:將該值設定為1(默認值)可強制TCP查找在通向遠程主機的路徑上的最大傳輸單元或最大數據包大小。攻擊者可能將數據包強制分段,這會使堆疊不堪重負。對於不是來自本地子網的主機的連線,將該值指定為0可將最大傳輸單元強制設為576位元組。

值名稱:KeepAliveTime

建議的數值數據:300000

有效值:80–4294967295

說明:指定TCP嘗試通過傳送持續存活的數據包來驗證空閒連線是否仍然未被觸動的頻率。
值名稱:NoNameReleaseOnDemand

建議的數值數據:1

有效值:0,1

說明:指定計算機在收到名稱發布請求時是否發布其NetBIOS名稱。
二、抵禦ICMP攻擊
這一部分的命名值都位於註冊表項HKLM\System\CurrentControlSet\Services\AFD\Parameters的下面
值:EnableICMPRedirect

建議的數值數據:0

有效值:0(禁用),1(啟用)

說明:通過將此註冊表值修改為0,能夠在收到ICMP重定向數據包時禁止創建高成本的主機路由。

三、抵禦SNMP攻擊
這一部分的命名值位於註冊表項HKLM\System\CurrentControlSet\Services\Tcpip\Parameters的下面。
值:EnableDeadGWDetect

建議的數值數據:0

有效值:0(禁用),1(啟用)

說明:禁止攻擊者強制切換到備用網關

四、AFD.SYS保護
下面的註冊表項指定核心模式驅動程式Afd.sys的參數。Afd.sys用於支持Windows Sockets應用程式。這一部分的所有註冊表項和值都位於註冊表項
HKLM\System\CurrentControlSet\Services\AFD\Parameters的下面。這些註冊表項和值是:
值EnableDynamicBacklog

建議的數值數據:1

有效值:0(禁用),1(啟用)

說明:指定AFD.SYS功能,以有效處理大量的SYN_RCVD連線。

有關詳細信息,請參閱“InternetServerUnavailableBecauseofMaliciousSYNAttacks”,

值名稱:MinimumDynamicBacklog

建議的數值數據:20

有效值:0–4294967295

說明:指定在偵聽的終結點上所允許的最小空閒連線數。如果空閒連線的數目低於該值,執行緒將被排隊,以創建更多的空閒連線

值名稱:MaximumDynamicBacklog

建議的數值數據:20000

有效值:0–4294967295

說明:指定空閒連線以及處於SYN_RCVD狀態的連線的最大總數。

值名稱:DynamicBacklogGrowthDelta

建議的數值數據:10

有效值:0–4294967295

默認情況下是否出現:否

說明:指定在需要增加連線時將要創建的空閒連線數。
其他保護
這一部分的所有註冊表項和值都位於註冊表項HKLM\System\CurrentControlSet\Services\Tcpip\Parameters的下面。
保護禁止的網路細節

網路地址轉換(NAT)用於將網路與傳入連線禁止開來。攻擊者可能規避此禁止,以便使用IP源路由來確定網路拓撲。
值:DisableIPSourceRouting

建議的數值數據:1

有效值:0(轉發所有數據包),1(不轉發源路由數據包),2(丟棄所有傳入的源路由數據包)。

說明:禁用IP源路由,後者允許傳送者確認數據報在網路中應採用的路由。
避免接受數據包片段

處理數據包片段可以是高成本的。雖然拒絕服務很少來自外圍網路內,但此設定能防止處理數據包片段。
值:EnableFragmentChecking

建議的數值數據:1

有效值:0(禁用),1(啟用)

說明:禁止IP堆疊接受數據包片段。
切勿轉發去往多台主機的數據包

多播數據包可能被多台主機回響,從而導致回響淹沒網路。
值:EnableMulticastForwarding

建議的數值數據:0

有效範圍:0(false),1(true) 

說明:路由服務使用此參數來控制是否轉發IP多播。此參數由路由和遠程訪問服務創建。
只有防火牆可以在網路間轉發數據包

多主機伺服器切勿在它所連線的網路之間轉發數據包。明顯的例外是防火牆。
值:IPEnableRouter

建議的數值數據:0

有效範圍:0(false),1(true) 

說明:將此參數設定為1(true)會使系統在它所連線的網路之間路由IP數據包。
禁止網路拓撲結構細節

可以使用ICMP數據包請求主機的子網掩碼。只泄漏此信息是無害的;但是,可以利用多台主機的回響來了解內部網路的情況。
值:EnableAddrMaskReply

建議的數值數據:0

有效範圍:0(false),1(true)

說明:此參數控制計算機是否回響ICMP地址禁止請求。

缺陷
在測試這些值的變化時,請參照在產品中所期望的網路流量進行測試。這些設定會修改被認為正常並偏離了測試默認值的項目的閾值。一些閾值可能由於範圍太小而無法在客戶端的連線速度劇烈變化時可靠地支持客戶端。

攻擊原理

拒絕服務攻擊即攻擊者想辦法讓目標機器停止提供服務或資源訪問。這些資源包括磁碟空間、記憶體、進程甚至網路頻寬,從而阻止正常用戶的訪問。其實對網路頻寬進行的消耗性攻擊只是拒絕服務攻擊的一小部分,只要能夠對目標造成麻煩,使某些服務被暫停甚至主機當機,都屬於拒絕服務攻擊。拒絕服務攻擊問題也一直得不到合理的解決,究其原因是因為這是由於網路協定本身的安全缺陷造成的,從而拒絕服務攻擊也成為了攻擊者的終極手法。
攻擊者進行拒絕服務攻擊,實際上讓伺服器實現兩種效果:一是迫使伺服器的緩衝區滿,不接收新的請求;二是使用IP欺騙,迫使伺服器把合法用戶的連線復位,影響合法用戶的連線。
DDOS(分散式拒絕服務):凡是能導致合法用戶不能夠訪問正常網路服務的行為都算是拒絕服務攻擊。也就是說拒絕服務攻擊的目的非常明確,就是要阻止合法用戶對正常網路資源的訪問,從而達成攻擊者不可告人的目的。 
雖然同樣是拒絕服務攻擊,但是DDOS和DOS還是有所不同,DDOS的攻擊策略側重於通過很多“殭屍主機”(被攻擊者入侵過或可間接利用的主機)向受害主機傳送大量看似合法的網路包,從而造成網路阻塞或伺服器資源耗盡而導致拒絕服務,分散式拒絕服務攻擊一旦被實施,攻擊網路包就會猶如洪水般湧向受害主機,從而把合法用戶的網路包淹沒,導致合法用戶無法正常訪問伺服器的網路資源,因此,拒絕服務攻擊又被稱之為“洪水式攻擊”,常見的DDOS攻擊手段有SYNFlood、ACKFlood、UDPFlood、ICMPFlood、TCPFlood、Connections Flood、ScriptFlood、ProxyFlood等;而DOS則側重於通過對主機特定漏洞的利用攻擊導致網路棧失效、系統崩潰、
主機當機而無法提供正常的網路服務功能,從而造成拒絕服務,常見的DOS攻擊手段有TearDrop、Land、Jolt、IGMP Nuker、Boink、Smurf、Bonk、OOB等。就這兩種拒絕服務攻擊而言,危害較大的主要是DDOS攻擊,原因是很難防範,至於DOS攻擊,通過給主機伺服器打補丁或安裝防火牆軟體就可以很好地防範DDOS的表現形式主要有兩種,一種為流量攻擊,主要是針對網路頻寬的攻擊,即大量攻擊包導致網路頻寬被阻塞,合法網路包被虛假的攻擊包淹沒而無法到達主機;另一種為資源耗盡攻擊,主要是針對伺服器主機的攻擊,即通過大量攻擊包導致主機的記憶體被耗盡或CPU被核心及應用程式占完,造成的無法提供網路服務。

如何判斷網站是否遭受了流量攻擊可通過Ping命令來測試,若發現Ping逾時或丟包嚴重(假定平時是正常的),則可能遭受了流量攻擊,此時若發現和你的主機接在同一交換機上的伺服器也訪問不了,基本可以確定是遭受了流量攻擊。當然,這樣測試的前提是你到伺服器主機之間的ICMP協定沒有被路由器和防火牆等設備禁止,否則可採取T

elnet主機伺服器的網路服務連線埠來測試,效果是一樣的。不過有一點可以肯定,假如平時Ping你的主機伺服器和接在同一交換機上的主機伺服器都是正常的,突然都Ping
不通了或者是嚴重丟包,那么假如可以排除網路故障因素的話則肯定是遭受了流量攻擊,再一個流量攻擊的典型現象是,一旦遭受流量攻擊,會發現用遠程終端連線
網站伺服器會失敗。相對於流量攻擊而言,資源耗盡攻擊要容易判斷一些,假如平時Ping網站主機和訪問網站都是正常的,發現突然網站訪問非常緩慢或無法訪問了,而Ping還可以Ping通,則很可能遭受了資源耗盡攻擊,此時若在伺服器上用Nistat-na命令觀察到有大量的SYN_RECEIVED、TIME_WAIT、FIN_WAIT_1等狀態存在,而ESTBLISHED很少,則可判定肯定是遭受了資源耗盡攻擊。還有一種屬於資源耗盡攻擊的現象是,Ping自己的網站主機Ping不通或者是丟包嚴重,而Ping與自己的主機在同一交換機上的伺服器則正常,造成這種原因是網站主機遭受攻擊後導致系統核心或某些應用程式CPU利用率達到100%無法回應Ping命令,其實頻寬還是有的,否則就Ping不通接在同一交換機上的主機了。

攻擊手段

當前主要有三種流行的DDOS:
1、SYN/ACKFlood攻擊:

這種攻擊方法是經典最有效的DDOS方法,可通殺各種系統的網路服務,主要是通過向受害主機傳送大量偽造源IP和源連線埠的SYN或ACK包,導致主機的快取資源被耗盡或忙於傳送回應包而造成拒絕服務,由於源都是偽造的故追蹤起來比較困難,缺點是實施起來有一定難度,需要高頻寬的殭屍主機支持。少量的這種攻擊會導致主機伺服器無法訪問,但卻可以Ping的通,在伺服器上用Netstat-na命令會觀察到存在大量的SYN_RECEIVED狀態,大量的這種攻擊會導致Ping失敗、TCP/IP棧失效,並會出現系統凝固現象,即不回響鍵盤和滑鼠。普通防火牆大多無法抵禦此種攻擊。

2、TCP全連線攻擊:

這種攻擊是為了繞過常規防火牆的檢查而設計的,一般情況下,常規防火牆大多具備過濾TearDrop、Land等DOS攻擊的能力,但對於正常的TCP連線是放過的,殊不知很多網路服務程式(如:IIS、Apache等Web伺服器)能接受的TCP連線數是有限的,一旦有大量的TCP連線,即便是正常的,也會導致網站訪問非常緩慢甚至無法訪問,TCP全連線攻擊就是通過許多殭屍主機不斷地與受害伺服器建立大量的TCP連線,直到伺服器的記憶體等資源被耗盡而被拖跨,從而造成拒絕服務,這種攻擊的特點是可繞過一般防火牆的防護而達到攻擊目的,缺點是需要找很多殭屍主機,並且由於殭屍主機的IP是暴露的,因此容易被追蹤。

3、刷Script腳本攻擊:

這種攻擊主要是針對存在ASP、JSP、PHP、CGI等腳本程式,並調用MSSQLServer、MySQLServer、Oracle等資料庫的網站系統而設計的,特徵是和伺服器建立正常的TCP連線,並不斷的向腳本程式提交查詢、列表等大量耗費資料庫資源的調用,一般來說,提交一個GET或POST指令對客戶端的耗費和頻寬的占用是幾乎可以忽略的,而伺服器為處理此請求卻可能要從上萬條記錄中去查出某個記錄,這種處理過程對資源的耗費是很大的,常見的資料庫伺服器很少能支持數百個查詢指令同時執行,而這對於客戶端來說卻是輕而易舉的,因此攻擊者只需通過Proxy代理向主機伺服器大量遞交查詢指令,只需數分鐘就會把伺服器資源消耗掉而導致拒絕服務,常見的現象就是網站慢如蝸牛、ASP程式失效、PHP連線資料庫失敗、資料庫主程式占用CPU偏高。這種攻擊的特點是可以完全繞過普通的防火牆防護,輕鬆找一些Proxy代理就可實施攻擊,缺點是對付只有靜態頁面的網站效果會大打折扣,並且有些Proxy會暴露攻擊者的IP位址。怎么抵禦DDOS僅僅依靠某種系統或產品防住DDOS是不現實的,可以肯定的是,完全杜絕DDOS是不可能的,但通過適當的措施抵禦90%的DDOS攻擊是可以做到的,基於攻擊和防禦都有成本開銷的緣故,若通過適當的辦法增強了抵禦DDOS的能力,也就意味著加大了攻擊者的攻擊成本,那么絕大多數攻擊者將無法繼續下去而放棄,也就相當於成功的抵禦了DDOS攻擊。

相關詞條

相關搜尋

熱門詞條

聯絡我們