按 Enter 到主內容區
:::

TWCERT-電子報

:::

邊界閘道通訊協定(BGP)威脅與防範

發布日期:
字型大小:
  • 發布單位:TWCERT/CC
  • 更新日期:2022-08-17
  • 點閱次數:1243
邊界閘道通訊協定威脅與防範

1.簡介
2.BGP威脅類型與案例分析
3.BGP資安威脅防禦機制
4.分析與建議


  • 邊界閘道器協定(Border Gateway Protocol, BGP),用於在不同的自治系統(Autonomous system, AS)間交換路由資訊。在此協定中,主要是透過維護IP路由表以及前綴(Prefix)來實踐自治系統之間的可達性,以達到去中心化的網路自治。
  • 由於BGP協定本身路由路徑之運作多是建立於各自治系統之間的互信以及正確性。因此若原本應透過路由被導至正確的流量,很可能因為其他自治系統針對IP或前綴資訊的設定錯誤,導致其流量被引導到錯誤的目的地,甚至被導入釣魚網站中,遭他人竊取或盜用個人、金融資訊,甚至受到惡意程式的極大威脅。
  • 為了減少路由錯誤以及意外劫持的狀況,網際網路工程任務組(Internet Engineering Task Force, IETF)訂定了資源公鑰基礎建設(Resource Public Key Infrastructure, RPKI)標準,針對AS進行驗證,確認該AS是否有權發布特定的IP位址。
  • 台灣地區的可信任憑證授權中心(Certification Authority, CA)為台灣網路資訊中心(Taiwan Network Information Center, TWNIC),向其會員頒發憑證,並且管理一RPKI儲存庫,用以驗證AS的IP位址資源,證明其使用的權利,減少因意外產生的路由問題。
  • 2019年8月中,台灣已申請並通過驗證的IPv4路由數量已達74.28%,相較於全球15.62%以及亞太區12.06%之申請並通過驗證之路由數量比例,台灣之RPKI施行率在國家通訊傳播委員會(National Communications Commission, NCC)以及TWNIC的努力下,成為全球之佼佼者,可以減少常見的路由錯誤以及防止大多數的BGP威脅,強化路由資安防護能量。

一、簡介

BGP概述

邊界閘道通訊協定(BGP),是一種網路路由協定(Routing Protocol),提供網際網路的自治系統網域內,彼此之間傳遞封包的最佳路徑,以達到最好的資訊傳遞速度和品質。

BGP協定主要是透過Bellman-Ford距離向量路由演算法,以計算每個自治域的連接設備(BGP Speaker),透過不斷更新路由資訊,學習並繪製出網路最佳路由的相關拓墣。

BGP協定發展至今,已經廣被認可為相當穩定和可靠的路由協定。但相對於路由功能,其針對路由安全上之設計則較不穩健,甚至BGP路由安全被認為有所缺陷。而BGP最主要的安全問題,是存在於路由資訊的傳播部分。由於BGP協定本身是設定為默認接受通知中傳遞的所有路由資訊,亦即進行一種無條件信任的路由資訊傳播。當機器錯亂或人為無意或刻意設定錯誤,造成錯誤路由通知傳送給接收方並擴散給與之相連的其他BGP連接設備,使得網路流量因錯誤的路由路徑被導往錯誤的目的地,導致網際流量洩漏(Leakage)或挾持(Hijacking)等資安事件。此類安全問題,主要是因為BGP協定本身缺乏一套可靠的認證機制,無法對其路由資訊進行驗證,難以保障路由資訊的正確性。相關網路架構示意圖如下:

圖1、BGP網路架構示意圖

圖1:BGP網路架構示意圖

全球BGP威脅概況

根據MANRS的統計,在2019年1至7月中,全球路由的運作中斷事件總計17,522件,其中,共有8,041個自治系統產生了一次以上的路由事件,詳細資料如下圖:

圖2、全球路由事件2019年1至7月統計

圖2:全球路由事件2019年1至7月統計

其中,平均每月約有2,503次的路由事件,但於2018年的統計,顯示該年度僅12,600次路由事件,平均每月1,050次路由事件,以及2017年平均每月1,162次路由事件。與前兩年相比,可以很明顯看到2019年的前七月中,路由事件的數量有逐漸增長的趨勢。

在全球路由事件中,台灣在2019年的1至7月,共有約122起事件有所影響;並且在7個月中,總計有46個網路自治區域造成了路由事件。詳細資料如下圖:

圖3、台灣路由事件2019年1至7月統計

圖3:台灣路由事件2019年1至7月統計

在台灣的路由事件中,平均每個月約有17起路由事件,約為全球的0.68%。

TOP

二、BGP威脅類型與案例分析

BGP資安威脅緣由

BGP劫持是在BGP協定中,最為常見也最被廣泛討論的安全威脅。此種威脅模式主要是源因於一個錯誤的前綴資訊的宣告,也就是一個自治系統向外部區域宣告了應不屬於該自身的前綴資訊,亦即向外傳播了一個實際上為他人所有的IP位址區段,導致欲使用該IP位址區段的使用者因為其錯誤的宣告,而被引導至錯誤的目的地。BGP劫持事件發生頻繁,並且往往會因為微小的失誤而嚴重影響大量網路之服務品質,甚至導致服務中斷,若不幸為惡意之BGP劫持行為,更可能會讓使用者在不知情的情形下蒙受損失,這些都是網路業者應極力避免產生或遭受影響之嚴重資安威脅。

BGP資安威脅案例

(1)服務中斷之BGP資安威脅事件

  • 美國電信業者設定錯誤,Cloudflare多個代管網站一度服務中斷
    2019年6月24日,因美國大型電信公司Verizon宣告了錯誤的路由資訊,導致Amazon、Cloudflare、Facebook的服務中斷,並且Cloudflare代管的多個網站—包括Overcast、WP Engine、Sonassi以及Discord等網路公司的服務中斷近2個小時。事件的起因是賓州的一家小型ISP,由於其公司內部採用了BGP優化器以提升內部網路的路由效能,而這些優化的路由資訊理應僅供內部網路使用,但該ISP卻誤將資訊宣告給其客戶,再被轉宣告給美國大型電信公司Verizon,使得在這2個小時中,大量的流量都被導向賓州的ISP,致使許多大型網站的服務因此中斷。此次事件除了檢討電信公司無條件接收且無任何過濾的路由機制,同時也呼籲不要使用BGP優化器,因為使用者無法保證這些優化後的BGP資訊不會被洩漏出去並導致嚴重的後果。
  • 巴西ISP設定錯誤,台灣公共DNS遭劫持約3分鐘
    2019年5月初,巴西一家ISP對外宣告了IP位址101.101.101.0以及前綴資訊/24,也就是對外宣告自101.101.101.0至101.101.101.255的IP位址區段均屬於該巴西ISP所有。但實際上,101.101.101.101這個IP位址理應屬於台灣的DNS服務—Quad101所有,用以提供使用者免費的DNS服務。幸得當時在兩邊溝通之下,流量的錯誤引導情形僅持續了3分半鐘,巴西ISP立即進行了修正,並未造成重大影響。
  • 奈及利亞ISP劫持Google網路流量
    2018年11月12日,位於奈及利亞的一家小型ISP,在進行網路升級配置時,錯誤地設定其路由資訊,宣告了應屬於Google的前綴資訊,導致Google相關服務因誤將其流量導至其他自治系統,其服務因而中斷了約1個小時。由於該路由資訊被宣告之後,基於相互信任之原則,中國、俄羅斯等之電信業者很快便採納了該錯誤的路由資訊,導致應前往Google的流量在到達中國電信時便被終止,使得封包無法順利前往Google取得服務,甚至一度被懷疑為惡意的BGP劫持。直至隔(13)日,奈及利亞ISP業者MainOne方出面道歉,解釋係其錯誤的配置所造成,並聲稱在發現後已立即更正。

(2)錯誤路線之BGP資安威脅事件

  • 歐洲行動網路流量被導至中國電信事件
    2019年6月6日時歐洲行動網路的封包因錯誤的路由宣告,被導至中國電信(China Telecom)。此次事件主要是起因於瑞士數據代管業者Safe Host,將錯誤的路由資訊宣告給與之合作並建立專用線路的中國電信,而中國電信在收到了有誤之路由資訊後,就成為進入Safe Host的唯一節點,導致大量的歐洲電信服務—包括瑞士、荷蘭以及法國的電信都受到影響。此次的BGP劫持事件持續了約2小時,此期間使用者投訴其網路明顯感覺到上網速度變慢,甚至連不上某些特定伺服器。雖然此次事件並未嚴重影響ISP的服務和運作,但為了避免類似的事件頻繁發生,代表著路由的基本保護措施是相當必要的。​
  • 台灣智慧光網設定錯誤,造成中華電信服務異常
    2018年11月19日,台灣中華電信網路發生連接部分國外網站服務延遲或中斷之現象,但Google、Youtube、Facebook以及國內網站不受影響。經查證後發現,其原因為台灣智慧光網在進行路由設定調整時有誤,並將其錯誤的路由資訊宣告給中華電信,導致中華電信聯外流量被導至台灣智慧光網,又因臨時驟增的流量湧入台灣智慧光網之網路,導致使用者在瀏覽國外網站時產生了壅塞之情形,使得中華電信客戶在訪問國外網站時,產生反應遲緩或服務中斷之狀況。中華電信人員發現後,立即停止與台灣智慧光網之網路連接,回復正常路由。此次事件持續了約30分鐘,中華電信已和台灣智慧光網建立路由異動相關標準作業程序,避免類似事故的再次發生。

(3)惡意攻擊之BGP資安威脅事件

  • 駭客進行BGP劫持攻擊,目標為美國三家支付處理公司
    2018年7月,美國三家支付處理公司Datawire、Vantiv以及Mercury分別遭受駭客BGP劫持攻擊。第一次攻擊始於7月6日,是由一家印尼的ISP業者所公告,該攻擊持續了約30分鐘,主要目標為Vantiv以及Datawire支付系統,幸得此次攻擊的宣告傳播範圍不大,未造成嚴重影響。第二次攻擊係於7月10日發動,主要是透過馬來西亞的ISP業者宣告錯誤的路由資訊,在22:17時,針對Mercury支付系統進行了第一波攻擊,持續了約30分鐘;而在23:37時再次進行了第二波攻擊,雖然此次僅持續了15分鐘,但針對的目標更廣、影響範圍更大。在同一天,Vantiv及Datawire也遭受到長達3小時的另一波BGP劫持攻擊。同月12日,馬來西亞ISP業者又宣告了錯誤的路由資訊,再次劫持了Vantiv以及Datawire的流量,並且持續了約3個小時。然而此次攻擊中,Datawire已經注意到其路由遭到劫持,並聲稱相同的路由資訊已重新控制其所屬的IP區段和路由資訊。而根據甲骨文(Oracle)公司的研究資訊,他們認為此次事件與2018年4月的Amazon AWS DNS劫持事件相當相似,因此認為此次攻擊只是一個開始,若不試圖解決BGP的安全問題,未來將會有更多且更嚴重的BGP劫持事件發生。
  • Amazon DNS遭劫持,駭客盜走約15萬美元以太幣
    在去(2018)年4月24日,Amazon的DNS伺服器遭駭客劫持約2小時,並將其流量導入假冒的網路錢包網站MyEtherWallet中,從不知情的受害者處竊取了約15萬美元的以太幣。之後,Amazon AWS發出聲明澄清,其服務以及Route53 DNS並沒有遭到駭客入侵或盜用,是Amazon的上游ISP遭到駭侵攻擊,並向外宣告了錯誤的Route53 DNS路由資訊,導致其部分流量被導入至惡意網站中。事後,MyEtherWallet也發出聲明,建議使用者先改以Cloudflare DNS伺服器使用其服務,並確保網站的SSL憑證標明「MyEtherWallet Inc.」,以避免因釣魚網站而蒙受損失。

TOP

三、BGP資安威脅防禦機制

網路路由器安全管理

為了防範路由器本身遭駭客入侵並利用,除了對BGP協定進行安全強化外,同時也必須針對路由器進行規範和要求,以達到較高的防護能量。根據國家通訊傳播委員會(NCC)之相關技術規範,其提出了下列要點有關網路路由器基本安全標的:

  1. 稽核紀錄:應產生內容完整之稽核紀錄,並可識別每筆紀錄是由哪一位使用者所產生。
  2. 加解密金鑰及演算法:應透過加解密演算法產生並使用之金鑰,以及透過加解密演算法為遠端連線提供防護。
  3. 殘餘資訊:每次使用時,應清除完畢前此使用之相關資訊,避免前次使用之相關資訊之外洩風險。
  4. 鑑別機制:應記錄並管理通行碼的任何管理機制,例如通行碼的長度及更換頻率等;並須具備並運行任何鑑別之機制,例如當使用者登入或未登入時之權限,或避免在鑑別過程中將任何資訊洩露於顯示器上等。除此之外,當使用者連續鑑別失敗時,應拒絕該使用者後續之要求,並進行後續行為管理。
  5. 安全功能行為:將其安全功能的變動和設置權限,設定為僅有授權之管理者方能進行更動。
  6. 管理功能規格:應具備本機登入或遠端登入管理功能,以及驗證韌體更新、更新前驗證之管理功能。
  7. 安全角色:對於使用者,其應接受經過授權之管理者角色,並可設定使用者為管理者。但對於管理者角色,雖可透過本機或遠端登入,但預設應不允許管理者透過遠端登入。
  8. 失效保全:啟動後,若其自我測試發生錯誤,應確保加解密金鑰以及使用者之任何相關資訊均仍處於被保護狀態。
  9. 重送攻擊:若發現重送之封包,應拒絕接收。
  10. 通行碼保護:應避免以明文方式儲存及顯示其通行碼。
  11. 可信賴之時戳:應具備可信賴之時戳,正確地紀錄稽核紀錄的日期時間。
  12. 可信賴更新:應具備檢測並查詢是否有更新的韌體版本,並且可以透過授權之管理者進行更新程序。除此之外,應具備一機制,在韌體更新前,驗證該更新版本之真偽。
  13. 安全功能自我測試:其啟動後,應進行安全功能自我測試,確保其服務可正常運作。
  14. 資源配置:應針對同時登入之管理者數量以及同時連結之無線用戶數進行資源配置之上限設定。
  15. 登入連線鎖定/終止:當管理者登入後,其閒置時間超過其允許之時間值,則若該連線為本地連線,應鎖定或終止該連線,並確保鎖定時不會洩漏任何管理者之資訊,且需再次鑑別方能解除鎖定。反之,若為遠端連線,則應立即終止該遠端連線。此外,應允許管理者自行終止其連線。
  16. 存取預設標語:管理者可設定登入畫面及提醒事項並於登入時顯示。
  17. 金鑰保護:防止金鑰共享及不得提供讀取各種金鑰之指令。

BGP安全管理功能

為增加BGP的安全性,以及減少意外造成之路由安全威脅和風險,有幾項針對BGP協定的設置,可以減少此類因意外造成的問題:

  1. 需限制最大路由數量(Prefix-Limit),限制接收的路由資訊之網段數量,對減少全表路由洩漏以及自身內存耗盡等問題,具有相當助益;或是限制自身宣告的網段數量,亦可減少因配置錯誤等造成之路由問題之影響程度。
  2. BGP路由管理應注意並防護駭客偽造網段、欺騙他人來源IP位址之惡意行為,例如反欺騙(Anti-Spoofing)機制。
  3. 除了驗證來源IP位址之外,應同時具備BGP宣告網段正確性之驗證,例如資源公鑰基礎建設(Resource Public Key Infrastructure, RPKI)機制。

RPKI概述

有鑑於BGP劫持事件以及路由錯誤設定的情形經常發生,網際網路工程任務組(IETF)訂定了一套用以解決大部分路由相關安全問題的資源公鑰基礎建設(RPKI)標準。RPKI標準主要適用於保護網際網路路由基礎建設,尤其針對BGP協定,提供了網際網路號碼資源資訊(例如IP位址等)連結到信任錨(Trust Anchor)的方法,也就是連接到一個可信的第三方並進行相關的驗證,以確保資訊的正確性。

  • 路由來源授權(ROA)
    為了確保路由資訊的正確性,RPKI允許單位發布路由來源授權(Route Origin Authorization,ROA),用以證明所收到的路由資訊中的IP位址和ASN是正確的組合。ROA本身是一個經過加密簽章的物件,標明了ASN和IP地址及前綴資訊的對應關係,當一個自治系統發布了一個前綴資訊時,便可以透過ROA去驗證該自治系統是否有權利發布這個前綴資訊。
  • 資源公鑰基礎建設(RPKI)
    RPKI標準可以透過認證網際網路資訊,以作為確保路由安全的一種模式。此標準允許區域網際網路註冊管理機構—例如亞洲區的機構為亞太網絡信息中心(Asia-Pacific Network Information Centre,APNIC)—的成員可簽發RPKI資源憑證以及列出其持有的網際網路號碼資源,並存於RPKI資料庫中,而這些資源便可以提供驗證,作為安全性的有效證據。亦即當一路由接受到新的路由資訊宣告時,若該自治系統已經佈署了RPKI,便可以自RPKI資料庫中下載新路由資訊宣告的憑證以及ROA資訊,從而判斷此路由資訊宣告是否有效,減少路由錯誤以及防止大部分的BGP劫持。

根據美國國家標準暨技術研究院的統計數據,2019年8月中,全球IPv4路由數量之RPKI統計,約有15.62%的路由申請ROA並通過驗證,但有0.83%之比例申請ROA卻尚未通過驗證,此外,有約83.55%之路由數尚未申請ROA、亦即並未施行RPKI。詳細資訊如下圖:

圖4、全球IPv4 RPKI統計圖(以路由數量計)

圖4:全球IPv4 RPKI統計圖(以路由數量計)

而亞太區的IPv4路由數量RPKI統計值,有12.06%的路由數已申請ROA並通過驗證,但有1.45%尚未通過驗證,此外,有86.49%並未施行RPKI。詳細資訊如下圖:

圖5、亞太區IPv4 RPKI統計圖(以路由數量計)

圖5:亞太區IPv4 RPKI統計圖(以路由數量計)

國內RPKI推行概況

在台灣,RPKI主要由國家通訊傳播委員會推動,其RPKI目前主要的憑證授權中心為台灣網路資訊中心(TWNIC),TWNIC會向其會員、也就是其資源持有者發放憑證,並且持有者可以透過TWNIC的管理系統進行RPKI相關資源的增修以及操作。

自台灣RPKI開始施行後,直到2019年8月中,以台灣IPv4路由數量統計,目前已有74.28%申請ROA並通過驗證,有25.72%的路由尚未申請ROA。詳細資料如下圖:

圖6、TWNIC IPv4 RPKI統計圖(以路由數量計)

圖6:TWNIC IPv4 RPKI統計圖(以路由數量計)

台灣的RPKI申請並通過驗證之比例,遠高於全球的15.62%以及亞太地區平均之12.06%,可見台灣網際網路使用各界對路由安全有足夠之警覺性,同時也願意為了增進自身之網路安全和品質,與國家通訊傳播委員會以及TWNIC攜手合作,減少BGP路由問題,強化台灣的網路安全體系。

各國RPKI推行概況

根據RIPE NCC之統計,截至2019年8月中旬,台灣IPv4 路由RPKI普及率高達74.28%,在全球258個ccTLD (country code Top-Level-Domain)中位居第17名,詳細資訊如下表:

表1:全球RPKI普及率狀況表

表1、全球RPKI普及率狀況表

根據表1之數據,在全球258個ccTLD中,部分國家本身之IPv4數量較少,因而較容易施行RPKI,達到較高之RPKI普及率。然而,由表中觀察台灣所屬之IPv4數量是RPKI普及率前20名中數量最多者,可見台灣之RPKI施行頗具成效,是為全球RPKI普及程度中之佼佼者。

TOP

四、分析與建議

面對網路日新月異的發展,其設計架構等缺點也隨之浮出,管理者必須維持警覺性,預防因意外的失誤導致網路服務的中斷或影響。並應避免使用BGP優化器等非規範內允許之額外設備,以免因意外洩漏而導致嚴重的網路事故。

未來BGP相關攻擊的數量可能持續增加,因此廠商除了必須要隨時監控自身網路狀況,也必須結合上下游供應商以及網路業者,建立密切合作以達到彼此相互監督、互助之效益。

在規範上,為了防止BGP劫持相關事件,建議網路相關業者儘速設定並通過RPKI驗證,如此便可透過ROA的內容驗證,確認對方是否有權宣告該路由區段。除可減少意外的路由錯誤,更可以防止多數的BGP劫持事件。

截至2019年8月中,根據RIPE NCC的統計,台灣網路產業業者已有高達74.28%的施行比例,遠高於全球的15.62% RPKI施行比例,顯示台灣路由防護體系已臻完備。目前台灣區主要憑證授權中心TWNIC透過RPKI服務系統,提供台灣ISP業者申請並設定ROA以及相關驗證,以確保台灣路由安全。

根據RIPE NCC的統計,截至2019年8月中,台灣RPKI施行比例為全球17名,已成為全球RPKI普及率之佼佼者外;透過RPKI之驗證,減少大多數的BGP路由意外, 同時大幅降低BGP劫持之資安威脅,讓台灣的路由網路防護體系更加完善。

TOP

回頁首