譯者 | 范曉波
審校 | 孫淑娟
什么是 BGP?
邊界網關協議(BGP)是互聯網的主要路由協議。它被描述為“使互聯網工作”的協議,因為它在允許流量快速有效地傳輸方面發揮著重要的作用。
BGP的最初功能是在邊緣路由器之間傳送網絡可達性信息(有時被描述為可達性協議)。此后,它已擴展為還承載 VPN、IPv6、多播和一系列其他數據的路由信息。BGP 提供網絡穩定性,因為它保證路由器可以在一條Internet路徑出現故障時快速適應通過不同的連接發送數據包。 它通過BGP-speaking路由器和路由表在Internet上交換路由信息來實現這一點。
互聯網路由由兩種不同的類型組成::
- 內部網關協議 (IGP):用于自治系統(AS)內的路由,例如 EIGRP、OSPFF 和 RIP;
- 外部網關協議 (EGP):邊界網關協議目前是事實上的標準 EGP 路由協議,用于域間路。
BGP最初是作為取代現有EGP的權宜之計而提出的。快進30年,它仍然是互聯網的核心支柱之一。我們目前使用的是版本4(BGP4 或 BGP-4)。
BGP 如何工作?
BGP指定了一種基于TCP的通信方法,以幫助自治系統通過互聯網交換路由信息。AS是由公共管理機構(如大型企業或大學)運行的路由器的集合,它們控制著IP地址范圍。每個AS都分配有一個自治系統編號(ASN)。
BGP 根據網絡管理員設置的路徑、規則和/或網絡策略確定路由決策。每個 AS 管理一個路由表,其中包含到其他網絡的所有已知路由,然后與相鄰網絡共享,也稱為對等網絡。 BGP 決策過程使 AS 能夠通過分析每個候選者的路徑屬性,應用一組標準(包括權重、本地偏好、最短 AS 路徑等)來選擇最有效的可用路由。這意味著 BGP 可能會沿著一條路徑引導流量到達其目的地,并在其回程中沿著另一條路徑引導流量,從而導致非對稱路由。
BGP設計和實現的重點一直是安全性和可擴展性,這使得它比其他路由協議更難配置;它也更復雜,使其成為最慢的收斂路由協議之一。
一點點歷史
需要一些背景知識才能更好地了解BGP在互聯網歷史上所扮演的關鍵作用。1989年,我們今天所認為的互聯網剛剛邁出了第一步。互聯網的商用仍然被禁止,但商業ISP正在萌芽,并向最終用戶提供網絡訪問,互聯網的商用不再是一個禁忌話題。
當BGP于1989年6月首次標準化時,長期運行的ARPANET被停用(1989年2月28日),TCP / IP被用于互連來自偏遠國家的不同網絡,互聯網即將從其中心架構轉向分布式的架構,沒有明確定義的主干。
在此之前,所謂的互聯網網關通過外部網關協議(EGP)交換網絡可達信息。EGP是為一個由核心AS和直接連接到該核心的多個其他較小AS組成的互聯網而設計的,它完全依賴于AS的樹狀結構拓撲,不支持循環拓撲。
盡管這些限制在早期階段的互聯網中是可以忍受的,在早期存根網關通過其ARPANET骨干相互通信,但隨著商業實體和多個骨干網(如NSFNET)的出現,其不足之處變得越來越明顯,更不用說無法創建基于策略的路由,這是BGP成功的關鍵。
BGP 中固有的漏洞
使 BGP 如此成功的特性也使其極易受到人為錯誤和惡意攻擊的影響。
對構成現代互聯網的大量AS幾乎沒有監管,對每個AS鄰居網絡過濾器應如何配置幾乎沒有監管。這使得它是一個高度靈活的協議。但是,如果通告了一條新的虛假路由,無論是偶然的還是故意的,流量都將被發送到錯誤的網絡,正如我們最近所看到的,這個問題可以迅速傳播到全網。
有兩種主要類型的漏洞:
BGP 泄漏
路由泄漏涉及無意創建虛假的路由信息,從而誤導流量并使其容易被濫用。路由泄漏通常是由于人為的錯誤配置過濾器導致的,導致前綴和IP地址塊的非法通告,這些異常在網絡上傳播會導致產生非最優路由和不正確的路由。
BGP 劫持
路由劫持涉及通過損壞互聯網路由表故意接管IP地址的集合。如果注入的路由通告比真實的路由通告更有效,則流量將重新路由到注入的通告的路由器。BGP劫持并不總是容易檢測到,因為活動可能隱藏在其他AS的后面,或者可能涉及通告未使用的IP前綴塊,這些不太可能被注意到。因此,互聯網流量可能會以錯誤的方式發送,秘密監控或攔截。垃圾郵件發送者還可以使用BGP劫持來欺騙合法IP并將用戶發送到偽造網站。
對最終用戶和業務的影響
這兩種類型的漏洞都會使最終用戶遭受問題。這些范圍從不方便(例如由于流量采用不必要的長路徑而導致頁面加載時間變慢)到非常嚴重的情況(例如流量攔截或整個網絡的黑洞)。這種攻擊可能和我們在DDoS攻擊中看到的那樣導致那種大面積的網絡中斷。攻擊者還可以僅通過特定網絡黑洞來審查特定的信息來源。
這兩種類型的漏洞都會使最終用戶遭受問題。這些范圍從不方便,例如由于流量采取不必要的長路由而導致的頁面加載時間慢到高度嚴重,例如整個網絡的流量攔截或黑洞。這種攻擊可能導致我們在DDoS攻擊中遭遇全面中斷。攻擊者還可以通過僅黑洞特定網絡來審查特定信息源。
重新路由的中間人性質還允許攻擊者竊聽通信的某些部分,甚至改變流量本身。他們可以將流量從你的合法網站流量重定向到偽裝成你網絡的一部分的惡意網站。這可能導致敏感信息或證書被盜,甚至向你發送惡意軟件。我們從去年劫持者攻擊AWS的DNS服務來竊取比特幣就可以看到這一點。垃圾郵件發送者還可能通過濫用你的ASN來發送垃圾郵件,從而損害你的企業聲譽。
雖然企業無法完全防止BGP配置錯誤或故意濫用BGP,但他們可以監控正在發生的事情。通過監控與AS相關的BGP路由,你可以了解可能正在發生的任何類型的BGP漏洞,并可以執行事件響應計劃。
譯者介紹
范曉波,51CTO社區編輯,資深網絡安全工程師。精通SDN、SD-WAN、VPN、NFV等網絡相關技術。精通二三層網絡轉發。熟悉DPDK、VPP、OVS高性能網絡開源框架。
原文標題:??A BGP Guide for the Non-Network Engineer??,作者:Mehdi Daoudi