天天看點

計算機網絡 洪泛算法,泛洪

泛洪(Flooding)是交換機和網橋使用的一種資料流傳遞技術,将從某個接口收到的資料流向除該接口之外的所有接口發送出去

中文名

泛洪

外文名

Flooding适用範圍

交換機和網橋

領    域

資訊科學

泛洪泛洪的過程

編輯

語音

交換機根據收到資料幀中的源MAC位址建立該位址同交換機端口的映射,并将其寫 入MAC位址表中。交換機将資料幀中的目的MAC位址同已建立的MAC位址表進行比較,以決定由哪個端口進行轉發。如資料幀中的目的MAC位址不在MAC位址表中,則向所有端口轉發。[1]

泛洪泛洪的分類

編輯

語音

泛洪SYN泛洪攻擊

SYN攻擊利用的是TCP的三次握手機制,攻擊端利用僞造的IP位址向被攻擊端送出請求,而被攻擊端發出的響應[2]

封包将永遠發送不到目的地,那麼被攻擊端在等待關閉這個連接配接的過程中消耗了資源,如果有成千上萬的這種連接配接,主機資源将被耗盡,進而達到攻擊的目的。我們可以利用路由器的TCP攔截功能,使網絡上的主機受到保護(以Cisco路由器為例)。[3]

泛洪DHCP封包泛洪攻擊

DHCP封包泛洪攻擊是指:惡意使用者利用工具僞造大量DHCP封包發送到伺服器,一方面惡意耗盡了IP資源,使得合法使用者無法獲得IP資源;另一方面,如果交換機上開啟了DHCP Snooping功能,會将接收到的DHCP封包上送到CPU。是以大量的DHCP封包攻擊裝置會使DHCP伺服器高負荷運作,甚至會導緻裝置癱瘓。

泛洪ARP封包泛洪攻擊

ARP封包泛洪類似DHCP泛洪,同樣是惡意使用者發出大量的ARP封包,造成L3裝置的ARP表項溢出,影響正常使用者的轉發。

泛洪泛洪攻擊方法

編輯

語音

泛洪ICMP泛洪

ICMP泛洪(ICMP flood)是利用ICMP封包 進行攻擊的一種方法。如果攻擊者向目标主機發 送大量的ICMP ECHO封包,将産生ICMP泛洪, 目标主機會将大量的時間和資源用于處理ICMP ECHO封包,而無法處理正常的請求或響應,進而實作對目标主機的攻擊。

泛洪ICMP反射泛洪

Smurf IP利用廣播位址發送ICMP包,一旦廣播出去,就會被廣播域内的所有主機回應,當然這些包都回應給了僞裝的IP位址(指向被攻擊主機),僞裝IP位址可以是網際網路上的任何位址,不一定在本地;假如駭客不停地發送此種類型的包,就會造成DoS攻擊。

泛洪TCP SYN 泛洪

對于TCP協定,當用戶端向伺服器發起連接配接請求并初始化時,伺服器一端的協定棧會留一塊緩沖區來處理“握手”過程中的資訊交換。請求建立連接配接時發送的資料包的標頭SYN位就表明了資料包的順序,攻擊者可以利用在短時間内快速發起大量連接配接請求,以緻伺服器來不及響應。同時攻擊者還可以僞造源IP位址。也就是說攻擊者發起大量連接配接請求,然後挂起在半連接配接狀态,以此來占用大量伺服器資源直到拒絕服務。雖然緩沖區中的資料在一段時間内(通常是三分鐘)都沒有回應的話,就會被丢棄,但在這段時間内,大量半連接配接足以耗盡伺服器資源。

泛洪TCP LAND

LAND攻擊利用了TCP連接配接建立的三次握手過程,通過向一個目标主機發送一個用于建立請求連接配接的TCP SYN封包而實作對目标主機的攻擊。與正常的TCP SYN封包不同的是:LAND攻擊封包的源IP位址和目的IP位址是相同的,都是目标主機的IP位址。這樣目标主機接在收到這個SYN 封包後,就會向該封包的源位址發送一個ACK封包,并建立一個TCP連接配接控制結構,而該封包的源位址就是自己。由于目的IP位址和源IP位址是相同的,都是目标主機的IP位址,是以這個ACK 封包就發給了目标主機本身。

泛洪UDP FLOOD

UDP泛洪(UDP flood)的實作原理與ICMP泛洪類似,攻擊者通過向目标主機發送大量的UDP封包,導緻目标主機忙于處理這些UDP封包,而無法處理正常的封包請求或響應。

泛洪死亡之ping

由于在早期的階段,路由器對包的最大尺寸都有限制,許多作業系統對TCP/IP棧的實作為ICMP包上都是規定64KB,并且在對包的标題頭進行讀取之後,要根據該标題頭裡包含的資訊來為有效載荷生成緩沖區,當産生畸形的,聲稱自己的尺寸超過ICMP上限的包也就是加載的尺寸超過64K上限時,就會出現記憶體配置設定錯誤,導緻TCP/IP堆棧崩潰,緻使接受方當機。[4]

泛洪相關差別

編輯

語音

廣播幀的産生:網絡中存在有廣播幀是不可避免的,比如開啟了DHCP伺服器,每次請求,都會有以”FF.FF.FF.FF.FF.FF”的幀格式出現,它向所有端口轉發,假設主機A與B在同一個網絡内,當主機A要向主機B發送資訊,那麼需要知道主機B的IP位址和MAC位址,這裡面我們假定A隻知道B的IP位址,而不知道 B的MAC位址,那麼這時A就需要向網絡中發送一個ARP請求,來擷取B的MAC位址,這個ARP請求實際上就是一個廣播包。

而泛洪和MAC清單相關,在緩存中是存在的,有确定的MAC位址。隻是在MAC表中找不到具體轉發的端口和MAC的配對,才開始泛洪處理,但是泛洪并不是廣播幀(FF.FF.FF.FF.FF.FF)。廣播是有一個具體的行為,它的對象是整個網絡,在ARP時往往需要有特定的主機來響應,當然太多的廣播對于網絡是有害的,容易造成廣播風暴。總的來說,主要有以下兩點差別:

泛洪操作廣播的是普通資料幀而不是廣播幀。

廣播是向同一子網内所有的端口(包括自己的那個端口)發送消息;泛洪隻是在所有的端口中不包括發送消息的(自己的)那個端口發送消息。

詞條圖冊

更多圖冊

參考資料

1.

楊朔, 李長庚. 無線傳感器網絡泛洪時間同步協定安全算法[J]. 傳感器與微系統, 2014, 33(1):137-140.

3.

黃贻望, 萬良, 李祥. 基于IP欺騙的SYN泛洪攻擊[J]. 計算機技術與發展, 2008, 18(12):159-161.

4.

劉愛東, 盧中武, 顧佼佼. LEACH防禦HELLO泛洪攻擊的方案研究[J]. 傳感技術學報, 2012, 25(3):402-405.