相信很多大型網(wǎng)站遭遇到DDoS攻擊,導(dǎo)致網(wǎng)站無法訪問而又難以解決,包括個(gè)人博客也會遭遇DDOS的“洗禮”,對此感同身受。所以,本文我們一起來了解下DDOS攻擊并分享一些在一定程度范圍內(nèi)的應(yīng)對方案。
關(guān)于DDOS攻擊
分布式拒絕服務(wù)攻擊指借助于客戶/服務(wù)器技術(shù),將多個(gè)計(jì)算機(jī)聯(lián)合起來作為攻擊平臺,對一個(gè)或多個(gè)目標(biāo)發(fā)動DDoS攻擊,從而成倍地提高拒絕服務(wù)攻擊的威力。
通常,攻擊者將攻擊程序通過代理程序安裝在網(wǎng)絡(luò)上的各個(gè)“肉雞”上,代理程序收到指令時(shí)就發(fā)動攻擊。
隨著網(wǎng)絡(luò)技術(shù)發(fā)展,DDOS攻擊也在不斷進(jìn)化,攻擊成本越來越低,而攻擊力度卻成倍加大,使得DDOS更加難以防范。比如反射型DDoS攻擊就是相對高階的攻擊方式。攻擊者并不直接攻擊目標(biāo)服務(wù)IP,而是通過偽造被攻擊者的IP向全球特殊的服務(wù)器發(fā)請求報(bào)文,這些特殊的服務(wù)器會將數(shù)倍于請求報(bào)文的數(shù)據(jù)包發(fā)送到那個(gè)被攻擊的IP(目標(biāo)服務(wù)IP)。
DDOS攻擊讓人望而生畏,它可以直接導(dǎo)致網(wǎng)站宕機(jī)、服務(wù)器癱瘓,對網(wǎng)站乃至企業(yè)造成嚴(yán)重?fù)p失。而且DDOS很難防范,可以說目前沒有根治之法,只能盡量提升自身“抗壓能力”來緩解攻擊,比如購買高防服務(wù)。
DDoS攻擊簡介
分布式拒絕服務(wù)攻擊(DDoS攻擊)是一種針對目標(biāo)系統(tǒng)的惡意網(wǎng)絡(luò)攻擊行為,DDoS攻擊經(jīng)常會導(dǎo)致被攻擊者的業(yè)務(wù)無法正常訪問,也就是所謂的拒絕服務(wù)。
常見的DDoS攻擊包括以下幾類:
網(wǎng)絡(luò)層攻擊:比較典型的攻擊類型是UDP反射攻擊,例如:NTP Flood攻擊,這類攻擊主要利用大流量擁塞被攻擊者的網(wǎng)絡(luò)帶寬,導(dǎo)致被攻擊者的業(yè)務(wù)無法正常響應(yīng)客戶訪問。
傳輸層攻擊:比較典型的攻擊類型包括SYN Flood攻擊、連接數(shù)攻擊等,這類攻擊通過占用服務(wù)器的連接池資源從而達(dá)到拒絕服務(wù)的目的。
會話層攻擊:比較典型的攻擊類型是SSL連接攻擊,這類攻擊占用服務(wù)器的SSL會話資源從而達(dá)到拒絕服務(wù)的目的。
應(yīng)用層攻擊:比較典型的攻擊類型包括DNS flood攻擊、HTTP flood攻擊、游戲假人攻擊等,這類攻擊占用服務(wù)器的應(yīng)用處理資源極大的消耗服務(wù)器處理性能從而達(dá)到拒絕服務(wù)的目的。
DDoS攻擊緩解最佳實(shí)踐
建議阿里云用戶從以下幾個(gè)方面著手緩解DDoS攻擊的威脅:
縮小暴露面,隔離資源和不相關(guān)的業(yè)務(wù),降低被攻擊的風(fēng)險(xiǎn)。
優(yōu)化業(yè)務(wù)架構(gòu),利用公共云的特性設(shè)計(jì)彈性伸縮和災(zāi)備切換的系統(tǒng)。
服務(wù)器安全加固,提升服務(wù)器自身的連接數(shù)等性能。
做好業(yè)務(wù)監(jiān)控和應(yīng)急響應(yīng)。
DDOS攻擊應(yīng)對策略
這里我們分享一些在一定程度范圍內(nèi),能夠應(yīng)對緩解DDOS攻擊的策略方法,以供大家借鑒。
1.定期檢查服務(wù)器漏洞
定期檢查服務(wù)器軟件安全漏洞,是確保服務(wù)器安全的最基本措施。無論是操作系統(tǒng)(Windows或linux),還是網(wǎng)站常用應(yīng)用軟件(mysql、Apache、nginx、FTP等),服務(wù)器運(yùn)維人員要特別關(guān)注這些軟件的最新漏洞動態(tài),出現(xiàn)高危漏洞要及時(shí)打補(bǔ)丁修補(bǔ)。
2.隱藏服務(wù)器真實(shí)IP
通過CDN節(jié)點(diǎn)中轉(zhuǎn)加速服務(wù),可以有效的隱藏網(wǎng)站服務(wù)器的真實(shí)IP地址。CDN服務(wù)根據(jù)網(wǎng)站具體情況進(jìn)行選擇,對于普通的中小企業(yè)站點(diǎn)或個(gè)人站點(diǎn)可以先使用免費(fèi)的CDN服務(wù),比如百度云加速、七牛CDN等,待網(wǎng)站流量提升了,需求高了之后,再考慮付費(fèi)的CDN服務(wù)。
其次,防止服務(wù)器對外傳送信息泄漏IP地址,最常見的情況是,服務(wù)器不要使用發(fā)送郵件功能,因?yàn)猷]件頭會泄漏服務(wù)器的IP地址。如果非要發(fā)送郵件,可以通過第三方代理(例如sendcloud)發(fā)送,這樣對外顯示的IP是代理的IP地址。
3.關(guān)閉不必要的服務(wù)或端口
這也是服務(wù)器運(yùn)維人員最常用的做法。在服務(wù)器防火墻中,只開啟使用的端口,比如網(wǎng)站web服務(wù)的80端口、數(shù)據(jù)庫的3306端口、SSH服務(wù)的22端口等。關(guān)閉不必要的服務(wù)或端口,在路由器上過濾假IP。
4.購買高防提高承受能力
該措施是通過購買高防的盾機(jī),提高服務(wù)器的帶寬等資源,來提升自身的承受攻擊能力。一些知名IDC服務(wù)商都有相應(yīng)的服務(wù)提供,比如阿里云、騰訊云、360磐云等。但該方案成本預(yù)算較高,對于普通中小企業(yè)甚至個(gè)人站長并不合適,且不被攻擊時(shí)造成服務(wù)器資源閑置,所以這里不過多闡述。
5.限制SYN/ICMP流量
用戶應(yīng)在路由器上配置SYN/ICMP的最大流量來限制SYN/ICMP封包所能占有的最高頻寬,這樣,當(dāng)出現(xiàn)大量的超過所限定的SYN/ICMP流量時(shí),說明不是正常的網(wǎng)絡(luò)訪問,而是有黑客入侵。早期通過限制SYN/ICMP流量是最好的防范DOS的方法,雖然目前該方法對于DdoS效果不太明顯了,不過仍然能夠起到一定的作用。
6.網(wǎng)站請求IP過濾
除了服務(wù)器之外,網(wǎng)站程序本身安全性能也需要提升。系統(tǒng)安全機(jī)制里的過濾功能,通過限制單位時(shí)間內(nèi)的POST請求、404頁面等訪問操作,來過濾掉次數(shù)過多的異常行為。雖然這對DDOS攻擊沒有明顯的改善效果,但也在一定程度上減輕小帶寬的惡意攻擊。
2.3 部署DNS智能解析
通過智能解析的方式優(yōu)化DNS解析,可以有效避免DNS流量攻擊產(chǎn)生的風(fēng)險(xiǎn)。同時(shí),建議您將業(yè)務(wù)托管至多家DNS服務(wù)商。
屏蔽未經(jīng)請求發(fā)送的DNS響應(yīng)信息
丟棄快速重傳數(shù)據(jù)包
啟用TTL
丟棄未知來源的DNS查詢請求和響應(yīng)數(shù)據(jù)
丟棄未經(jīng)請求或突發(fā)的DNS請求
啟動DNS客戶端驗(yàn)證
對響應(yīng)信息進(jìn)行緩存處理
使用ACL的權(quán)限
利用ACL,BCP38及IP信譽(yù)功能
2.4 提供余量帶寬
通過服務(wù)器性能測試,評估正常業(yè)務(wù)環(huán)境下所能承受的帶寬和請求數(shù)。在購買帶寬時(shí)確保有一定的余量帶寬,可以避免遭受攻擊時(shí)帶寬大于正常使用量而影響正常用戶的情況。
3. 服務(wù)安全加固
對服務(wù)器上的操作系統(tǒng)、軟件服務(wù)進(jìn)行安全加固,減少可被攻擊的點(diǎn),增大攻擊方的攻擊成本:
確保服務(wù)器的系統(tǒng)文件是最新的版本,并及時(shí)更新系統(tǒng)補(bǔ)丁。
對所有服務(wù)器主機(jī)進(jìn)行檢查,清楚訪問者的來源。
過濾不必要的服務(wù)和端口。例如,對于WWW服務(wù)器,只開放80端口,將其他所有端口關(guān)閉,或在防火墻上設(shè)置阻止策略。
限制同時(shí)打開的SYN半連接數(shù)目,縮短SYN半連接的timeout時(shí)間,限制SYN/ICMP流量。
仔細(xì)檢查網(wǎng)絡(luò)設(shè)備和服務(wù)器系統(tǒng)的日志。一旦出現(xiàn)漏洞或是時(shí)間變更,則說明服務(wù)器可能遭到了攻擊。
限制在防火墻外進(jìn)行網(wǎng)絡(luò)文件共享。降低黑客截取系統(tǒng)文件的機(jī)會,若黑客以特洛伊木馬替換它,文件傳輸功能將會陷入癱瘓。
充分利用網(wǎng)絡(luò)設(shè)備保護(hù)網(wǎng)絡(luò)資源。在配置路由器時(shí)應(yīng)考慮針對流控、包過濾、半連接超時(shí)、垃圾包丟棄、來源偽造的數(shù)據(jù)包丟棄、SYN閥值、禁用ICMP和UDP廣播的策略配置。
通過iptable之類的軟件防火墻限制疑似惡意IP的TCP新建連接,限制疑似惡意IP的連接、傳輸速率。
4. 業(yè)務(wù)監(jiān)控和應(yīng)急響應(yīng)
4.1 關(guān)注基礎(chǔ)DDoS防護(hù)監(jiān)控
當(dāng)您的業(yè)務(wù)遭受DDoS攻擊時(shí),基礎(chǔ)DDoS默認(rèn)會通過短信和郵件方式發(fā)出告警信息,針對大流量攻擊基礎(chǔ)DDoS防護(hù)也支持電話報(bào)警,建議您在接受到告警的第一時(shí)間進(jìn)行應(yīng)急處理。
5.1 Web應(yīng)用防火墻(WAF)
針對網(wǎng)站類應(yīng)用,例如常見的http Flood(CC攻擊)攻擊,可以使用WAF可以提供針對連接層攻擊、會話層攻擊和應(yīng)用層攻擊進(jìn)行有效防御。建議使用360磐云Web應(yīng)用防火墻服務(wù)。
5.2 DDoS防護(hù)包
5.3 DDoS高級防護(hù)
針對大流量DDoS攻擊,建議使用360磐云高防IP服務(wù)。
應(yīng)當(dāng)避免的事項(xiàng)
DDoS攻擊是業(yè)內(nèi)公認(rèn)的行業(yè)公敵,DDoS攻擊不僅影響被攻擊者,同時(shí)也會對服務(wù)商網(wǎng)絡(luò)的穩(wěn)定性造成影響,從而對處于同一網(wǎng)絡(luò)下的其他用戶業(yè)務(wù)也會造成損失。
目前而言,DDOS攻擊并沒有最好的根治之法,做不到徹底防御,只能采取各種手段在一定程度上減緩攻擊傷害。所以平時(shí)服務(wù)器的運(yùn)維工作還是要做好基本的保障,并借鑒本文分享的方案,將DDOS攻擊帶來的損失盡量降低到最小。