如何防止CDN防護被繞過


當攻擊者發現目標站點存在CDN防護的時候,會嘗試通過查找站點的真實IP,從而繞過CDN防護。
我們來看一個比較常見的基於公有雲的高可用架構,如下:
CDN(入口層)->WAF(應用層防護)-> SLB(負載層)-> ECS(源站) -> RDS(數據庫)
即對應關系為:域名 cname CDN,CDN-→WAF,WAF-→ SLB,SLB-→ ECS。

我們重點來關注一下CDN-→WAF-→SLB-→ECS這幾層服務的關系。
假設,攻擊者知道SLB的真實IP地址,就可以直接訪問SLB的ip地址,從而輕易繞過CDN+WAF的安全防護。

如何防止CDN被繞過呢?
這里分享一個CDN防護技巧,通過中間件配置只允許域名訪問,禁止ip訪問。
這樣處理的話,所有直接訪問站點真實IP的請求都會被拒絕,任何用戶只能通過域名訪問站點,通過預先設定的網絡鏈路,從DNS→CDN→waf防護→源站,所有的訪問請求都必須經過WAF檢測。
即使攻擊者找到了真實IP地址,修改本地hosts文件,強行將域名與IP解析,也無法訪問到目標站點。

Nginx參考配置:

#添加一個server,在原server里綁定域名
server  {
        listen 80 default;
        server_name _;
        return 403;
    }
server {
        listen       80;
        server_name  www.demo.com;
        .........

Apache參考配置:

#在httpd.conf最后面加上
<VirtualHost 此處填寫IP>
        ServerName 此處填寫IP
        <Location />
            Order Allow,Deny
            Deny from all
        </Location>
</VirtualHost>
<VirtualHost 此處填寫IP>
        DocumentRoot /var/www/html
        ServerName   此處填寫域名
</VirtualHost>

IIS參考配置:

網站綁定,綁定主機名就可以了

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM