憶龍2009 TCP非法復位漏洞及解決方法

2021-05-11 12:57:15 字數 1974 閱讀 2732

英國的niscc發布236929安全公告:按照rfc 793實現的tcp協議存在安全漏洞,正常的tcp連線可以被非法的第三方復位。在已知tcp連線的四元組(源位址、目的位址、源埠號、目的埠號)的情況下,攻擊者可以偽造帶有rst/syn標誌的tcp報文或普通資料報文,當其sequence number落在tcp連線的滑動視窗(window size)範圍內,可能導致以下攻擊後果:

1.偽造rst 報文終止正常的tcp會話。

2.偽造syn 報文終止正常的tcp會話。

3.攻擊者可插入虛假資料到正常的tcp 會話。

假設當前tcp連線的sequence number為a,攻擊者選擇乙個隨機sequence number為b,以步長為"window size"傳送報文,因為sequence number範圍為0~2^32,同時考慮到a、b所處位置的概率,攻擊者平均傳送"2^32/(windowsize*2)"個報文就有乙個落在當前tcp連線的滑動視窗範圍內,從而導致該tcp連線復位。以windowsize為8192為例,達成攻擊平均需要傳送262144個報文,假設報文長度為256位元組,那麼攻擊者使用2m的adsl線路可以在512秒復位這個tcp連線。考慮到現在很多作業系統的window size多達32k甚至64k,而且攻擊者的線路頻寬也遠不止2m,攻擊者可以更快達成攻擊。

達成攻擊的前提條件是:已知(源位址、目的位址、源埠號、目的埠號);sequence number落在window size之內。對於一些基於tcp的應用,如telnet,ftp等,因為ip位址範圍太大,猜測較難,而且這些應用的連線時間一般不長,所以威脅不算太大。但是對於bgp協議來說,要獲取這四元組相對容易:首先,很多as站點的位址資訊能夠在一些"bgp looking glasses"服務或者一些dns資源資訊上查到,這導致可以較為容易獲取源位址和目的位址資訊;其次目的埠是well-known的179;最後雖然源埠是變化的,但是研究發現,幾乎所有廠商的tcp實現,在選擇源埠號時是有規律的。加上bgp的tcp連線長時間存在,攻擊者可以比較從容的發動攻擊並得手。bgp被認為受本次發現的漏洞影響最大。

問題解決措施:

1.tcp問題的修改:

• rst的修改:

(1)報文段的rst被置位,順序號不在接收視窗範圍內,丟棄該報文

(2)報文段的rst被置位,並且該報文的順序號正是期望的順序號,reset the connection

(3)報文段的rst被置位,該報文的順序號不是期望的順序號,但是在視窗範圍內(rcv.nxt < seg.seq <= rcv.nxt+rcv.wnd),send an ack。

其中第三點修改建議經過分析,在正常情況不會對tcp造成影響。兩個裝置(假設a和b)建立tcp連線,如果其中一端a發起正好符合上面的條件rst報文段,這屬於異常關閉流程,不遵守tcp的狀態變遷,a會清除本端連線,對端b收到這個rst後,回應乙個ack給a,a收到後,發乙個rst給b,這樣兩端就都斷開連線,不存在一端連線長時間存在的問題。如果中間有報文丟棄,keepalive可以解決這個問題。

• syn的修改:

(1)報文段的syn被置位,順序號不在接收視窗範圍內,給對端發ack

(2)報文段的syn被置位,並且該報文的順序號正是期望的順序號(rcv.nxt == seg.seq),傳送ack,在傳送ack之前,把被確認的值減一

(3)報文段的syn被置位,該報文的順序號不是期望的順序號,但是在視窗範圍內(rcv.nxt < seg.seq <= rcv.nxt+rcv.wnd),傳送ack

報文段的ack值檢查,vrp軟體處理已滿足draft建議的範圍((snd.una - max.snd.wnd) <= seg.ack < snd.nxt)。

2.bgp的md5認證問題修改:

減輕被攻擊影響的措施:

(1)在啟動了bgp協議的一些關鍵應用場合,啟動ipsec;

(2)不能使用ipsec的關鍵應用場合,在支援源位址逆向檢查的裝置上,建議使用者啟動源位址逆向檢查功能。這可以大大減少攻擊達成的可能性;

(3)嚴格控制啟動bgp的裝置的相關資訊外露。

憶龍2009 WLAN IDS介紹

802.11網路很容易受到各種網路威脅的影響,如未經授權的ap使用者 ad hoc網路 拒絕服務型攻擊等 rogue裝置對於企業網路安全來說更是乙個很嚴重的威脅。wids wireless intrusion detection system 可以對有惡意的使用者攻擊和入侵行為進行早期檢測,保護企業...

憶龍2009 理解EAP TLS的信任模型

客戶側信任模型 客戶端信任伺服器 當你在使用諸如windows xp之類的客戶端時,你需要配置乙個根證書機構.通過這個根證書機構,你可以驗證aaa伺服器的合法性.你所指定的可信任證書機構,即可以是公共的,也可以是私有的,如果你決定使用乙個公共的根證書機構,那麼你必須知道,你對這個根證書機構是沒有任何...

憶龍2009 無線Mesh網路的部署

無線mesh網路主要包括兩種應用 普通無線mesh網路部署 1 普通fit mp場景 2 擁有兩個radio的fit mp,兩個radio分別在不同的mesh網路 如圖所示,為了使mesh 1和mesh 2網路不產生干擾,可以採用乙個擁有兩個radio的mp,兩個radio分別在不同的mesh網路。...