類型:DDoS 攻擊
定義
DDOS是(Distributed Denial of Service)的縮寫,即分布式拒絕服務攻擊,是指處于不同位置的多個攻擊者同時向一個或數個目標發動攻擊,或者一個攻擊者控制了位于不同位置的多臺機器并利用這些機器對受害者同時實施攻擊。由于攻擊的發出點是分布在不同地方的,這類攻擊稱為分布式拒絕服務攻擊,其中的攻擊者可以有多個。
攻擊原理
DDoS攻擊是一種基于DoS的特殊形式的拒絕服務攻擊,是一種分布的、協同的大規模攻擊方式。單一的DoS攻擊一般是采用一對一方式的,它利用網絡協議和操作系統的一些缺陷,采用欺騙和偽裝的策略來進行網絡攻擊,使網站服務器充斥大量要求回復的信息,消耗網絡帶寬或系統資源,導致網絡或系統不勝負荷以至于癱瘓而停止提供正常的網絡服務。與DoS攻擊由單臺主機發起攻擊相比較,分布式拒絕服務攻擊DDoS是借助數百、甚至數千臺被入侵后安裝了攻擊進程的主機同時發起的集團行為。
一個完整的DDOS攻擊體系由攻擊者、主控端、代理端和攻擊目標四部分組成。
主控端和代理端分別用于控制和實際發起攻擊
- 主控端只發布命令而不參與實際攻擊
- 代理端發出DDOS的實際攻擊包
- 主控端和代理端的計算機,攻擊者有控制權或者部分控制權。它在攻擊過程中會利用各種手段隱藏自己不被別人發現。真正的攻擊者一旦將攻擊的命令傳送到主控端,攻擊者就可以關閉或離開網絡.而由主控端將命令發布到各個代理主機上。這樣攻擊者可以逃避追蹤。每一個攻擊代理主機都會向目標主機發送大量的服務請求數據包,這些數據包經過偽裝,無法識別它的來源,而且這些數據包所請求的服務往往要消耗大量的系統資源,造成目標主機無法為用戶提供正常服務。甚至導致系統崩潰。
分類
一、基于自動化程序分類
1.手動的DDoS攻擊早期的DDoS攻擊全是采用手動配置的,即發動DDoS攻擊時,掃描遠端有漏洞的計算機,侵入它們并且安裝代碼全是手動完成的。
2.半自動化的DDoS攻擊在半自動化的攻擊中,DDoS攻擊屬于主控端一代理端的攻擊模型,攻擊者用自動化的Scripts來掃描,主控端的機器對主控端和代理端之間進行協商攻擊的類型、受害者的地址、何時發起攻擊等信息進行詳細記錄。
3.自動化的DDoS攻擊在這類攻擊中。攻擊者和代理端機器之間的通信是絕對不允許的。這類攻擊的攻擊階段絕大部分被限制用一個單一的命令來實現,攻擊的所有特征,例如攻擊的類型,持續的時間和受害者的地址在攻擊代碼中都預先用程序實現。
二、基于系統及協議的弱點分類
1.洪水攻擊在洪水攻擊中,傀儡機向受害者系統發送大量的數據流為了充塞受害者系統的帶寬,影響小的則降低受害者提供的服務,影響大的則使整個網絡帶寬持續飽和,以至于網絡服務癱瘓。典型的洪水攻擊有UDP洪水攻擊和ICMP洪水攻擊。
2.擴大攻擊擴大攻擊分為兩種,一種是利用廣播lP地址的特性,一種是利用反射體來發動攻擊。前一種攻擊者是利用了廣播IP地址的特性來擴大和映射攻擊,導致路由器將數據包發送到整個網絡的廣播地址列表中的所有的廣播IP地址。這些惡意的流量將減少受害者系統可提供的帶寬。典型的擴大攻擊有Smurf和Fraggle攻擊。
3.利用協議的攻擊該類攻擊則是利用某些協議的特性或者利用了安裝在受害者機器上的協議中存在的漏洞來耗盡它的大量資源。典型的利用協議攻擊的例子是TCP SYN攻擊。
4.畸形數據包攻擊攻擊者通過向受害者發送不正確的IP地址的數據包,導致受害系統崩潰。畸形數據包攻擊可分為兩種類型:IP地址攻擊和IP數據包屬性攻擊。
三、基于攻擊速率分類
1.持續速率的攻擊是指只要開始發起攻擊,就用全力不停頓也不消減力量。像這種攻擊的影響是非常快的。
2.可變速率的攻擊從名字就可以看出,用不同的攻擊速率,基于這種速率改變的機制,可以把這種攻擊分為增加速率和波動的速率。
四、基于影響力進行分類
1.服務徹底崩潰的攻擊將導致受害者的服務器完全拒絕對客戶端提供服務。
2.降低網絡服務的攻擊消耗受害者系統的一部分資源,這將延遲攻擊被發現的時間,同時對受害者造成一定的破壞。
五、基于入侵目標分類
1.帶寬攻擊通過使用大量的數據包來淹沒整個網絡,使得有效的網絡資源被浪費,合法朋戶的請求得不到響應,大大降低了效率。
2.連通性攻擊是通過發送大量的請求來使的計算機癱瘓,所有有效的操作系統資源被耗盡,導致計算機不能夠再處理合法的用戶請求。
六、基于攻擊路線分類
1.直接攻擊攻擊者和主控端通信,主控端接到攻擊者的命令后,再控制代理端向受害者發動攻擊數據流。代理端向受害者系統發送大量的偽IP地址的網絡數據流,這樣攻擊者很難被追查到。
2.反復式攻擊通過利用反射體,發動更強大的攻擊流。反射體是任何一臺主機只要發送一個數據包就能收到一個數據包,反復式攻擊就是攻擊者利用中間的網絡節點發動攻擊
七、基于攻擊特征分類
1.攻擊行為特征可提取的DDoS攻擊又可以細分為可過濾型和不可過濾型。可過濾型的DDoS攻擊主要指那些使用畸形的非法數據包。
2.不可過濾型DDoS攻擊通過使用精心設計的數據包,模仿合法用戶的正常請求所用的數據包,一旦這類數據包被過濾將會影響合法用戶的正常使用。
攻擊形式
DDoS的表現形式主要有兩種,一種為流量攻擊,主要是針對網絡帶寬的攻擊,即大量攻擊包導致網絡帶寬被阻塞,合法網絡包被虛假的攻擊包淹沒而無法到達主機;另一種為資源耗盡攻擊,主要是針對服務器主機的攻擊,即通過大量攻擊包導致主機的內存被耗盡或CPU被內核及應用程序占完而造成無法提供網絡服務。當被DDoS攻擊時,主要表現為:
(1)被攻擊主機上有大量等待的TCP連接。
(2)網絡中充斥著大量的無用的數據包,源地址為假。
(3)制造高流量無用數據,造成網絡擁塞,使受害主機無法正常和外界通訊。
(4)利用受害主機提供的服務或傳輸協議上的缺陷,反復高速地發出特定的服務請求,使受害主機無法及時處理所有正常請求。
(5)嚴重時會造成系統死機。
攻擊步驟
攻擊者進行一次DDoS攻擊大概需要經過了解攻擊目標、攻占傀儡機、實際攻擊三個主要步驟,下面依次說明每一步驟的具體過程:

1、了解攻擊目標就是對所要攻擊的目標有一個全面和準確的了解,以便對將來的攻擊做到心中有數。主要關心的內容包括被攻擊目標的主機數目、地址情況。目標主機的配置、性能、目標的帶寬等等。對于DDoS攻擊者來說,攻擊互聯網上的某個站點,有一個重點就是確定到底有多少臺主機在支持這個站點,一個大的網站可能有很多臺主機利用負載均衡技術提供服務。所有這些攻擊目標的信息都關系到后面兩個階段的實施目標和策略,如果盲目的發動DDoS攻擊就不能保證攻擊目的的完成,還可能過早的暴露攻擊者的身份,所以了解攻擊目標是有經驗的攻擊者必經的步驟。
2、攻占傀儡主機就是控制盡可能多的機器,然后安裝相應的攻擊程序。在主控機上安裝控制攻擊的程序,而攻擊機則安裝DDoS攻擊的發包程序。攻擊者最感興趣,也最有可能成為別人的傀儡主機的機器包括那些鏈路狀態好、性能好同時安全管理水平差的主機。攻擊者一般會利用已有的或者未公布的一些系統或者應用軟件的漏洞.取得一定的控制權,起碼可以安裝攻擊實施所需要的程序,更厲害的可能還會取得最高控制權、留下后門等等。在早期的DDoS攻擊過程中,攻占傀儡主機這一步主要是攻擊者自己手動完成的,親自掃描網絡,發現安全性比較差的主機,將其攻占并且安裝攻擊程序。但是后來隨著DDoS攻擊和蠕蟲的融合,攻占傀儡機變成了一個自動化的過程,攻擊者只要將蠕蟲放入網絡中,蠕蟲就會在不斷擴散中不停地攻占主機,這樣所能聯合的攻擊機將變得非常巨大,DDoS攻擊的威力更大。
3、DDoS攻擊的最后一個階段就是實際的攻擊過程,攻擊者通過主控機向攻擊機發出攻擊指令,或者按照原先設定好的攻擊時間和目標,攻擊機不停的向目標或者反射服務器發送大量的攻擊包,來吞沒被攻擊者,達到拒絕服務的最終目的。和前兩個過程相比,實際攻擊過程倒是最簡單的一個階段,一些有經驗的攻擊者可能還會在攻擊的同時通過各種手段檢查攻擊效果,甚至在攻擊過程中動態調整攻擊策略,盡可能清除在主控機和攻擊機上留下的蛛絲馬跡。
攻擊方式
1、SYN Flood攻擊
SYN Flood攻擊是當前網絡上最為常見的DDoS攻擊,它利用了TCP協議實現上的一個缺陷。通過向網絡服務所在端口發送大量的偽造源地址的攻擊報文,就可能造成目標服務器中的半開連接隊列被占滿,從而阻止其他合法用戶進行訪問。
2、UDP Flood攻擊
UDP Flood是日漸猖厥的流量型DDoS攻擊,原理也很簡單。常見的情況是利用大量UDP小包沖擊DNS服務器或Radius認證服務器、流媒體視頻服務器。由于UDP協議是一種無連接的服務,在UDP Flood攻擊中,攻擊者可發送大量偽造源IP地址的小UDP包。
3、ICMP Flood攻擊
ICMP Flood攻擊屬于流量型的攻擊方式,是利用大的流量給服務器帶來較大的負載,影響服務器的正常服務。由于目前很多防火墻直接過濾ICMP報文。因此ICMP Flood出現的頻度較低。
4、Connection Flood攻擊
Connection Flood是典型的利用小流量沖擊大帶寬網絡服務的攻擊方式,這種攻擊的原理是利用真實的IP地址向服務器發起大量的連接。并且建立連接之后很長時間不釋放,占用服務器的資源,造成服務器上殘余連接(WAIT狀態)過多,效率降低,甚至資源耗盡,無法響應其他客戶所發起的鏈接。
5、HTTP Get攻擊
這種攻擊主要是針對存在ASP、JSP、PHP、CGI等腳本程序,特征是和服務器建立正常的TCP連接,并不斷的向腳本程序提交查詢、列表等大量耗費數據庫資源的調用。這種攻擊的特點是可以繞過普通的防火墻防護,可通過Proxy代理實施攻擊,缺點是攻擊靜態頁面的網站效果不佳,會暴露攻擊者的lP地址
6、UDP DNS Query Flood攻擊
UDP DNS Query Flood攻擊采用的方法是向被攻擊的服務器發送大量的域名解析請求,通常請求解析的域名是隨機生成或者是網絡世界上根本不存在的域名。域名解析的過程給服務器帶來了很大的負載,每秒鐘域名解析請求超過一定的數量就會造成DNS服務器解析域名超時。
應對策略
防御措施
不但是對DDoS,而且是對于所有網絡的攻擊,都應該是采取盡可能周密的防御措施,同時加強對系統的檢測,建立迅速有效的應對策略。應該采取的防御措施有:
(1)全面綜合地設計網絡的安全體系,注意所使用的安全產品和網絡設備。
(2)提高網絡管理人員的素質,關注安全信息,遵從有關安全措施,及時地升級系統,加強系統抗擊攻擊的能力。
(3)在系統中加裝防火墻系統,利用防火墻系統對所有出入的數據包進行過濾,檢查邊界安全規則,確保輸出的包受到正確限制。
(4)優化路由及網絡結構。對路由器進行合理設置,降低攻擊的可能性。
(5)優化對外提供服務的主機,對所有在網上提供公開服務的主機都加以限制。
(6)安裝入侵檢測工具(如NIPC、NGREP),經常掃描檢查系統,解決系統的漏洞,對系統文件和應用程序進行加密,并定期檢查這些文件的變化。
防御原則
在響應方面,雖然還沒有很好的對付攻擊行為的方法,但仍然可以采取措施使攻擊的影響降至最小。對于提供信息服務的主機系統,應對的根本原則是:
盡可能地保持服務、迅速恢復服務。由于分布式攻擊入侵網絡上的大量機器和網絡設備,所以要對付這種攻擊歸根到底還是要解決網絡的整體安全問題。真正解決安全問題一定要多個部門的配合,從邊緣設備到骨干網絡都要認真做好防范攻擊的準備,一旦發現攻擊就要及時地掐斷最近攻擊來源的那個路徑,限制攻擊力度的無限增強。網絡用戶、管理者以及ISP之間應經常交流,共同制訂計劃,提高整個網絡的安全性。
網絡安全學院 社區 Wiki
推薦文章: