每日面试1题-如何防止CDN防护被绕过
當攻擊者發(fā)現(xiàn)目標站點存在CDN防護的時候,會嘗試通過查找站點的真實IP,從而繞過CDN防護。
我們來看一個比較常見的基于公有云的高可用架構(gòu),如下:
CDN(入口層)->WAF(應(yīng)用層防護)-> SLB(負載層)-> ECS(源站) -> RDS(數(shù)據(jù)庫)
即對應(yīng)關(guān)系為:域名 cname CDN,CDN—>WAF,WAF—> SLB,SLB—> ECS。
SLB:Server Load Balancer 網(wǎng)絡(luò)服務(wù)器之間的負載均衡
客戶端向虛擬服務(wù)器發(fā)起連接時,通過某種負載均衡算法,轉(zhuǎn)發(fā)到某真實服務(wù)器。
我們重點來關(guān)注一下CDN—>WAF—>SLB—>ECS這幾層服務(wù)的關(guān)系。
假設(shè),攻擊者知道SLB的真實IP地址,就可以直接訪問SLB的ip地址,從而輕易繞過CDN+WAF的安全防護。
如何防止CDN被繞過呢?
這里分享一個CDN防護技巧,通過中間件配置只允許域名訪問,禁止ip訪問。
這樣處理的話,所有直接訪問站點真實IP的請求都會被拒絕,任何用戶只能通過域名訪問站點,通過預先設(shè)定的網(wǎng)絡(luò)鏈路,從DNS–>CDN–>waf防護–>源站,所有的訪問請求都必須經(jīng)過WAF檢測。
即使攻擊者找到了真實IP地址,修改本地hosts文件,強行將域名與IP解析,也無法訪問到目標站點。
Nginx參考配置:
Apache參考配置:
#在httpd.conf最后面加上 <VirtualHost 此處填寫IP> ServerName 此處填寫IP <Location /> Order Allow,Deny Deny from all </Location> </VirtualHost> <VirtualHost 此處填寫IP> DocumentRoot /var/www/html ServerName 此處填寫域名 </VirtualHost>總結(jié)
以上是生活随笔為你收集整理的每日面试1题-如何防止CDN防护被绕过的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 汉字转拼音,文字转语音tts (语音技术
- 下一篇: 解决‘parent.relativePa