服务器名称指示(英语:Server Name Indication,缩写:SNI)是TLS的一个扩展协议,在该协议下,在握手过程开始时客户端告诉它正在连接的服务器要连接的主机名称。这允许服务器在相同的IP地址和TCP端口号上呈现多个证书,并且因此允许在相同的IP地址上提供多个安全(HTTPS)网站(或其他任何基于TLS的服务),而不需要所有这些站点使用相同的证书。它与HTTP/1.1基于名称的虚拟主机的概念相同,但是用于HTTPS。
为了使SNI协议起作用,绝大多数访问者必须使用实现它的Web浏览器。使用未实现SNI浏览器的用户将被提供默认证书,因此很可能会收到证书警告。
深度包检测(Deep packet inspection, DPI)是一种于应用层对网络上传递的资料进行侦测与处理的技术,被广泛用于入侵检测、流量分析及数据挖掘。就字面意思考虑,所谓“深度”是相对于普通的报文检测而言的——相较普通的报文检测,DPI可对报文内容和协议特征进行检测。
DPI是GFW检测关键词及嗅探加密流量的基础,借助硬件设施、适宜的检测模型和模式匹配算法,它能够精确且快速地从实时网络环境中判别出目标流量,并作出审查者所期望的应对措施。
被认为在GFW部署了的深度包检测包括:
DNS协议。防火长城检测所有经过骨干网国际出口路由的位于TCP与UDP的53端口上的域名查询请求,等待和处于域名黑名单中的相匹配的。
HTTP协议。防火长城检测包含用户访问的网站的域名的HTTP头中的Host字段和发送和回复全文,但对回复的检测在2008年末终止。
Tor协议。防火长城无法提取出任何加密前的原始内容,但可以分辨出疑似流量。一般之后以主动探测确认。
SMTP协议。GFW不仅可以检测邮件的发送人(MAIL FROM)和收件人(RCPT TO),还可以检测邮件全文内容中的关键字,fqrouter作者将这称为“深包中的深包检测”。
TLS协议。早期TLS版本中,服务器握手响应,包括证书,是未被加密的,防火长城可以嗅探它而得知访问站点,自TLS版本1.3开始,ServerHello之后的握手信息,包括站点证书,也会被加密后传输,一般可以认为能防止对证书信息的检测;另外,SNI是TLS的一个扩展协议,该协议下,客户端在握手过程开始时告诉服务器其连接的域名,以便运作多个HTTPS网站的服务器选择并提供对应证书。而该扩展也未被加密。
伪造 SNI 的方法有何限制
绕过 GFW 对 SNI 的封锁:修改 TLS 连接原本的 SNI 为其它未封锁的名称,或者设置不发送 SNI 扩展。
该方法有如下限制:
1.访问境外 DNS 皆存在 DNS 污染。但目前 GFW 仅污染 53 端口,并没有屏蔽使用 DNS over TLS 或者 DNS over HTTPS 技术的 DNS 服务商及相应端口,例如 1.1.1.1 或 8.8.8.8。SNI 的封锁通常伴随着 DNS 污染,可以使用 GotoX 内置的反污染功能,也可以在主配置中设置为优先使用你选择的其它反 DNS 污染的工具 (如 Pcap_DNSProxy、DNSCrypt),以确保 DNS 结果无污染
2.大型境外被封禁网站多为直接封禁 IP。但目前 GFW 大多为 IPv4 黑名单,还未封禁全部 IPv6 地址,而国内大型运营商,已开始分配 IPv6 地址,并可以通过其连接互联网。
3.网站服务器有严格的 SNI 安全设置,无法解决。某些被封禁域名使用了非独立 IP 的 CDN,例如 Cloudflare 免费版,因此强制需要 SNI,否则无法成功握手。或者因为配置了多证书,导致返回的默认证书并非欲访问域名。
一些已经完整实现的开源项目
bypass-GFW-SNI/main:https://github.com/bypass-GFW-SNI/main
SeaHOH/GotoX:https://github.com/SeaHOH/GotoX
mashirozx/Pixiv-Nginx :https://github.com/mashirozx/Pixiv-Nginx
Accesser:https://github.com/Urenko/Accesser
Sheas Cealer:https://github.com/SpaceTimee/Sheas-Cealer
安装测试(以Sheas Cealer便携版为例)
直接下载 release 中的便携版,解压后,直接双击运行 Sheas-Cealer.exe 即可

Sheas-Cealer 需要 .net8 sdk,启动 Sheas-Cealer 时会弹出相关提示,按照提示下载后安装即可

1.点击 更新上游规则 来获取最新内置规则
2点启动伪造,Enjoy!
3.如果输入框中没有内容,点浏览路径,找到 Edge (msedge.exe) 或者 Chrome (chrome.exe),点更新上游规则,弹窗点是,点启动伪造,Enjoy!




