Steven Lynn’s Blog

一种基于HSTS的防域名劫持的方法

2023-10-04368 words2 min read
date
Oct 4, 2023
slug
HSTS-anti-domain-hijacking
status
Published
tags
Web
type
Post
类型
summary
介绍了一种基于HSTS的防域名劫持方法,强调通过在Cloudflare中启用HSTS来强制用户使用HTTPS访问域名,从而解除被劫持状态。文中还提到需要在hstspreload.org登记以确保域名在主流浏览器中的常驻记录。
事情是这样的:
国庆期间国内网络对很多域名进行了污染,其中影响最大的是Minecraft正版验证api以及VSCode官网。当尝试登录或使用上述应用时,其HTTP请求会被重定向到国家反诈中心以及工信部反诈中心的提示页面
也因为这波莫名其妙的风波,最近某位朋友的手头大量部署在vercel上的服务被运营商劫持,被301跳转到反诈中心页面
对于用户而言,只能切换DNS或者使用代理来防止劫持
昨天和一位大佬交流过这件事后得到了一些点拨,这里做个记录

步骤

1. 开启HSTS

在cloudflare中,进入域名管理,选择SSL/TLS-Edge Certificates-HTTP Strict Transport Security (HSTS)-Enable HSTS,如下图进行配置
notion image
按以上操作开启后会导致所有域名下的服务(包括子域名)强制使用https加密传输,如果该域名下有http的服务则不建议这么做

2. 申请HSTS常驻

以上开启之后需要用户至少正常访问一次网页才能正常开启
作为补充,需要再在hstspreload.org登记后才会将域名记录在主流浏览器的新版本中,更新之后,会直接加入这个网站到名单。
notion image
notion image
声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
Loading...