原來遊戲技術行業最大的祕密居然是...

歡迎你們前往騰訊雲+社區,獲取更多騰訊海量技術實踐乾貨哦~安全

本文由騰訊遊戲雲發表於雲+社區專欄服務器

本篇文章主要是分享遊戲業務面臨的安全風險場景,以及基於這些場景的特色,咱們應該如何作好對應的防禦。微信

【1、背景:遊戲行業DDoS攻擊愈演愈烈】網絡

《2017年度遊戲行業DDoS態勢報告》顯示,中國成爲全球DDoS攻擊最大受害區,佔比84.79%。架構

img

第二個特色是,大流量攻擊愈來愈多,其中百G以上攻擊佔比逐年加大:負載均衡

img

第三個特色是遊戲行業被攻擊狀況嚴重,已經是最大受害行業。而其中棋類類被攻擊尤爲嚴重,百G以上攻擊棋類類佔比57%:ui

img

另外,國內已經開始出現超大流量攻擊。在今年4月8日,騰訊雲防禦了1.23T的超大攻擊流量,DDoS攻擊愈來愈兇猛。面對愈來愈嚴峻的安全攻擊現狀,如何構築咱們的業務防線,這是全部遊戲研發和發行商都要面對的問題。架構設計

【2、常見遊戲風險場景】設計

鑑於遊戲業務面臨日益嚴峻的安全攻擊風險,咱們有必要對其進行進一步的剖析,爲後續創建相應的安全防禦打好基礎。遊戲安全場景由兩部分要素組成。一部分是業務屬性,另外一部分是技術和部署架構;業務屬性包括了遊戲類型、攻擊趨勢、延遲要求等,決定了被DDoS的機率、攻擊流量的大小,須要使用什麼類型的防禦資源,如BGP仍是三大運營商的單線線路;技術和部署架構,包括使用的通訊協議、部署架構等,決定了須要使用什麼防禦產品來對抗。3d

業務屬性

業務屬性能夠從如下圖中的幾個方面來展開:

img

一、 遊戲類型

近幾年隨着手遊的持續走熱,愈來愈多的手遊類型出現,常見的手遊類型如MOBA,MMO,以及16年開始興起的棋類等。MOBA和MMO等遊戲因爲地域屬性粒度較粗,基本是以國家維度來作發行,競爭激烈但基本是良性競爭居多;而棋類主要集中在國內發行,因爲地方特點玩法各異,因此地域屬性極強,競爭對手較爲明確,容易產生不當競爭行爲,典型的就是利用DDoS攻擊打擊競爭對手。

二、 生命週期

不一樣的業務在生命週期的不一樣階段,所可能受到的攻擊狀況也不一樣。以棋類,特別是地方棋類爲例,在新游上線初期,可能就會被「圍毆」打癱。由於這個時候攻擊影響和成本堪稱「性價比」最高,新遊首發階段,若是連續被攻擊幾天,不只遊戲口碑變差,運營投入的廣告轉換率和留存率也會很低,給發行商帶來很大經濟損失。

三、 延遲要求

在防禦業務時,兩個方面須要考慮,一個是防住攻擊,第二是儘可能不影響玩家體驗。可否防住攻擊,與高防產品技術、架構和資源有關,後續再深刻介紹。爲了避免影響玩家體驗,建議網絡延遲不要增長至超過上述延遲的上限。又因網絡延遲主要和網絡線路質量有關,故建議MOBA,MMO使用BGP線路的防禦資源;棋類類可使用BGP(常態下業務訪問+基礎防禦)+三網(大流量下防禦)的組合防禦資源。

四、 攻擊類型

從近年來的攻擊狀況看,主要以反射性UDP攻擊爲主,且流量巨大。18年初出現利用Memcached能夠放大5萬倍的流量,很是驚人,急需有效的UDP防禦策略來防禦。從攻擊時長和頻次來看,必定程度上能夠預判攻擊意圖和後續攻擊的狀況,便於作防禦準備。例如對於攻擊時間長,頻次高的狀況,甚至十分鐘左右就是一輪高峯值攻擊,這種狀況下,對方勢必要打癱目標,因此開發商須要和雲廠商一塊兒合做才能作好針對性防禦。

五、 攻擊大小

從以上2017年的攻擊統計狀況來看,攻擊主要集中在2-4月份,整年有3/4的時間攻擊量和頻次都不高。 從攻擊大小上看,87.1%的攻擊是在50G如下,約51.2%的攻擊是在10G如下。因此是否常態下置備 50G 或 20G的防禦資源,在攻擊超過這個基數時也能夠提供防禦?總結說,是否能夠以「保底+彈性」的防禦模式,作到防禦效果和成本的均衡?

技術和部署架構

img

一、 通用遊戲架構

從遊戲通用架構上來看,玩家經過CDN下載更新資源包,經過域名登陸游戲,而後鏈接分配的遊戲服開始遊戲。其餘遊戲周邊服務都在內網。惡意攻擊者經過假裝成正常玩家,拿到全部直接公網暴露給遊戲玩家的域名、公網IP等,從而經過其控制的互聯網的巨量肉雞對遊戲進行攻擊;在這個遊戲架構場景中,可能被攻擊的對象是CDN,DNS,登陸服入口,遊戲服入口等暴露在公網的服務。其中CDN和DNS通常都是平臺型的服務,攻擊很少。重點攻擊對象是登陸服,遊戲服務等。

二、 不一樣延遲需求

在防禦時,登陸、支付等服務相比遊戲服,延遲容忍度更高一下;因此防禦措施與遊戲服不一樣,能夠考慮電信聯通等單線的大帶寬高防資源;遊戲服的延遲要求與類型密切相關,能夠參見上述說起的延遲要求。

三、 能否更換 IP

從業務技術架構上看,可否更換IP,決定了防禦的靈活性;若能夠更換IP,則能夠靈活的調度多個IP實現「游擊戰」式的靈活防禦;若是不能更換IP,只能用帶寬先把攻擊流量承接下來,而後再作清洗;這種狀況在攻擊量超過帶寬上限時,服務端公網入口已經被擁塞至幾近癱瘓,業務請求幾乎都不能被正常處理。

四、 是否可多地域部署

此外,若是業務能夠多地域部署,則能夠更好的利用多地的高防資源防禦,而且玩家遊戲體驗更好。

【3、防禦思路總結】

img

架構設計階段

把安全防禦考慮在內,儘可能採用公網IP可更換或服務端提供域名訪問、可多地域部署的架構

業務部署階段

規劃好暴露在公網的服務(即須要防禦的目標)的數量,使其處在一個合理區間,以便在單點攻擊發生時,不會影響所有玩家;同時也要綜合考慮防禦成本和效果;

根據遊戲類型,以及自身的競爭環境是否健康,規劃遊戲是否須要獨立的防禦資源,遊戲內不一樣玩家分組,不一樣業務模塊是否須要獨立防禦;不然多業務能夠共享防禦資源;

根據延遲要求,選擇防禦資源的地域和線路;一個遊戲內的不一樣服務,延遲要求可能也不相同,例如大廳服一般相對遊戲服的延遲要求就低一些;

根據業內攻擊數據統計,以及自身的競爭現狀,規劃是否須要保底+彈性的靈活防禦模式,以平衡防禦效果和成本;

業務被攻擊時

根據攻擊狀況,調整保底和彈性模式;結合攻擊頻率,調整防禦策略。若是是大流量攻擊,可是還在防禦帶寬內,能夠考慮繼續使用大帶寬防禦或者適當升級帶寬以保障防禦效果;若是是大流量帶寬攻擊頻繁,超過能夠購買的帶寬或者防禦成本太高,能夠考慮多高防 IP調度的方式;

如遇到頻繁且複雜的攻擊場景,有必要創建多層防禦。例如使用多 IP 靈活調度做爲第一層,第二層可使用大帶寬的三網防禦兜底,針對 CC 能夠作到有效防禦,在一些複雜場景,必定程度上能夠作自定義防禦;

騰訊雲專家助力

在以上各階段,能夠聯繫騰訊雲團隊,能夠一塊兒更有效的作好多輪次攻防。

【4、騰訊雲新一代高防解決方案】

結合上述的防禦思路,在面對愈來愈嚴峻的安全威脅時,可使用騰訊雲新一代高防解決方案來保障業務安全。騰訊雲新一代高防解決方案提供了全方位多層次的 DDoS 防禦方案,能夠徹底契合上述防禦思路。您能夠根據業務部署特色選擇 DDoS 高防 IP、DDoS 高防包,並根據防禦需求配置高級安全策略、CC 防禦策略、水印防禦策略等以靈活應對多種 DDoS 和 CC攻擊威脅。

img

防禦域名

防禦域名提供智能解析和自動切換的能力。 在同時具有包括BGP的多線路防禦資源時,優先解析到BGP;若發生攻擊致使BGP線路被封禁,系統會自動切換到三網防禦資源,此時會根據訪問者的來源IP自動解析到對應的運營商線路,從而儘量的保證最優的延遲;

高防IP

藉助BGP高防IP的力量來防禦,客戶端鏈接到高防IP,高防IP再轉發給遊戲服務器;能夠轉發雲外或者雲上的服務器。

高防包

對於部署在騰訊雲上的業務,高防包就像一層護甲,直接在現有業務IP上生效,作到快速接入高防,業務無需作變動;高防包分兩種:

ü 單IP高防包,爲騰訊雲上一個服務器或者負載均衡提供防禦;

ü 多IP高防包,也叫共享高防包,能夠防禦多個騰訊雲服務器或者負載均衡;

高級安全策略

若是DDoS攻擊流量的報文中有必定特徵,能夠經過設置針對性的安全策略,進行有針對性的過濾

CC防禦策略

CC防禦一直是個難點,經過在CC檢測清洗層面,設置自定義的檢測和處理策略,能夠有效阻擊必定的CC攻擊。若是一些特殊的CC流量已經到達服務器,也能夠經過開啓緊急防禦模式,收緊防禦策略,從而達到防禦效果。

空鏈接防禦

在CC防禦中,空鏈接是一種經常使用的手段。騰訊雲後臺會先與請求端創建鏈接,待有非空鏈接到來時,才使請求端與服務端真正創建鏈接,避免空鏈接攻擊對服務產生影響。

水印防禦

若是CC攻擊頻繁且攻擊量大,急需完全防禦CC,可使用水印防禦的方案。騰訊雲新一代高防解決方案經過在業務報文中增長動態標籤,即水印的方式,來識別是不是遊戲的正常流量,且潛在攻擊者沒法經過抓取報文進行回放等方式進行攻擊,100%有效過濾攻擊流量。

【5、常見遊戲類型防禦方案】

MOBA/MMO

對於 MOBA和MMO 類型的現有項目可使用BGP高防包覆蓋全部公網服務;

新遊戲可使用BGP高防IP或者BGP 高防包覆蓋全部公網服務,在發生攻擊被黑洞時,能夠經過提高防禦套餐快速解除黑洞狀態,恢復業務訪問;

棋類

對於棋類業務來講,攻擊狀況比較複雜。攻擊流量大、類型多樣、變化快,攻擊人員更專業,攻擊週期可能會很長,少數狀況甚至長達數月或超過一年。因此須要有一套應對複雜情況的方案。根據經驗,咱們創建了一個多層次防禦體系,能夠節節對抗,有針對性的變化防禦策略,達到有效防禦的目的。

防禦方案總體上能夠採用防禦域名+ BGP 高防IP + 三網高防 IP + 高防IP 靈活調度的策略。第一層防禦,使用BGP高防IP防禦中小流量,而且做爲業務對外正常服務的入口;第二層防禦,使用三網高防或BGP高防IP靈活調度來防禦、三網高防做爲保底措施;第三層,若攻擊報文有長度、內容特徵,可使用自定義防禦策略,過濾這些報文;第四層,如有明顯CC攻擊,默認的空鏈接防禦以及緊急防禦模式(更嚴格的過濾策略),能夠幫助業務正常提供服務,也能夠在研發或上線後逐步接入水印防禦,100%有效防禦CC攻擊。

【6、結語】

以上便是對常見遊戲場景和防禦方案的簡要分析,若有DDoS防禦需求,能夠聯繫騰訊雲商務或行業架構師溝通詳細需求和新一代高防解決方案方案。

問答 如何防範DDos攻擊? 相關閱讀 小隱隱於野:基於TCP反射DDoS攻擊分析 實戰分享:如何成功防禦1.2T國內已知最大流量DDoS攻擊 「吃雞」全球登頂背後的神助攻,瞭解一下?

**此文已由做者受權騰訊雲+社區發佈,原文連接:cloud.tencent.com/developer/a… **

歡迎你們前往騰訊雲+社區或關注雲加社區微信公衆號(QcloudCommunity),第一時間獲取更多海量技術實踐乾貨哦~

相關文章
相關標籤/搜索