該如何抵禦一場無情的分布式拒絕服務攻擊 DDoS

2021-09-23 06:43:59 字數 1971 閱讀 8046

2023年5月17日星期天,網路犯罪分子向我所在的企業——hotschedules公司,負責為來自餐廳、醫院以及零售行業的超過200萬員工提供雲服務——發動了一場惡毒的分布式拒絕服務攻擊。從星期天夜間到星期二下午,這些惡意人士在長達45個小時內阻撓著使用者正常檢查並管理自己的工作規劃——而且從未透露其攻擊動機。

雖然這對於每一位ceo來講都是一場令人難忘的噩夢,但對我個人而言這卻成了一次寶貴的經驗並值得為公司的整場頑強對抗感到自豪。hotschedules在過去16年當中曾成功化解過多次網路攻擊,且沒有經歷過任何一次服務中斷。這次來襲的攻勢異常兇猛,相信我的經歷幫助大家從中總結教訓並獲得啟示。

由於好萊塢大片的錯誤引導,我們往往將網路攻擊的對抗想象成是正義與**兩方的黑客們各自坐在冷冰冰的螢幕前,利用散發出綠色螢光的**在網際網路當中激烈過招。但在現實生活中,網路安全對抗需要企業內每一位員工的參與。如果大家正在經驗一家企業,那麼攻擊活動會考驗您的企業文化、團隊協作以及集體使命感。團隊要麼找到辦法完成向客戶作出的業務承諾,要麼眼睜睜看著業務體系陷入癱瘓。每一項網路攻擊手段都擁有對應的技術性解決方案,但員工的實際反應才真正決定著企業的最終命運——更具體地講,也就是客戶眼中的勝負關係。

人為因素

星期天傍晚,此次ddos攻擊的訊息正式傳開,hotschedules公司的全體員工立刻衝進自己的辦公室。沒有應急部署,也沒有臨時方案。在這場對抗當中,人們自發採取了主動態度,按照既定方式開始應對。

我們的團隊不眠不休地工作了兩天,同時保持著令人難以置信的工作強度與效率水平。資料中心的地板成了臨時休息區,工程師們始終堅持在自己的崗位之上,只是偶爾到這裡小憩一會兒。很多企業恐怕不具備如此出色的員工隊伍。歸根結底,這取決於我們雇用誰、如何培訓他們以及如何幫助他們在工作當中獲得認同感與成就感。作為ceo,我對於自己的員工團隊感到無比驕傲。

網路戰爭

在每一位面向客戶的團隊成員都在努力維持服務進行並與客戶進行交流的同時,我們的it部門則集中力量解決網路威脅。雖然沒有繼續資料遭遇洩露,但我們對這樣的惡意攻擊仍然缺乏必要準備。

攻擊過程當中,每秒資料傳輸流量達到了驚人的10至15 gb每秒(即gbps)——這相當於我們正常傳輸速率的250倍。當我打**給從業銀行及電信工作的朋友需求幫助時,恐怖的數字令我們也呆立當場。對於大多數商業企業來講,這樣的流量都遠遠超過預期。只有整個團隊的成員在精心的編排之下通力協作,再配合極為昂貴的網路資源投入,才有可能應對得了這麼龐大的流量壓力。

我們很難確切掌握攻擊活動是否會停止,又將在何時停止。無論我們怎樣輾轉騰挪,ddos都如影隨形。當時我們曾經試圖將服務利用其它ip位址進行發布,但犯罪分子很快就再次跟了上來。因此,我們做出了乙個艱難的決定,即發布「黑洞」來捨棄一部分流量。這事實上傳達出了這樣的一種資訊——「你已經惹到我們了,我們絕不會讓你實現任何進一步破壞。」

最後,勞累的安全工程師們在受保護子網上重新設計了整套服務,而相關保護則由akamai公司的雲安全解決方案提供——其流量承受上限高達321 gbps。到5月19號星期二的凌晨2:37,我們的服務終於重新上線。

經驗總結

聯邦調查局方面一直無法確定是誰組織了這次惡意攻擊,而且整個過程中我們也沒有收到任何贖金要求、宣告或者動機解釋。來自多個國家的成千上萬臺伺服器都參與到了攻擊當中,而且我們發現其中有六成左右來自海外地區。面對這樣撲朔迷離的狀況,我懷疑我們永遠也抓不到這群犯罪分子。

考慮到有90%的企業遭受過ddos攻擊,我想奮力抵抗是值得的——無論需要付出怎樣的代價。從雲環境退縮回內部設施,就像是為了避免事故而從汽車回退到馬匹那樣,簡直是荒謬。考慮到內部技術方案的高昂成本,餐飲行業當然更傾向於使用**低廉的雲與移動計算產品。雖然剛剛遭受了攻擊,但我仍然號召整個行業以勇敢且積極的心態面對這一切。

此次ddos攻擊是我從業以來帶來壓力最大的一次事故,但它卻也讓我積累到了寶貴的經驗。在整個過程中,我們沒有丟失任何資料,並且仍然為客戶提供一定程度的服務支援。我還知道,公司的一組同事連續45個小時一直在幫助客戶解決問題。對於企業而言,這樣出色的員工顯然比任何技術成果都更加重要。

如何設計乙個麻雀般的微型分布式架構?

本文由 mariolu 發表於 雲 社群專欄 隨著業務頻寬自然增長,使用者端頻寬增長,假設業務回源率不變的情況下,磁碟快取淘汰更新 淘汰 速率變快,表現為以下業務瓶頸 iowait變高 回源頻寬變高,由於磁碟空間大小受限的快取淘汰導致回源率變高 為了說明這個原理。我們假設兩個極端 乙個是裝置磁碟容量...

如何實現分布式搜尋(一)實現簡單的分詞器

搜尋可以說是咱們生活中非常常見的乙個功能了,基本上只要是個網際網路公司都離不開搜尋模組,但是實現它的方案卻有點麻煩。眾所周知,咱們的資料都是從資料庫來的,因此一講到搜尋,我們就會想能不能用資料庫解決,然後只要是個正常人,大腦經過0.01秒的思考,就會拋棄資料庫 原因有三 1 資料庫的搜尋 也就是模糊...

關於如何實現乙個Saga分布式事務框架的思考

關於saga模式的介紹,已經有一篇文章介紹的很清楚了,鏈結在這裡 分布式事務 saga模式。關於tcc模式的介紹,也已經有一篇文章介紹的很清楚了,鏈結在這裡 關於如何實現乙個tcc分布式事務框架的一點思考。1.子事務動作 saga的子事務包含兩個動作 t和c tcc的子事務包含三個動作 try co...