每個(gè)網(wǎng)站都會(huì)受到網(wǎng)絡(luò)攻擊,區(qū)別在于你如何提前計(jì)劃以及你的基礎(chǔ)設(shè)施如何應(yīng)對(duì)。
我們很難知道網(wǎng)絡(luò)攻擊響應(yīng)和恢復(fù)的真實(shí)情況,因?yàn)槠髽I(yè)都不愿意透露詳細(xì)信息,畢竟這可能帶來(lái)負(fù)面的財(cái)務(wù)后果。然而,如果企業(yè)不分享自己的故事,其他企業(yè)可能會(huì)盲目地走上相同的道路。企業(yè)應(yīng)該分享自己的真實(shí)經(jīng)驗(yàn),并成為提高威脅情報(bào)的貢獻(xiàn)者。
我們是為中型和大型企業(yè)提供Web內(nèi)容管理的基于SaaS的供應(yīng)商。我們的客戶在全球范圍管理著醫(yī)藥和金融服務(wù)等行業(yè)數(shù)百甚至數(shù)千個(gè)網(wǎng)站。本文中的客戶不愿意透露真實(shí)名字,他們是一家大型公共醫(yī)療服務(wù)機(jī)構(gòu),專注于幫助供應(yīng)商提高財(cái)務(wù)和運(yùn)營(yíng)業(yè)績(jī)。該公司的客戶包括數(shù)千家醫(yī)院和醫(yī)療服務(wù)提供者,管理著數(shù)十億沒(méi)有的開支。
該公司遭受的DDoS攻擊的規(guī)模非常大,在攻擊高峰期,8600萬(wàn)同時(shí)在線的用戶從全球10萬(wàn)臺(tái)主機(jī)點(diǎn)擊器網(wǎng)站。在攻擊39小時(shí)后,該公司成功安裝了防御措施。下面讓我們看看這個(gè)攻擊過(guò)程。
初始攻擊向量
在該公司年度會(huì)議的前夕,我們收到了一個(gè)令人不安的警報(bào)。該公司的Web服務(wù)器在接收巨量的流量,該公司是內(nèi)容和分析SaaS提供商,這種流量可能會(huì)顯著影響服務(wù)可用性及該公司的聲譽(yù)。對(duì)此,時(shí)間非常緊迫。
在初始攻擊向量方面:
· 所有請(qǐng)求都是100%合法的網(wǎng)址,所以我們不能輕易地過(guò)濾掉惡意流量
· 攻擊來(lái)自世界各地,包括朝鮮、愛(ài)沙尼亞、立陶宛、中國(guó)、俄羅斯和南美
· 其中60%的流量來(lái)自美國(guó)內(nèi)部
· 該攻擊取消引用DNS,直接攻擊IP地址
通過(guò)進(jìn)入到亞馬遜的Route 53,重新進(jìn)行一些調(diào)整以及迅速切斷到這些IP地址的流量,我們能夠成功抵御這些初始攻擊向量。一切都恢復(fù)正常,我們?nèi)玑屩刎?fù),但事實(shí)證明這只是第一波攻擊,接下來(lái)才是真正的攻擊。
那天晚上,攻擊者又卷土重來(lái),通過(guò)DNS名稱來(lái)攻擊網(wǎng)站,這意味著我們不能使用之前采用的相同的IP封鎖做法。流量再次大幅度增加。
在這樣的時(shí)刻你會(huì)問(wèn)自己這樣的問(wèn)題,“我們是等死,還是加強(qiáng)防御?”隨后我們與客戶首席信息官進(jìn)行了交談,我們決定聯(lián)手加強(qiáng)防御。作為SaaS公司,我們必須提供持續(xù)的可靠的服務(wù),這關(guān)系到我們的聲譽(yù)。我們同意與客戶共同分擔(dān)成本(這可能是幾萬(wàn)美元)來(lái)對(duì)抗攻擊。
面對(duì)第二波攻擊,我們意識(shí)到我們可以立即部署一些緩解措施:
窗體底端
* 這個(gè)公司只有美國(guó)客戶,但很多流量來(lái)自國(guó)外。我們迅速部署了一些防火墻規(guī)則,只允許美國(guó)的流量,這立即阻止了40%的流量。
* 我們?cè)贏WS Route 53配置背后插入了Web應(yīng)用防火墻,并調(diào)整了一些HA代理服務(wù)器,它會(huì)為FBI來(lái)收集大量日志信息以事后進(jìn)行分析。
* 第三,我們特意打破了我們的自動(dòng)縮放配置。自動(dòng)縮放具有擴(kuò)展和縮小的觸發(fā)器,我們改變了這個(gè)觸發(fā)器,讓縮小觸發(fā)器比擴(kuò)展觸發(fā)器更高。這意味著隨著更多的流量進(jìn)來(lái),系統(tǒng)將適當(dāng)?shù)財(cái)U(kuò)展,但永遠(yuǎn)不會(huì)達(dá)到縮小的閾值。其結(jié)果是,每個(gè)實(shí)例都將永久留在服務(wù)中,完整保留其日志信息,可提供給FBI。
此時(shí)已經(jīng)是凌晨1點(diǎn)鐘,“軍備競(jìng)賽”已經(jīng)開始。
DDoS攻擊第二天
我們的攻擊者已經(jīng)在擴(kuò)展,亞馬遜云計(jì)算服務(wù)也在擴(kuò)展,而攻擊者又?jǐn)U展一些,AWS也擴(kuò)展一些。這一直持續(xù)到第二天。我們向客戶的董事會(huì)提供每小時(shí)更新。
面對(duì)這個(gè)DDoS攻擊,我們有18個(gè)非常大型的計(jì)算密集型HA代理服務(wù)器,以及約40臺(tái)Web服務(wù)器。Web服務(wù)器群非常大,盡管我們已經(jīng)排除了非美國(guó)的流量部分,還有來(lái)自美國(guó)內(nèi)部的60%的合法網(wǎng)址,其中大部分都在訪問(wèn)無(wú)法被緩存的動(dòng)態(tài)服務(wù)。我們的Web服務(wù)器群部署在HA代理防火墻/負(fù)載均衡器配置背后,這又位于CloudFront(AWS全球分布式內(nèi)容分發(fā)網(wǎng)絡(luò))背后,其本身部署在Route 53(AWS的全球冗余DNS平臺(tái))背后。
大約到了晚上7點(diǎn)鐘,事情有所轉(zhuǎn)變。我們繼續(xù)擴(kuò)展,而攻擊者并沒(méi)有再擴(kuò)大規(guī)模。此時(shí),我們正維持來(lái)自全球10萬(wàn)多臺(tái)主機(jī)的8600萬(wàn)并發(fā)連接。我們對(duì)流量進(jìn)行了測(cè)量,震驚地發(fā)現(xiàn),我們?cè)谕ㄟ^(guò)AWS基礎(chǔ)設(shè)施每秒處理20千兆持續(xù)流量。這相當(dāng)于2014年DDoS攻擊中觀察到的行業(yè)中值的40倍。
攻擊者最終放棄了攻擊。最后,該公司的首席信息官告訴我們,如果他們?cè)谧约旱臄?shù)據(jù)中心托管該網(wǎng)站,他們會(huì)在攻擊的8小時(shí)候就無(wú)法響應(yīng)。對(duì)于成功應(yīng)對(duì)這個(gè)攻擊長(zhǎng)達(dá)36小時(shí),在亞馬遜云服務(wù)的總成本不到1500美元。
如何應(yīng)對(duì)DDoS攻擊
我們成功抵御了這次攻擊,因?yàn)槲覀兲崆坝兴鶞?zhǔn)備,但這樣的經(jīng)歷讓我們更加了解如何應(yīng)對(duì)大規(guī)模DDoS攻擊。下面是保護(hù)你的數(shù)據(jù)中心和企業(yè)網(wǎng)站的一些做法:
1. 設(shè)計(jì)、配置和測(cè)試你的基礎(chǔ)設(shè)施來(lái)抵御DDoS攻擊。利用托管服務(wù)提供商的知識(shí)以及他們的協(xié)助來(lái)設(shè)置這些測(cè)試。
2. 知道你環(huán)境中的正常情況是什么樣,當(dāng)不正常時(shí)設(shè)置報(bào)警。
3. 對(duì)于面向公眾的域名,在內(nèi)部域使用其別名。這將讓你非常迅速地做出反應(yīng),實(shí)時(shí)做出DNS變更,而不需要依賴第三方服務(wù)提供商。
4. 了解在可能有挑戰(zhàn)性的情況中如何有效管理DNS變化。
5. 對(duì)于來(lái)自數(shù)百個(gè)攻擊源的大量多線程請(qǐng)求(以快速耗盡服務(wù)器資源),應(yīng)該進(jìn)行流量測(cè)試。每個(gè)測(cè)試運(yùn)行至少三個(gè)小時(shí)以維持你的響應(yīng)時(shí)間,然后測(cè)試之間保持一定的時(shí)間。在進(jìn)行這些測(cè)試之前,應(yīng)獲得明確的許可,因?yàn)檫@可能造成服務(wù)的終止或取消。
6. 在構(gòu)建自動(dòng)擴(kuò)展配置時(shí),不要使用CPU負(fù)載作為指標(biāo)。DDoS的最好證據(jù)是入站HTTP請(qǐng)求數(shù)量的增加,所以最好設(shè)置的警報(bào)是“進(jìn)入網(wǎng)絡(luò)”觸發(fā)。
7. 快速擴(kuò)展,但緩慢縮小,擴(kuò)展和縮小的閾值比率應(yīng)該為4:1或者2:1。這可以讓你快速響應(yīng)初始攻擊,并減小再次擴(kuò)展的可能性。
8. 如果使用AWS彈性負(fù)載均衡,激活“跨區(qū)域負(fù)載均衡”選項(xiàng)。這是分配流量的最好選擇,并顯著減少對(duì)DNS基礎(chǔ)設(shè)施的負(fù)載。
作為一個(gè)行業(yè),我們應(yīng)該聯(lián)手合作來(lái)更好地了解敵人的戰(zhàn)術(shù)、技術(shù)和程序,以保持領(lǐng)先于壞人。