萬盛學電腦網

 萬盛學電腦網 >> 網絡基礎知識 >> 什麼叫DDOS攻擊?有什麼辦法防御

什麼叫DDOS攻擊?有什麼辦法防御

  什麼叫DDOS攻擊?有什麼辦法防御?


  DDOS是英文Distributed Denial of Service的縮寫,意即“分布式拒絕服務”,那麼什麼又是拒絕服務(Denial of Service)呢?可以這麼理解,凡是能導致合法用戶不能夠訪問正常網絡服務的行為都算是拒絕服務攻擊。也就是說拒絕服務攻擊的目的非常明確,就是要阻 止合法用戶對正常網絡資源的訪問,從而達成攻擊者不可告人的目的。雖然同樣是拒絕服務攻擊,但是DDOS和DOS還是有所不同,DDOS的攻擊策略側重於 通過很多“僵屍主機”(被攻擊者入侵過或可間接利用的主機)向受害主機發送大量看似合法的網絡包,從而造成網絡阻塞或服務器資源耗盡而導致拒絕服務,分布 式拒絕服務攻擊一旦被實施,攻擊網絡包就會猶如洪水般湧向受害主機,從而把合法用戶的網絡包淹沒,導致合法用戶無法正常訪問服務器的網絡資源,因此,拒絕 服務攻擊又被稱之為“洪水式攻擊”,常見的DDOS攻擊手段有SYN Flood、ACK Flood、UDP Flood、ICMP Flood、TCP Flood、Connections Flood、Script Flood、Proxy Flood等;而DOS則側重於通過對主機特定漏洞的利用攻擊導致網絡棧失效、系統崩潰、主機死機而無法提供正常的網絡服務功能,從而造成拒絕服務,常見 的DOS攻擊手段有TearDrop、Land、Jolt、IGMP Nuker、Boink、Smurf、Bonk、OOB等。就這兩種拒絕服務攻擊而言,危害較大的主要是DDOS攻擊,原因是很難防范,至於DOS攻擊, 通過給主機服務器打補丁或安裝防火牆軟件就可以很好地防范,後文會詳細介紹怎麼對付DDOS攻擊。


  當前主要有三種流行的DDOS攻擊:


  1、SYN/ACK Flood攻擊:這種攻擊方法是經典最有效的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地址。

copyright © 萬盛學電腦網 all rights reserved