IT技術互動交流平(ping)台

大发欢乐生肖官网

作者(zhe)︰whl  發(fa)布日期︰2020-03-31 10:21:00
  說到SYN Flood可能很多(duo)人(ren)都不是很清楚,對(dui)于它(ta)會(hui)造成(cheng)什麼樣(yang)的危(wei)害(hai)也一知半解(jie),今天小編(bian)就給大家詳細介紹一下關于SYN Flood的攻擊以yue)胺烙yu)的具體(ti)操作方法,感興趣的朋(peng)友不妨跟著(zhou)小編(bian)一起繼續往下看(kan)。

  一、為(wei)什麼Syn Flood會(hui)造成(cheng)危(wei)害(hai)

  這要從操作系統的TCP/IP協(xie)議(yi)棧的實現(xian)說起。當開放(fang)了一個TCP端(duan)口後(hou),該端(duan)口就處于Listening狀態,不停地監視發(fa)到該端(duan)口的Syn報文,一旦接收到Client發(fa)來的Syn報文,就需(xu)要為(wei)該請求分配(pei)一個TCB(Transmission Control Block),通常一個TCB至少(shao)需(xu)要280個字節,在某些操作系統chi)CB甚至需(xu)要1300個字節,並返回(hui)一個SYN ACK命(ming)令,立即轉為(wei)SYN-RECEIVED即半開連接狀態,而某些操作系統在SOCK的實現(xian)上最多(duo)可開啟512個半開連接(如Linux2.4.20內核)。這種(zhong)過程如下圖所示︰

過程如下圖所示

  從以上過程可以看(kan)到,如果惡意的向(xiang)某個服(fu)務器端(duan)口發(fa)送大量的SYN包(bao),則可以使服(fu)務器打(da)開大量的半開連接,分配(pei)TCB,從而消(xiao)耗大量的服(fu)務器資源,同時也使得正常的連接請求無(wu)法被(bei)相(xiang)應。而攻擊發(fa)起方的資源消(xiao)耗相(xiang)比較可忽略(lue)不計。

  二、如何(he)防御(yu)Syn Flood攻擊

  我們先來看(kan)一下Syn Flood有哪(na)些種(zhong)類,如下圖所示︰

Syn Flood有哪(na)些種(zhong)類

  1. Direct Attack 攻擊方使用固定的nao)吹?販fa)起攻擊,這種(zhong)方法對(dui)攻擊方的消(xiao)耗最小

  2. Spoofing Attack 攻擊方使用變化的nao)吹?販fa)起攻擊,這種(zhong)方法需(xu)要攻擊方不停地修(xiu)改nao)吹?罰 導噬舷xiao)耗也不大

  3. Distributed Direct Attack 這種(zhong)攻擊主要是使用僵尸網絡(luo)進行固定源地址的攻擊

  對(dui)于第一種(zhong)攻擊的防範可以使用比較簡單的方法,即對(dui)SYN包(bao)進行監視,如果發(fa)現(xian)某個IP發(fa)起了si)隙duo)的攻擊報文,直接將這個IP列入黑名單即可。當然下述的方法也可以對(dui)其進行防範。

  對(dui)于源地址不停變化的攻擊使用上述方法則不行,首先從某一個被(bei)偽裝(zhuang)的IP過來的Syn報文mu)贍懿換hui)太多(duo),達不到被(bei)拒絕(jue)的閾值,其次從這個被(bei)偽裝(zhuang)的IP(真(zhen)實的)的請求會(hui)被(bei)拒絕(jue)掉。因此(ci)必須(xu)使用其他的方法進行處理(li)。

  1.無(wu)效連接監視釋放(fang)

  2. 這種(zhong)方法不停監視系統的半開連接和(he)不活動連接,當達到一huan)ㄣ兄凳輩chai)除這些連接,從而釋放(fang)系統資源。這種(zhong)方法對(dui)于所有的連接一視同仁,而且由(you)于SYN Flood造成(cheng)的半開連接數量很大,正常連接請求也被(bei)淹沒在其中被(bei)這種(zhong)方式(shi)誤釋放(fang)掉,因此(ci)這種(zhong)方法屬(shu)于入門級的SYN Flood方法。

  3.延(yan)緩TCB分配(pei)方法

  4. 從前面SYN Flood原理(li)可以看(kan)到,消(xiao)耗服(fu)務器資源主要是因為(wei)當SYN數據報文一到達,系統立即分配(pei)TCB,從而佔(zhan)用了資源。而SYN Flood由(you)于很難建立起正常連接,因此(ci),當正常連接建立起來後(hou)再分配(pei)TCB則可以有效地減輕(qing)服(fu)務器資源的消(xiao)耗。常見的方法是使用Syn Cache和(he)Syn Cookie技術。

  Syn Cache技術︰

  這種(zhong)技術是在收到SYN數據報文時不急于去分配(pei)TCB,而是先回(hui)應一個SYN ACK報文,並在一個專(zhuan)用HASH表(Cache)中保存這種(zhong)半開連接信息,直到收到正確的回(hui)應ACK報文nao)俜峙pei)TCB。在FreeBSD系統chi)姓庵zhong)Cache每個半開連接只需(xu)使用160字節,遠小于TCB所需(xu)的736個字節。在發(fa)送的SYN ACK中需(xu)要使用一個己方的Sequence Number,這個數字不能被(bei)對(dui)方猜到,否則對(dui)于某些稍微智(zhi)能一點的Syn Flood攻擊軟件來ci)擔 ta)們在發(fa)送Syn報文後(hou)會(hui)發(fa)送一個ACK報文,如果己方的Sequence Number被(bei)對(dui)方猜測到,則會(hui)被(bei)其建立起真(zhen)正的連接。因此(ci)一般采用一些加密算(suan)法生成(cheng)難yan)讜?獾equence Number。

  Syn Cookie技術︰

  對(dui)于SYN攻擊,Syn Cache雖然不分配(pei)TCB,但是為(wei)了判斷後(hou)續對(dui)方發(fa)來的ACK報文中的Sequence Number的正確性,還是需(xu)要使用一些空(kong)zhan)淙?4婕悍繳cheng)的Sequence Number等信息,也造成(cheng)了一些資源的浪費。

  Syn Cookie技術則完全不使用任何(he)存儲(chu)資源,這種(zhong)方法比較巧妙,它(ta)使用一種(zhong)特殊(shu)的算(suan)法生成(cheng)Sequence Number,這種(zhong)算(suan)法考慮到了對(dui)方的IP、端(duan)口、己方IP、端(duan)口的固定信息,以yue)岸dui)方無(wu)法知道而己方比較固定的一些信息,如MSS、時間等,在收到對(dui)方的ACK報文後(hou),重新計算(suan)一遍,看(kan)其是否與對(dui)方回(hui)應報文中的(Sequence Number-1)相(xiang)同,從而決定是否分配(pei)TCB資源。

  3. 使用SYN Proxy防火牆

  Syn Cache技術和(he)Syn Cookie技術總的來ci)凳且恢zhong)主機保護技術,需(xu)要系統的TCP/IP協(xie)議(yi)棧的支(zhi)持(chi),而目(mu)前並非所有的操作系統chi)zhi)持(chi)這些技術。因此(ci)很多(duo)防火牆中都提供一種(zhong)SYN代理(li)的功(gong)能,其主要原理(li)是對(dui)試圖穿越(yue)的SYN請求進行驗(yan)證後(hou)才放(fang)行,下圖描述了這種(zhong)過程︰

 使用SYN Proxy防火牆

  從you)賢左圖)中可以看(kan)出(chu),防火牆在確認(ren)了連接的有效性後(hou),才向(xiang)內部的服(fu)務器(Listener)發(fa)起SYN請求,在右圖中,所有的無(wu)效連接均無(wu)法到達內部的服(fu)務器。而防火牆采用的驗(yan)證連接有效性的方法則可以是Syn Cookie或Syn Flood等其他技術。

  采用這種(zhong)方式(shi)進行防範需(xu)要注(zhu)意的一點就是防火牆需(xu)要對(dui)整個有效連接的過程發(fa)生的數據包(bao)進行代理(li),如下圖所示︰

數據包(bao)進行代理(li)

  因為(wei)防火牆代替發(fa)出(chu)的SYN ACK包(bao)中使用的序列號為(wei)c,而服(fu)務器真(zhen)正的回(hui)應包(bao)中序列號為(wei)c‘,這其中有一個差(cha)值c-c’,在每個相(xiang)關數據報文經過防火牆的時候進行序列號的修(xiu)改。

  TCP Safe Reset技術︰

  這也是防火牆Syn代理(li)的一種(zhong)方式(shi),其工作過程如下圖所示︰

工作過程如下圖所示

  這種(zhong)方法在驗(yan)證了連接之後(hou)立即發(fa)出(chu)一個Safe Reset命(ming)令包(bao),從而使得Client重新進行連接,這時出(chu)現(xian)的Syn報文防火牆就直接放(fang)行。在這種(zhong)方式(shi)中,防火牆就不需(xu)要對(dui)通過防火牆的數據報文進行序列號的修(xiu)改了。這需(xu)要客戶端(duan)的TCP協(xie)議(yi)棧支(zhi)持(chi)RFC 793中的相(xiang)關約(yue)定,同時由(you)于Client需(xu)要兩次握手(shou)過程,連接建立的時間將有所延(yan)長。

  上面這些內容(rong)就是今天小編(bian)給大家分享的關于SYN Flood會(hui)導致的危(wei)害(hai)以yue)叭綰he)對(dui)其進行防御(yu)的具體(ti)操作方法了。如果大家對(dui)于SYN Flood還想了si)jie)更多(duo)的話歡(huan)迎查看(kan)本站(zhan)其他發(fa)文,小編(bian)這里就不再一一進行講解(jie)了。

  • 大发欢乐生肖官网

  • Windows7系統入門 優化 技巧技術專(zhuan)題(ti)
  • Windows7系統專(zhuan)題(ti) 無(wu)論是升級操作系統、資料(liao)備份(fen)、加強資料(liao)的安全及(ji)管...... 詳細
About IT165 - 廣告服(fu)務 - 隱(yin)私(si)聲明 - 版權申明 - 极速快三APP官网免責(ze)條(tiao)款 - 網站(zhan)地圖 - 網友投稿 - 聯(lian)系方式(shi)
本站(zhan)內容(rong)來自于互聯(lian)網,僅供用于網絡(luo)技術學習,學習中請遵(zun)循相(xiang)關法律法規
大发欢乐生肖官网 | 下一页