校园网的神秘力量如何阻断你的连接?程序员用实验为你揭晓SNI阻断!

赤川鹤鸣_ChannelBilibili05:48

原视频
学习与成果

概览

通过抓包实验揭示校园网如何利用明文传输的 SNI 实施 SNI 阻断,导致部分网站无法访问。

关键点

  1. 1校园网在 TLS 建立阶段丢弃 ClientHello 包,使连接失败
  2. 2SNI 字段明文传输,可被中间人查看并用于黑名单比对
  3. 3实验证明 SNI 为百度域名时连接正常,为 example 域名时被阻断
  4. 4SNI 阻断被用于禁止内网穿透、视频网站和游戏服务器

时间轴4 章 · 14 节

第 1 章

问题引入与网络基础

从校园网部分网站无法访问的现象出发,铺垫DNS、TCP与HTTP/HTTPS等网络基础,为后续抓包分析做铺垫。

1.1

校园网部分网站无法访问的现象

同学使用校园网时发现部分网站无法访问,而这些网站在家里访问正常,由此引出疑问:校园网是如何发现并阻断这些连接的。

1.2

DNS 解析与 IP 域名双重封锁

回顾浏览器发起网络请求的过程:先将域名交给DNS解析成IP地址,再与对应服务器通信;并提到校园网可通过IP和域名的双重封锁进行网络拦截,可用Wireshark抓包查看DNS请求与返回的IP地址。

1.3

TCP 三次握手建立连接

客户端拿到IP地址后需建立TCP连接,过程分三步:客户端请求建立连接、服务器回应可以连接、客户端再次确认,即TCP三次握手,类比打电话。

1.4

HTTP/HTTPS 依赖 TCP 连接

三次握手只建立连接,并不传输有效数据;连接建立后双方才开始传输真正有用的数据,常用的HTTP/HTTPS都必须建立在TCP连接上。

第 2 章

TLS 握手与异常发现

通过Wireshark观察TLS握手,发现ServerHello包神秘消失,并分析两种丢包可能性,引出阻断规则之谜。

2.1

ClientHello 发起 TLS 连接

在校园网环境下用Wireshark可见三次握手完成、TCP连接建立后,客户端发送ClientHello包以开启TLS连接;TLS即传输层安全,用于加密双方数据,只有服务器和客户端能解密。

2.2

HTTP 明文传输与不安全标注

若网站使用HTTP而非HTTPS,数据为明文传输,中间人可偷偷查看通信内容,这就是浏览器一般将此类网站标注为不安全的原因。

2.3

ServerHello 包神秘消失

正常情况下客户端发送ClientHello包后,服务器应返回ServerHello包回应,但Wireshark上却没有出现该包,引出其去向的疑问。

2.4

两种丢包可能性的分析

收不到ServerHello包有两种可能:一是ClientHello包被丢弃导致服务器收不到,二是服务器收到但ServerHello包被丢弃;并指出TLS应用广泛,不可能全盘阻断,神秘力量必须依据网络包中的其他线索判断。

第 3 章

SNI 阻断原理

揭示SNI字段明文标记目标主机,校园网可据此比对黑名单丢弃ClientHello包,即SNI阻断原理。

3.1

SNI 字段明文标记目标主机

TLS建立时ClientHello包里有SNI字段,后面写着www.example.com;SNI即服务器名称指示,用来标记目标服务器主机叫什么,且SNI是明文传输,任何拿到包的人都能查看其值。

3.2

按 SNI 黑名单比对域名

以校园网禁止某款游戏为例,说明只需比对SNI字段里有没有对应的游戏域名即可实施阻断,即按SNI黑名单比对域名。

第 4 章

实验验证与结论

用跨网络环境实验验证SNI阻断,确认ClientHello被丢弃,并介绍该技术的实际应用场景。

4.1

跨网络环境实验设计

实验设计:一台电脑作为客户端连接校园网,另一台作为服务器连接移动数据处于校园网之外;服务器监听8443端口,客户端分别进行两次实验。

4.2

百度域名正常、example 域名被阻断

SNI设为www.baidu.com时TLS连接正常,客户端发送、服务器收到;设为www.example.com时双方均无响应,客户端等待后失败,服务器返回错误。

4.3

确认 ClientHello 被丢弃

实验证明TCP连接虽建立成功,但后续TLS建立时ClientHello包被丢弃导致连接失败;这种技术称为SNI阻断,即在建立TLS连接时检查明文SNI,若在黑名单里就扔掉ClientHello包。

4.4

SNI 阻断的实际应用场景

SNI阻断在许多学校校园网中存在,例如禁止部分内网穿透服务,因为内网穿透相当于在校园网里打洞,存在潜在网络安全风险;也有学校为促进学生好好学习,把视频网站或游戏服务器的SNI加入黑名单。

由知否生成 · 整理你自己的资料 · 登录后按账户权益阅读、整理与提问