防止域名被惡意解析
阿新 • • 發佈:2020-12-30
一、何為域名惡意解析
外部未知的域名持有者,將域名解析到非其所持有的伺服器公網IP上,間接或直接造成損害他人利益的行為。
二、借刀殺人
域名的惡意解析,可以用於借刀殺人。
這個手法很騷,輕則可以將對手的SEO排名拉低,重則可以讓工信部封殺其站點。
具體實現條件如下:
- 未備案的域名或已被接入工信部黑名單的域名
- 獲取要攻擊的站點,其源伺服器使用的公網IP
- 確認要攻擊的網站80埠和443埠可以直接用IP直接訪問
- 將黑域名解析到該公網IP
危害如下:
- 不同域名解析到同個站點,真身域名權重被降低,SEO排名被假域名擠佔
- 非法域名解析,導致源伺服器被工信部封殺,網站停止服務
三、解決方法
將無效域名的HTTP請求,全部拒絕響應
以下是我的個人站點的nginx配置
server{
listen 80 default_server;
server_name _;
access_log off;
return 444;
}
server{
listen 443 default_server;
server_name _;
ssl_certificate cert/www.wangxiaokai.vip.pem;
ssl_certificate_key cert/www.wangxiaokai.vip.key;
access_log off;
return 444;
}
3.1 篩選無效域名
server_name _;
這個代表的就是無效域名,_
符號可以用-
或!@#
代替,都可以達到相同的效果。
3.2 不記錄訪問日誌
access_log off;
訪問日誌是需要儲存空間的,如果沒有設定自動清理指令碼,也是可以把伺服器儲存空間打爆的。
3.3 不處理無效域名的請求
return 444;
444是Nginx伺服器擴充套件的HTTP錯誤狀態碼,為非標準HTTP狀態碼。
它的作用是:伺服器不向客戶端返回任何資訊,並關閉連線, 斷開客戶端和伺服器的連線,防止惡意軟體攻擊威脅。
3.4 一些細節
這兩個server模組,應該放在最前,優先處理。