曾優雅擊退史上最兇狠的DDoS攻擊,AliGuard的高性能從何而來?
2016年10月21日,美國發生了一次震驚全球互聯網的安全事件,大半個美國的互聯網因為DDoS攻擊發生癱瘓,攻擊從清晨開始一直持續到傍晚,黑客發起了長時間多批次攻擊,直接導致twitter、Spotify、Netflix、Github、Airbnb、Visa等出現無法登陸的情況,而且twitter甚至都出現了長時間癱瘓的情況,因此造成的直接和間接經濟損失無法估量。這場網絡癱瘓從美國東部開始,一路蔓延至全美,根本原因是DNS服務商Dyn的服務器遭受了黑客的大流量DDoS攻擊,使得大量互聯網公司DNS解析失敗,以致無法提供服務。
DDoS作為互聯網領域非常敏感的一個詞,因為其強大的殺傷力,很多互聯網從業者都談之色變,在科技高度發達的今天仍舊是一個技術難題。
首先,發起攻擊的技術門檻越來越低,互聯網隨處可見各種攻擊工具,攻擊源代碼等,只要稍微懂一些計算機操作的人都可能參與進來。
其次,隨著互聯網的普及,特別是網絡基礎設施建設的投入極大地提升了互聯網帶寬,這在一定程度上也提升了黑客的攻擊能力。
同時,PC,移動接入設備,各種物聯網設備的大規模普及,任意設備都可能存在漏洞,只要能夠連網就非常容易被黑客利用成為攻擊工具。很多設備因為安全意識薄弱導致被入侵成為肉雞,遠程控制,隨時發起攻擊都成為可能。
除了技術上的原因,發起DDoS攻擊很多情況下可能是因為利益驅使,商業競爭,國際政治等多種其他原因。
如果說互聯網這張大網把全世界的人們彼此之間都連了起來,讓我們能夠如此簡單地享受科技帶來的便捷,那么DDoS攻擊一定是一把破壞這張網的邪惡魔劍,而今天阿里妹要介紹的阿里巴巴自研高性能DDoS攻擊防御產品AliGuard則是用來抵擋這把魔劍的金鐘罩和鐵布衫。
自研高性能防攻擊產品的發展歷程
一、當互聯網公司遇到傳統設備廠商
AIS前身阿里巴巴集團技術保障部于2012年末正式組建項目組探索做自研大流量攻擊防護產品開始到2013年中產品第一版正式上線,主要目標是通過定制化開發,為集團日益增長的安全需求提供保障,按照阿里巴巴集團業務自身特點量身定做一套高性能DDoS防護系統,為集團日益增長的業務提供技術保障。
在這之前全集團曾經采購過一些傳統設備廠商的商業設備用于DDoS攻擊清洗,商業設備價格昂貴,維護成本相對較高,而且整機的防御能力有限,使用過程中經常出現商業設備因為攻擊量太大導致設備的流表被打爆而造成無法服務的情況,從而直接影響了公司的正常業務。
我們決定開發自研設備主要有以下幾個原因:
1)商業設備版本迭代速度慢,我們需要專業定制化而不是大而全的系統;有時候一種新型的攻擊方式出現到大規模流量的時間非常短,這就要求軟件層面要做到自主可控才能將可能的潛在風險迅速解決掉;有時候適合自己的才是最好的,自己實現的DDoS清洗策略,根據客戶的需求隨時可以增刪改,只有自主可控才是核心科技。
2)商業設備性能有限,前面提到商業設備整體大機框式的架構就決定了無法大規模橫向擴容,但是我們自研的AliGuard具備彈性擴容的能力,只要業務場景需要從幾十G到幾個T的能力都可以在短時間內彈性伸縮的。而且今天傳統的服務器的計算能力以及網絡數據包處理能力都已經有了質的飛躍,AliGuard一臺普通的服務器就可以具備上百G的處理能力,一個普通集群就具備上T的能力。
歸根結底傳統設備廠商的DDoS防護產品并不能很好地跟上互聯網企業的高速發展的節奏。我們需要廉價且高性能的設備,廠商機框式的設備架構的整體的建設成本和人力投入非常巨大,阿里巴巴數據中心全球化的部署量勢必要求成本可控,具備自主知識產權。
自研產品使用傳統的x86服務器架構,普通服務器就可以輕松部署,上下線服務器和基礎的配置都非常簡單,不需要專業的安全工程師額外支持,日常維護成本低廉。但是價格廉價并不意味著功能少,性能差,到目前為止AliGuard已經具備了30多種防御策略,涵蓋主流的DDoS攻擊,從畸形包攻擊,各種大流量攻擊,到L7的http攻擊等等,業務場景也完全覆蓋阿里巴巴集團所有業務線。
圖1為AliGuard基本的防御模型,我們已經涵蓋了主流的DDoS攻擊場景。
圖1 AliGuard基礎防御模型
二、從單一用戶到多用戶的轉變
最開始AliGuard只是為了集團防護針對電商或者支付類業務所設計的一套非常定制化的DDoS攻擊清洗解決方案,使用了一套相對比較固定的防御策略模板。但是后面隨著阿里巴巴集團業務的高速發展,越來越多的業務線出現大流量DDoS防護需求,特別是云計算領域的快速崛起,一線的客戶直接就面臨攻擊防御需求,那么變革隨之而來,這使得我們擴展自身的產品架構、同時支持多用戶變得理所當然。
隨著版本的多次迭代升級,目前已經具備這樣的能力,每天成千上萬的客戶同時都會被保護起來。攻擊發生時,客戶彼此之間的業務相互不影響,DDoS攻擊的防御策略和攻擊數據都相互獨立,客戶可以非常直觀地看到實時展示出來的各種攻擊數據,而且我們已經開放給用戶部分聯動能力,可以讓客戶參與到攻擊聯動的過程中來。
下圖2就是適用于不同業務場景的清洗模型,我們的數據處理能力。
圖2 支撐多業務場景
三、從40g到400g這并不是一個巧合,技術積累決定了這條路可以走多遠
筆者今天還非常清晰地記得產品第一次上線沒多久,線上就有多次成功防御的案例,而且很快某存儲類產品被攻擊,第一次出現了單次40Gbps以上的攻擊,項目組的同學都非常震驚,竟然遇到了這么大流量的攻擊,這個值當時已經超過了某些商業設備的解決方案的防御能力。
注:憑借AliGuard的頂級防御能力,2014年,阿里巴巴抵御住了全球互聯網史上最大的一次DDoS攻擊,攻擊時間長達14個小時,攻擊峰值流量達到每秒453.8Gb。
如果自研再晚一些的話,可以想象還是存在不小的安全隱患的。當然,后續隨著集群能力的擴充,新的策略的不斷增加,集群的能力也在不斷提升,云產品被大流量攻擊那次,優雅防御450多G既可以說是出乎意料,也可以說在情理之中,因為在優雅防御的背后有足夠的技術能力和資源的儲備,才能在關鍵時刻讓產品成功抵御了這一次的大流量攻擊。
后續也多次出現過更大流量的攻擊,也是成功防御,沒有造成過大的損失,可以說在一場場惡戰中,產品一次次堅挺的表現,也充分證明了只有擁有足夠多的技術儲備做支撐才能在關鍵時刻做到“此時此刻,非我莫屬”。
發展到今天,自研高性能攻擊防護產品AliGuard,成功服務阿里巴巴集團3年多時間。X86服務器的橫向可擴展性,CPU的計算能力的不斷提升,特別是近幾年網卡容量快速的提升,從1G、10G、到40G、100G網卡,我們團隊緊跟技術前沿,每一次單機能力提升的背后都是我們AIS的網絡研發的技術預研走在最前面,只有把最先進的技術預研投入放在一個非常重要的位置,我們才有可能在這條路上走得更遠,走得更堅實。
圖3是AliGuard的一種典型部署場景,因為使用集群化部署,所以整集群的能力可以做彈性伸縮,在保證整體功能不變的前提下,適應多種不同的容量需求,非常適合全球化多區域部署。
圖3 AliGuard線上典型部署場景
四、智能化防御和大數據能力
阿里巴巴集團每天流量型的DDoS攻擊次數不下幾千次,攻擊流量從幾十M到幾百G不等,攻擊持續時間也長短不一,有數據表明這里大部分攻擊都在1個小時以內結束,但是很多攻擊者在攻擊過程中會因為無法達到目的而不斷地嘗試更換攻擊方式,這就帶來非常大的挑戰,原本一套清洗模板用到底的模式不再簡單適用了。因為,嘗試使用一套萬能的模板帶來的問題可能就是當前不存在的攻擊方式對應的策略如果強制開啟就可能引入正常流量受到影響的問題。
在原有防御算法基礎上我們提出了Smart智能化防御的概念,簡單來說就是在攻擊過程中,如果攻擊者不斷更換攻擊方式,我們可以通過對攻擊流量做實時分析,判斷出當前的攻擊類型,根據攻擊類型的變化在非常短的時間內秒級實現防御策略的調整收斂。
圖4是一個基本的智能化防御的模型,核心的邏輯從上到下基本上分成三個角色:通過分析攻擊信息,判斷攻擊類型,對防御策略做實時的調整,保證清洗效果的同時,減少了大量的人力投入,實現了真正的自動化,智能化防御。
圖4 Smart智能化防御的基本模型
采用智能化防御模型之后,我們在具備了抗大流量攻擊能力的基礎上,能夠更一步地提供更多信息,而且具備實時更新的能力:
1. 現在誰在攻擊我?
2. 攻擊流量分別有多大?
3. 攻擊的目標地址,域名是什么?
4. 在攻擊全過程中,黑客都采用了什么樣的攻擊手段?
一方面發動攻擊的肉雞信息和每時每刻的攻擊量已經被我們實時記錄,另一方面被攻擊的目標,不管是域名還是目標IP也都會被實時統計出來,為smart模型提供強有力的數據支撐。數據在實現實時支撐業務邏輯的同時,每天積累的大量數據已經形成了一張無形的網,為后續更進一步的攻擊溯源,立案偵查提供強有力的證據。
未來的挑戰
每天線上的攻擊者都在嘗試研究我們的攻擊防護策略,并想方設法地繞過清洗策略,所以挑戰時刻都存在。
如何才能應對日益復雜的攻擊類型?
一方面我們的基本防護策略的迭代更新一直都在進行中,攻擊和防御的聯動從未停止過腳步;另一方面我們已經具備高性能的深入到數據包內部的DPI能力,讓攻擊者的攻擊手法無處遁形;同時在此基礎上會通過引入更高性能的協議棧來解決更多復雜的攻擊類型,提升4-7層整體的清洗能力。
如何面對更大流量的攻擊?
在現有大流量DDoS攻擊已經成為互聯網的家常便飯,我們在擁有足夠的接入帶寬的同時也可以考慮其他的方式作為一個補充,比如在攻擊的發起一側終結非法的流量。當然要想終結大流量DDoS攻擊,需要在足夠多的地方擁有清洗攻擊流量的能力,所以就近攻擊源的清洗方案也是一個非常好的選擇。
另一方面,一些新的網卡或可編程芯片也是值得我們關注的,特別是阿里在16年11月投資的Barefoot的Tofino芯片單片處理能力達到驚人的6.5Tbps,對我們來說自研定制化能力的未來想象空間也是非常巨大的。
【本文為51CTO專欄作者“阿里巴巴官方技術”原創稿件,轉載請聯系原作者】