淺論DDOS攻擊和防御
大多數互聯網公司的業務主要依賴在線服務,DDoS攻擊作為最簡單有效的攻擊手段,經常被黑產作為攻擊互聯網在線服務的首選。本文以甲方的視角介紹下常見的抵御DDoS攻擊的手段以及甲方經常遇到的一些問題,希望可以幫助到大家。中培偉業《黑客攻防于信息安全技術實戰》專家袁老師在這里對此進行了詳細介紹:
什么樣的網站容易遭受攻擊?
從現實的角度來看,哪家網站的知名度高,受到攻擊的幾率也越大,前年打P2P,去年打直播,DDoS攻擊的背后多是惡性商業競爭,以不大的成本可以讓競爭對手業務中斷,造成巨大損失,性價比不可謂不高。
哪些時段容易遭受攻擊?
理解了攻擊動機后,其實很容易總結何時容易被攻擊:
(1)新產品發布,比如羅老師發布錘子那次
(2)大型市場活動,比如電商的雙十一和雙十二
(3)業務高峰期,比如直播和在線教育業務的晚上
DDoS攻擊的成本
用安全圈的一句話,在國外打垮一個網站需要一頓自助餐的錢,在國內只需要一頓快餐的錢。隨便在某及時通訊軟件里面一搜,DDoS攻擊的類型非常多,但從甲方角度和結果來說只有兩種:
(1)流量型攻擊,就是把你帶寬打滿,用戶無法正常訪問導致業務中斷,衡量單位是G;
(2)CC攻擊,就是把你重要的接口服務打死,流量不一定很大,但是請求速率一般很大,比如登陸、下單、支付等,衡量單位是QPS。
硬件防火墻和WAF可以抵御DDoS攻擊嗎?
這是個開放性的問題,需要區分不同情況(這里的機房帶寬指的是機房給你分配的帶寬):
(1)如果是流量型攻擊,攻擊流量小于機房出口帶寬時,具備防DDoS攻擊能力的硬件防火墻和WAF可以抵御;攻擊流量高于機房出口帶寬時,只能遺憾了。
(2)如果是CC攻擊,攻擊流量小于機房出口帶寬時,具備防CC能力的硬件防火墻和WAF可以抵御;攻擊流量高于機房出口帶寬時,只能遺憾了。
遺憾的事,相當一部分DDoS攻擊輕松上幾十G,用戶購買的出口帶寬上1G的都不多。可見,面對現實中的DDoS攻擊時,本地的硬件防火墻和WAF作用有限。
常見的抗D手段有哪些?
從甲方角度講,可以按照抗D設備/服務部署的位置分為:
(1)自購帶有抗D抗CC功能的硬件防火墻或者WAF
(2)機房的流量清洗服務,比如高防機房
(3)云安全廠商的云抗D服務(CDN廠商提供的流量清洗服務也算這種情況)
(4)運營商(比如電信云堤)的流量清洗服務
云抗D是啥原理?
云抗D服務和CDN接入原理類似,使用的是所謂替身防護的技術。用戶在DNS服務器上將需要保護的web服務的域名指向云抗D中心提供的高防IP或者CNAME域名,云抗D中心將訪問該web服務的請求再轉發給用戶的業務服務器,相當于充當了一個nginx反向代理,針對該web服務的攻擊會被云抗D中心清洗,正常的用戶請求才會轉發給用戶的業務服務器。
使用云抗D黑客直接打IP咋辦?
問題也就來了,黑客如果直接攻擊用戶業務服務器的IP,就會繞過云抗D中心。為了防止這種情況出現,最簡單的解決方案是,用戶的業務服務器提供兩個IP,IP1是平時使用的,對外暴露,IP2平時不使用,同時限制IP2僅允許云抗D中心的IP段訪問,一旦切入云抗D中心后,聯系機房拉黑IP1,同時啟用IP2即可,通常IP1和IP2可以指向同一服務器或者負載均衡。
使用云抗D后如何獲取客戶端真實IP?
這個和使用CDN情況類似,比較常見的解決方案是在http協議層攜帶客戶端的IP,比如x-forwarded-for字段。
三線與BGP抗D的區別是什么?
在國內現實的問題跨網訪問的巨大延時,為了解決這個問題,通常有兩種簡單辦法,一個是申請聯通電信移動三網的IP資源,一個是使用相對昂貴的BGP資源。對應的抗D云服務也提供了三線和BGP服務,本質上區別就是一個需要做分區解析,一個不用,價格上一般BGP高防會貴些,從跨網訪問來看兩者都不錯。