昨天我們說到了 BGP 網路路由宣告可能會造成的一些安全隱憂
而今天我們就要就其中的某些防禦手法做一些背景講解
昨天我們說到了幾個不同的安全問題面向
我們在底下大致條列出來
首先是 BGP 連線無法驗證對方身份的問題
其實在 BGP 提出後不久,就有人想到這個問題了
解決方法其實很簡單,就是雙方先約定好一組密鑰,
到時候傳送就想辦法比對這組 Key 是不是相同的就行
而大家就把頭腦動到了 BGP 的下層會話層協定,也就是 TCP 身上
根據 RFC 2385 所述
利用 TCP 可以攜帶 MD5 雜湊的方式
將兩邊傳輸的訊息用約定好的 Key 做 MD5 簽章
由此即可強化雙方連線的可靠性與安全性
當然有設沒有什麼缺點,但就是要記得設定
很多 BGP Session 實際上並沒有特別設定
通常 eBGP Session 建立在 ASBR 與 ASBR 之間
而許多 eBGP Session 建立在 IX 之間
而 IX 的網路所使用的 IP 在外部是無法連結的
實現服務阻斷有一定的難度
但有些 BGP 連線是經由 Tunnel 所建立起來的
只要對該 Tunnel 或者是 BGP Daemon 實現各種類型的服務阻斷攻擊
即可使該 BGP Session 斷線,導致對端送出 Route Withdraw 請求
我們對這種攻擊,基本上只能被動且消極的防禦
首先是確保 BGP 服務不會在網際網路上被探測到
這樣可以增加 Router 的隱匿性
再來是請該 Tunnel 所使用的 Internet Provider 協助阻擋攻擊
面對服務阻斷攻擊,其實防禦起來十分無力,不然就是費工又費時
嗚嗚今天真的沒力氣寫了
剛剛還不小心睡著往後倒撞到頭
明天會再做更詳細的補充