https://wangxiaokai.vip/posts/2019-07-10-nginx-analysis/#more
------------------------------------------
一、何为域名恶意解析
外部未知的域名持有者,将域名解析到非其所持有的服务器公网IP上,间接或直接造成损害他人利益的行为。
二、借刀杀人
域名的恶意解析,可以用于借刀杀人。
这个手法很骚,轻则可以将对手的SEO排名拉低,重则可以让工信部封杀其站点。
具体实现条件如下:
- 未备案的域名或已被接入工信部黑名单的域名
- 获取要攻击的站点,其源服务器使用的公网IP
- 确认要攻击的网站80端口和443端口可以直接用IP直接访问
- 将黑域名解析到该公网IP
危害如下:
- 不同域名解析到同个站点,真身域名权重被降低,SEO排名被假域名挤占
- 非法域名解析,导致源服务器被工信部封杀,网站停止服务
三、解决方法
将无效域名的HTTP请求,全部拒绝响应
以下是我的个人站点的nginx配置
123456789101112131415 |
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 筛选无效域名
1 |
server_name _; |
这个代表的就是无效域名,_
符号可以用-
或!@#
代替,都可以达到相同的效果。
3.2 不记录访问日志
1 |
access_log off; |
访问日志是需要存储空间的,如果没有设置自动清理脚本,也是可以把服务器存储空间打爆的。
3.3 不处理无效域名的请求
1 |
return 444; |
444是Nginx服务器扩展的HTTP错误状态码,为非标准HTTP状态码。
它的作用是:服务器不向客户端返回任何信息,并关闭连接, 断开客户端和服务器的连接,防止恶意软件攻击威胁。
3.4 一些细节
这两个server模块,应该放在最前,优先处理。
- 本文链接: https://wangxiaokai.vip/posts/2019-07-10-nginx-analysis/
- 版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。欢迎转载,转载注明出处即可!