一、何為域名惡意解析
外部未知的域名持有者,將域名解析到非其所持有的服務器公網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模塊,應該放在最前,優先處理。