面試官問:知道DDoS攻擊嗎?大概講講它的原理

目錄

那 DDoS 攻擊究竟是什麼?

下面給一個更加形象點的例子,解釋下DDoS攻擊。

下面是SYN Flood進行DDoS攻擊的實現原理

如何應對 DDoS 攻擊?

高防服務器

黑名單

DDoS 清洗

CDN 加速


最近幾次面試,喜歡問一個問題:知道DDoS攻擊嗎?講講它的原理。大概說的比較明白不到1/3。

其實,像全球互聯網各大公司,均遭受過大量的DDoS。

2018年,GitHub 在一瞬間遭到高達 1.35Tbps 的帶寬攻擊。這次 DDoS 攻擊幾乎可以堪稱是互聯網有史以來規模最大、威力最大的 DDoS 攻擊了。在 GitHub 遭到攻擊後,僅僅一週後,DDoS 攻擊又開始對 Google、亞馬遜甚至 Pornhub 等網站進行了 DDoS 攻擊。後續的 DDoS 攻擊帶寬最高也達到了 1Tbps。

那 DDoS 攻擊究竟是什麼?

DDos全名Distributed Denial of Service,翻譯成中文就是分佈式拒絕服務。指的是處於不同位置的多個攻擊者同時向一個或數個目標發動攻擊,是一種分佈的、協同的大規模攻擊方式。單一的DoS攻擊一般是採用一對一方式的,它利用網絡協議和操作系統的一些缺陷,採用欺騙和僞裝的策略來進行網絡攻擊,使網站服務器充斥大量要求回覆的信息,消耗網絡帶寬或系統資源,導致網絡或系統不勝負荷以至於癱瘓而停止提供正常的網絡服務。

下面給一個更加形象點的例子,解釋下DDoS攻擊。

我開了一家有五十個座位的重慶火鍋店,由於用料上等,童叟無欺。平時門庭若市,生意特別紅火,而對面二狗家的火鍋店卻無人問津。二狗爲了對付我,想了一個辦法,叫了五十個人來我的火鍋店坐着卻不點菜,讓別的客人無法吃飯。

上面這個例子講的就是典型的 DDoS 攻擊,一般來說是指攻擊者利用“肉雞”對目標網站在較短的時間內發起大量請求,大規模消耗目標網站的主機資源,讓它無法正常服務。在線遊戲、互聯網金融等領域是 DDoS 攻擊的高發行業。

攻擊方式很多,比如ICMP Flood、UDP Flood、NTP Flood、SYN Flood、CC 攻擊、DNS Query Flood等等。

下面是SYN Flood進行DDoS攻擊的實現原理

SYN Flood是一種利用TCP協議缺陷,發送大量僞造的TCP連接請求,從而使得被攻擊方資源耗盡(CPU滿負荷或內存不足)的攻擊方式。

一次正常的建立TCP連接,需要三次握手:客戶端發送SYN報文,服務端收到請求並返回報文表示接受,客戶端也返回確認,完成連接。

SYN Flood 就是用戶向服務器發送報文後突然死機或掉線,那麼服務器在發出應答報文後就無法收到客戶端的確認報文(第三次握手無法完成),這時服務器端一般會重試並等待一段時間後再丟棄這個未完成的連接。

一個用戶出現異常導致服務器的一個線程等待一會兒並不是大問題,但惡意攻擊者大量模擬這種情況,服務器端爲了維護數以萬計的半連接而消耗非常多的資源,結果往往是無暇理睬客戶的正常請求,甚至崩潰。從正常客戶的角度看來,網站失去了響應,無法訪問。

如何應對 DDoS 攻擊?

高防服務器

還是拿開的重慶火鍋店舉例,高防服務器就是我給重慶火鍋店增加了兩名保安,這兩名保安可以讓保護店鋪不受流氓騷擾,並且還會定期在店鋪周圍巡邏防止流氓騷擾。

高防服務器主要是指能獨立硬防禦 50Gbps 以上的服務器,能夠幫助網站拒絕服務攻擊,定期掃描網絡主節點等,這東西是不錯,就是貴~

黑名單

面對火鍋店裏面的流氓,我一怒之下將他們拍照入檔,並禁止他們踏入店鋪,但是有的時候遇到長得像的人也會禁止他進入店鋪。這個就是設置黑名單,此方法秉承的就是“錯殺一千,也不放一百”的原則,會封鎖正常流量,影響到正常業務。

DDoS 清洗

DDos 清洗,就是我發現客人進店幾分鐘以後,但是一直不點餐,我就把他踢出店裏。

DDoS 清洗會對用戶請求數據進行實時監控,及時發現DOS攻擊等異常流量,在不影響正常業務開展的情況下清洗掉這些異常流量。

CDN 加速

CDN 加速,我們可以這麼理解:爲了減少流氓騷擾,我乾脆將火鍋店開到了線上,承接外賣服務,這樣流氓找不到店在哪裏,也耍不來流氓了。

在現實中,CDN 服務將網站訪問流量分配到了各個節點中,這樣一方面隱藏網站的真實 IP,另一方面即使遭遇 DDoS 攻擊,也可以將流量分散到各個節點中,防止源站崩潰。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章