上古神話中,龍生九子,其六爲贔屓(bi xi),又名霸下,力大無窮,喜負重。在阿里安全也有這麼一套技術框架以此命名。
上古神獸——霸下安全
名如其意,霸下的責任是支撐阿里安全產品的底層技術框架,它面向的用戶是安全產品,給安全產品提供所須要的一切技術元素,諸如接入、數據傳輸、配置下發、策略執行、在線近線計算、存儲、檢索。經過拼接組合這些安全產品必備的元素,就能很是快速地構建出一個全新業務場景的產品,而不用再從零開始設計、探路、踩坑。讓安全產品,在與外部的黑客、黑灰產鬥爭中作到迅捷快變。性能優化
這套強大的技術框架爲今年的雙11保駕護航,並立下赫赫戰功。今天,咱們就一塊兒探祕基於其研發的全新的「七層流量清洗」業務。網絡
「2016年以前,咱們並未針對交易鏈路去作專項的防控,如今去看至關因而‘裸奔’的狀態!」霸下-七層流量清洗業務產品負責人硯墨這句話使人印象深入。架構
2016年三、4月份的時候,黑灰產肆虐,連續形成故障。原來,聚划算天天早上10點推出的秒殺被黑產盯上了。阿里安全的工程師進行排查的時候發現,在出故障的時候,全部的交易流量90%以上都不是實人,而是黑產發起的機器流量。而正是這些垃圾流量佔用了絕大多數通道,讓正常的用戶幾乎下不了單,致使交易系統幾近癱瘓。框架
「當時的安全在交易鏈路上的防控是很是很是弱的。」硯墨連續用了兩個「很是」。運維
自此以後,阿里安全成了專項團隊,針對交易鏈路進行防控。從2016年4月份一直持續到2016年11月份。特別是在2016年雙11以前,阿里安全的技術團隊「996」了一個多月,去進行相關的佈防,終於,2016年的雙11平穩度過。性能
然而,在接下來的2016年雙12中,誰也沒有料到,一個月前還固若金湯的防線,竟然差一點點就被黑產「打穿」!優化
「2016年的雙12沿用的是以前雙11的策略,咱們佈置了兩道防線。第一道防線佈防於集團的網關,第二道防線設置在用戶最終提交訂單的環節。可是在零點的時候,黑產居然突破了第一道防線!說實話,當時我冷汗都給嚇出來了。」硯墨描述起當時的情形。加密
不過所幸的是,黑產流量在突破第一道防線以後,再無進展,由於阿里安全工程師佈防的第二道防線成功守住了。架構設計
從雙11到雙12,僅僅一個月的時間,黑產的技術能力就有了大幅度的提高。硯墨回憶說,在2016年雙12,黑產大概用了三種手段,去繞開第一道防線。而後所有的黑產流量就已呈「兵臨城下」之勢,打到了第二道防線上,也就是應用的前面。若是再過去,就直接到交易了!
敵人已到城門口
「當時咱們統計了一下前15分鐘的黑產流量,大概有近兩千萬的PV是由機器發起的,佔據了整個流量的30%多。若是這部分流量將咱們的兩道防線所有打穿的話,後果不堪設想。雙12當天必定是一個P1故障!系統也應該基本癱掉了。」硯墨說。
「咱們發現最核心的問題是攔截效果很差,應對外部黑灰產的變化的時候,咱們的響應速度也比較慢。黑產天天都在研究咱們,對咱們的系統很是瞭解,也知道哪些地方比較薄弱。」 硯墨說。鑑於2016年黑產的猖獗形成的「不堪」,阿里安全的工程師們決定打造全新的系統來對抗,可是面臨的挑戰也是史無前例的。
從整個底層架構來看,至關於把技術上的全部網絡產品從新作了一遍。從應用角度、從代碼角度,都得所有從新寫。新系統的架構,不管是從設計邏輯上,仍是理念層面的,與之前的都徹底不一樣。
「與上下游團隊、交易團隊的會議當時開了很長很長時間,大概持續了一兩個月,都在討論這個問題。反反覆覆,反反覆覆。第一次反正是談都沒得談,直接說這架構不行,讓咱們回去從新搞。後來,咱們的作法就是,去作各類各樣的壓測、驗證,好比穩定性的驗證,包括CPU、內存的可控邏輯。接着,咱們和之前的架構去一一作對比,好比進程開銷有什麼樣的優點等。所有列下來,而後再去找相關的團隊談。然而,仍是沒有被接受。一方面是以爲這個技術是全新的,另一方面,是以爲運營和運維的壓力很大,由於他們原先不須要去關心單獨的安全問題,如今要多考慮這樣的一個因素。」硯墨說。
固然,通過漫長的討論,以及各個團隊的負責人、集團的架構師團隊、阿里安全的架構師的反覆驗證,從數據上證實,這個項目的風險是可控的。最終,各方也就贊成了。
事實證實,這套新系統的不管是性能、功能仍是穩定性角度,都甩了老系統幾條街。
「這個項目啓動於去年雙11,第一次獲得驗證是今年的618大促。」硯墨說。
2017年二、3月間,阿里安全技術團隊就把「霸下-七層流量清洗」系統的整個架構設計了出來。事實上,這套全新的系統從立項到發佈總共也就半年的時間。在今年的5月18日,「霸下-七層流量清洗」系統就已經準備就緒。
618大促的時候,整套系統替換掉了去年的第二道防線, 8月9日,成功在全集團的統一網關層進行了部署。到9月9日酒水節的時候,系統已是所有就緒,相對於去年雙11來講,鳥槍換炮。
酒水節至2017年雙11期間,阿里安全技術團隊還對系統進行了版本的更新,修復了一些Bug,並作了性能優化。同時,提早進行安全策略的準備,好比一些模型、攔截名單之類的。
在10月11日的時候,包括物理架構和安全策略都所有定型,而後就進入全鏈路壓測階段。
「在10月國慶節後的第一週第一次壓測的時候,咱們還發現了不少問題,而後在一週以內把這些問題所有解決了。第二次全鏈路壓測也順利地過了,從性能和策略角度都所有過了。但其實也作了不少性能方面的優化和改動,小夥伴們很是給力,都加班加點熬夜完成。在最後一次全鏈路壓測的時候,就沒有什麼問題了,看看數據就行了。」硯墨輕描淡寫地講出雙11的備戰狀況。
天貓2017雙11的總交易額爲1682億元,其中,交易峯值達到了32.5萬筆/秒,比去年的數據有着很大幅度的提高。使人稱奇的是,今年的雙11基本沒有出現大量用戶反饋「沒法下單」的狀況。毫無疑問,這裏面也有「霸下-七層流量清洗」系統的一份功勞。
據硯墨介紹,2017年雙11,阿里安全技術團隊所研發的全新流量清洗系統設置了4層防禦,從開始渲染訂單的時候就進行防控。而根據實際監測的狀況來看,90%以上的黑產流量或惡意流量被第1、第二道防線過濾掉了,而最終交易系統的流量純淨度高達99.85%。
2016年年初,黑產最爲猖獗的時期。
硯墨說,「黑灰產的利潤遠遠超出全部人的認知,並且只要是有優惠或者秒殺的商品,他們都會去搶。例如一個洗髮水原價19塊錢,他們用1塊錢秒到,一轉手保底就有10塊錢入帳。10塊錢雖然看起來很小,可是考慮到全網全部的優惠,可能一天就能讓他們「薅」走成千上萬塊。而這些原本是咱們提供給消費者的實惠!」。
當時,黑產經過一些防控最弱的通道,可是很快,阿里安全的工程師就將其堵死。黑產發現這條路被堵以後,而後又繞道從一些「人跡罕至」的路口,找一些非標準的路徑,也被阿里安全的工程師識破並拒之門外。
黑產又生一計,開始花大價錢去破解手淘。儘管手淘的全部交易都是加密的,可是金錢的誘惑是巨大的,黑產費力找來一些老版本的手淘,而後去進行破解,獲取裏面的通信協議等等,而後經過這些協議、腳本去模擬、下單。然而又一次地,阿里安全的工程師們重點增強了老版本手淘的防控,也沒有給黑產可乘之機。
硯墨說,與黑產的你來我往,就是經典的安全攻防教程。
據介紹,全新的流量清洗系統也充分考慮了用戶的體驗。「霸下-七層流量清洗」系統對交易承諾的時間是5毫秒之內,而整個鏈路包含了網絡請求經過網關,通過流量清洗系統的檢驗,再送到交易。
「只有這樣,才能讓用戶無感知。」硯墨說。
實際上,今年雙11前,市面上出現了大量的秒殺軟件,而阿里安全的情報團隊和工程師們迅速從流量中發現了異常,並進行有針對性的佈防,使得這些黑產無功而返。
「霸下-七層流量清洗」系統還有一項很是牛的數據,那就是對流量的斷定時間大幅縮短。在一年以前,一個流量被斷定爲機器流量,到流量被攔截,最長耗時達到15秒!而今年,這一時間暴減至幾毫秒!也就是說,即便黑產軟件可以在一秒內發起大量的請求,那阿里的安全防禦系統也能夠在幾毫秒內直接攔掉。
「今年雙11的GMV能再創新高,達到驚人的1682億元,技術進步真的發揮了很大的做用。」硯墨感慨到。據悉,各條業務線也反饋,今年雙11從流量清洗系統過去的流量純淨度很是高,充分保障了業務的正常運營!
把通道給真實的用戶,把優惠送給「剁手黨」,把黑產流量清洗掉,這就是「霸下-七層流量清洗」系統的使命。
硯墨表示,他和小夥伴們已經在着手準備雙12了。