科技日報記者 朱麗
當地時間10月4日,Facebook 及其旗下Instagram和WhatsApp等應用全網宕機,停機時間近7小時,瀏覽器在嘗試打開時顯示DNS錯誤。Facebook官方發布聲明稱,因更新BGP路由器導致DNS權威服務器離線進而造成長達7個小時之久的中斷事故。
北京郵電大學計算機學院(國家示范性軟件學院)信息網絡中心路由安全研究團隊聯合互聯網域名系統國家工程研究中心(ZDNS)專家通過對事件當天的路由報文進行回溯分析,簡單還原整個事件發生的過程,并從互聯網基礎設施分布的均衡性和冗余性方面對路由維護、監測與防御、域名系統冗余設計等方面提出一些建議。本次技術分析部分成果來源于國家重點研發計劃“大規模安全可信的編址路由關鍵技術和應用示范”項目課題“網間互聯可信路由關鍵技術與設備研發”,該課題主要研究網間互聯可信路由關鍵技術,支持域間路由行為安全協作和攻擊防范。
BGP和DNS偶發性事故聯動是主因
分析發現,Facebook重要服務的域名解析失效了,導致大量的Facebook應用服務訪問不可達,另外一個嚴重的問題是Facebook AS32934相互依賴的服務中間件和審核軟件開始失效,從而導致整個數據中心的網絡崩潰,最后不得己以物理的暴力方式進入機房恢復設備。研究認為,此次事件的主角是BGP和DNS偶發性事故聯動造成的重大事件。
專家進一步解釋說,BGP和DNS作為網絡空間的基礎設施,是網絡空間的命門所在,猶如人體的動靜脈,聯動性的故障必然造成規模性失血,持續時間長且極具破壞性的中斷通常可以歸咎于控制平面的某些問題。
分析還發現,從互聯網碼號資源分配看,Facebook主要有三個自治域,從地址前綴分布可以看出,AS32934是Facebook的主力AS,我們通過分析FDNS日志,發現該自治域集中了Facebook大部分的應用服務,令人費解的是,Facebook所有的DNS權威服務器全部位于AS32934中。“這相當于把所有雞蛋都放進了一個籃子中,一旦出現問題,后果非常嚴重。”專家說。
為了做進一步的深入分析,研究團隊基于Alexa網站排名從全球6個測量點對全球Top1000網站的權威服務器分布進行了測量。
“我們挑選了Top30網站,從權威DNS地址分布、前綴聚合分布、AS聚合分布進行數據分析,發現國外很多重要應用服務網站大都存在類似Facebook的問題,這里amazon.com例外,它的權威分布冗余度較高,這可能與2018年亞馬遜權威DNS遭遇BGP劫持教訓有關。”專家表示,國內的主流網站防護比較好,基本都有冗余備份。
隨后,聯合研究團隊又把數據擴展到Top100網站,Top1000網站,整體冗余情況也很不樂觀,Top100網站中有超過50%的網站DNS權威冗余度較低,Top1000網站中有接近70%的網站權威服務器集中在單一自治域中。
多措共舉,防范于未然
通過事件的回溯分析,專家認為,BGP和DNS的一系列巧合操作造成了此次事件的嚴重后果,因此可以看到BGP和DNS誤操作的“網絡核彈”威力。為此,聯合研究團隊在路由維護、事件監測防御以及DNS冗余度方面,提出以下建議:
一是路由維護。BGP路由作為網間互聯互通的基本協議,簡單而不簡約。任何自動化的操作,如果沒有全局的知識庫作為路由過濾的支撐,比較容易發生錯誤的配置,需要對危害性的命令有“特別嚴格”地警示和確認。
二是路由監測與防御。目前著名的路由監測平臺如BGPStream、ThousandEyes、Downdectcor都可以檢測出事件的發生,然而大部分系統關注的是事件的漏報率和誤報率,忽視了事件所涉及前綴的敏感度以及前綴的歸屬責任人。建議建立敏感前綴管理人的臺賬機制,能在事件發生的第一時間通知管理人,這是路由安全防御的有效防范手段。
三是域名系統冗余設計。DNS系統的本質是一個分布式的數據庫,這種結構允許對整體數據庫的各個部分進行本地控制且互相關聯。如亞馬遜amazon.com的權威域授權體系在多元化層面要優于facebook.com,所以其抗風險能力要強于Facebook。另外,DNS系統在架構設計和技術路線選擇時要盡量避免采用單一化架構和技術,應從部署形式和部署位置等層面考慮技術多元性。
四是域名體系管理“頂層設計”。根據互聯網已披露信息,事發期間Facebook除了面向互聯網公開的業務受到影響,其面向內部的業務(會議系統、認證系統等)貌似也受到影響,從而可以推斷其DNS系統不但承載外部業務域名,還承載了大量面向內網的域名解析,進而加劇了故障修復時間。這提醒我們域名體系的管理必須要從頂層設計開始,基于業務面向的對象、重要性、所屬安全隔離域等因素規范域名空間及資源的劃分和使用。
五是域名體系風險控制。本次Facebook出現如此嚴重的故障,在運維管理層面也有值得反思之處。如域名的TTL值大小在應用層面決定著能切換和調度的速度,應用側一定希望越短越好,而從DNS系統運維層面看則是時間越短,遞歸DNS的緩存時間也會越短,一旦權威DNS出現問題,域名整體服務的容錯能力會大幅降低。另外,互聯網域名服務體系解析邏輯嚴謹,想要完成從客戶端到服務端的業務訪問和交互,需經過由終端到遞歸DNS、遞歸DNS從根、頂級域到二級域,再到權威DNS的多層查詢。想要完成整個業務接入訪問,任何一個環節出現問題都會導致業務不可用。應重視自身權威系統的管理外還應加強域名體系各層級的狀態監測和感知。