Skip to content

Commit

Permalink
完善 GFW 相关内容
Browse files Browse the repository at this point in the history
  • Loading branch information
gledos committed Oct 25, 2023
1 parent d0041c8 commit eb2f727
Show file tree
Hide file tree
Showing 4 changed files with 59 additions and 21 deletions.
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
title: DNS污染
title: DNS 污染
description:
published: true
date: "2022-07-18T16:12:51"
Expand All @@ -11,24 +11,56 @@ dateCreated: "2021-09-11T09:27:21"

## 简介

DNS 污染大致与以下内容为同义词:

+ DNS 缓存服务器污染

往往是运营商的 DNS 缓存服务器被污染,当用户使用运营商分配的默认 DNS 时,就会因为错误的 DNS 记录,
无法访问部分网站[^83433]

+ DNS 抢答

当用户使用自定义 DNS 时,由于 DNS 请求没有加密以及防篡改功能,所以数据包经过某个中间人节点时,
中间人就会抢先向用户发送错误的 DNS 记录。

原理是服务器方面做了「分光镜像」,能够实时检测 DNS 请求。缺点是用户会收到两份 DNS 记录,
所以也许能够忽略忽略错误的 DNS 记录,从而获取干净的 DNS 记录。

+ DNS 劫持

当用户使用自定义 DNS 时,由于 DNS 请求没有加密以及防篡改功能,所以数据包经过某个中间人节点时,
中间人直接以透明代理,或者类似的原理,发送特定 DNS 服务器的记录。

[^83433]: Sue6080, 《[请问我理解的 DNS 缓存污染定义,指教下是否正确?](https://web.archive.org/web/20220903025723/https://www.v2ex.com/t/783433)》, V2EX, 2021-06-15. (参照 2023-10-25).

移动将相关技术称为:[^82394][^00064]

+ 路由牵引方式
+ 旁路抢答方式(分光镜像+抢先应答)
+ PBR 策略路由方式[^482394]
+ 旁路抢答方式(分光镜像 + 抢先应答)
+ PBR 策略路由方式

[^82394]: 《[移动宽带三套 DNS 污染技术已经申请专利了,三套组合拳。](https://web.archive.org/web/20200327034135/https://v2ex.com/t/482394)》, V2EX.

[^00064]: 《[基于旁路抢答机制的异网DNS管控实践](https://web.archive.org/web/20180823105346/http://www.ttm.com.cn/article/2016/1000-1247/1000-1247-1-1-00064.shtml)》, 电信技术.

## DNS 抢答的应对方法

最初的 DNS 抢答,给的错误 IP 较少,所以能够直接列出错误的 IP,然后让系统内核忽略这些错误的 DNS 记录,
从而防止 DNS 抢答的干扰。[^80526]

[^80526]: 未知, 《[翻墙路由器的原理与实现(转载)](<https://web.archive.org/web/20171126180526/http://blog.neargle.com/SecNewsBak/drops/翻墙路由器的原理与实现 .html>)》, 未知, 2017-11-26. (参照 2023-10-25).

[^482394]: [移动宽带三套 DNS 污染技术已经申请专利了,三套组合拳。 - V2EX](https://web.archive.org/web/20200327034135/https://v2ex.com/t/482394)
不过后来 GFW 可能知晓了这一漏洞,结果 DNS 污染在某个时间后,不再是单纯的少量 IP,而是 Facebook、Twitter [^25889]

> [!abstract]+ 相关链接
>
> + [基于旁路抢答机制的异网DNS管控实践 - 电信技术](https://web.archive.org/web/20180823105346/http://www.ttm.com.cn/article/2016/1000-1247/1000-1247-1-1-00064.shtml)
[^25889]: ladypxy, 《[域名被解析到 facebook 的 IP,是不是说明这个域名被污染了](https://web.archive.org/web/20220123172514/https://www.v2ex.com/t/525889)》, V2EX, 2019-01-11. (参照 2023-10-25).

## 涉及 DNS 污染

### 污染其他地区

2010年3月24日 18:22:40 UTC ,智利的 DNS 管理员发现了奇怪的错误,访问 facebook、youtube 或 twitter 的 A 记录,会得到错误的 IP,该错误 3 个发生在智利,1 个发生在加利福尼亚。原因可能是将域名请求提交给大陆控制的「根域 DNS 镜像」时,出现了问题。[^260]

随后 CNNIC 的 VP & CTO —— 李晓东[^LEE] 声明:「CNNIC never
did any interceptions or other things for the mirror site of I root serer, CNNIC only provides the stable Internet connection, power and necessary hand support.」[^280]
随后 CNNIC 的 VP & CTO —— 李晓东[^LEE] 声明:「CNNIC never did any interceptions or other things for the mirror site of I root serer, CNNIC only provides the stable Internet connection, power and necessary hand support.」[^280]

根据 Robert Edmonds 的想法,可能是因为数据进入了大陆境内,被 GFW 篡改了内容,[^271] 即中间人攻击。

Expand All @@ -40,13 +72,13 @@ did any interceptions or other things for the mirror site of I root serer, CNNIC

[^280]: Xiaodong Lee, 《[\[dns-operations\] Odd behaviour on one node in I root-server \(facebook, youtube & twitter\)](https://web.archive.org/web/20120119092604/https://lists.dns-oarc.net/pipermail/dns-operations/2010-March/005280.html)》, 2012-01-19. 参照: 2022-02-22. [Online].

[^271]: Robert Edmonds, 《[[dns-operations] Odd behaviour on one node in I root-server (facebook, youtube & twitter)](https://lists.dns-oarc.net/pipermail/dns-operations/2010-March/005271.html)》, 2010-03-24. 参照: 2022-02-22. [Online].
[^271]: Robert Edmonds, 《[\[dns-operations\] Odd behaviour on one node in I root-server (facebook, youtube & twitter)](https://lists.dns-oarc.net/pipermail/dns-operations/2010-March/005271.html)》, 2010-03-24. 参照: 2022-02-22. [Online].

### 研究论文

2012年,一篇以《黑客帝国》角色为化名的论文出现在 DNS 研究的视野中,解释了其他地区的 DNS 主机,也会受到大陆的 DNS 污染。[^qIaVG]

[^qIaVG]: rmrf100, 《[中国DNS污染对世界范围互联网造成的附属破坏](https://archive.vn/qIaVG "https://eyelublog.wordpress.com/2012/07/07/%e4%b8%ad%e5%9b%bddns%e6%b1%a1%e6%9f%93%e5%af%b9%e4%b8%96%e7%95%8c%e8%8c%83%e5%9b%b4%e4%ba%92%e8%81%94%e7%bd%91%e9%80%a0%e6%88%90%e7%9a%84%e9%99%84%e5%b1%9e%e7%a0%b4%e5%9d%8f/")》, EyeLu Blog, 2012-07-07. (参照 2022-12-23).
[^qIaVG]: rmrf100, 《[中国DNS污染对世界范围互联网造成的附属破坏](https://archive.vn/qIaVG "https://eyelublog.wordpress.com/2012/07/07/中国dns污染对世界范围互联网造成的附属破坏/")》, EyeLu Blog, 2012-07-07. (参照 2022-12-23).

### GFW 故障

Expand Down
24 changes: 15 additions & 9 deletions docs/censorship/技术/GFW.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,16 +16,16 @@ Great Firewall 简称 GFW,被用来描述大陆的网络封锁,因为这种

GFW 有许多手段阻止网络连接,其中包括但不限于:

+ [DNS 污染](/censorship/技术/DNS污染.md)
+ [TCP 重置攻击](/censorship/技术/TCP重置攻击.md)
+ [DNS 污染](/censorship/技术/DNS_污染.md)
+ [TCP 重置攻击](/censorship/技术/TCP_重置攻击.md)
+ 深度包检测
+ SNI 干扰机制(网络劣化)
+ 中间人攻击

关键词:

+ [SNI](#sni)
+ [依附的自由](/anti-censorship/GoAgent.md#依附的自由)
+ [依附的自由](/anti-censorship/依附的自由.md)

### 网络数据包

Expand Down Expand Up @@ -76,11 +76,7 @@ SNI 是 Server Name Indication(服务器名称指示)的缩写,SNI 会找

[^df]: <https://en.wikipedia.org/wiki/Domain_fronting>

除了域前置这种绕过 GFW 的方案,还有升级 TLS 协议这种手段,但是升级协议会有较长的缓冲期,

### DNS 污染

详情请阅读 [DNS 污染](/censorship/技术/DNS污染.md) 条目。
除了域前置这种绕过 GFW 的方案,还有升级 TLS 协议这种手段,使 SNI 被加密,但是升级协议会有较长的缓冲期……

### 限制 QUIC

Expand All @@ -104,9 +100,19 @@ QUIC 是 Google 设计的传输层网络协议,基于 UDP,目的是解决 TC
然而,GFW 以能封尽封为哲学基础,罔顾历史发展规律,堂而皇之地做出一系列荒唐行为。
-->

### DNS 污染

详情请阅读 [DNS 污染](/censorship/技术/DNS_污染.md) 条目。

### 限制干净的 DNS

DNS 的问题很多,因为最初设计的时候没有考虑安全性,结果导致网络存在许多安全隐患,加强 DNS 的安全性就,成了重要的工作。但 GFW 也不会坐视不管。

〔待续〕

## 历史

2018年8月 ,一则 Steam 动态开始流传,内容如下:
2018年8月 月底,一则 Steam 动态开始流传,内容如下:

> [!quote]+ 未知细节的 Steam 动态[^67073]
>
Expand Down
File renamed without changes.
2 changes: 1 addition & 1 deletion docs/technology/DNS.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ DNS 是<ruby>域名系统<rp>(</rp><rt>Domain Name System</rt><rp>)</rp></ruby>

## 安全性

最初的 DNS 使用端口 53 的 UDP 或者进行查询(DNS-over-UDP/53),但是缺乏传输层加密、身份验证和可靠传递和消息长度,导致容易被中间人攻击。这也是早期 GFW 主要使用的方法,被叫做 [DNS污染](/censorship/技术/DNS污染.md)
最初的 DNS 使用端口 53 的 UDP 或者进行查询(DNS-over-UDP/53),但是缺乏传输层加密、身份验证和可靠传递和消息长度,导致容易被中间人攻击。这也是早期 GFW 主要使用的方法,被叫做 [DNS污染](/censorship/技术/DNS_污染.md)

之后换成了使用端口 53 的 TCP 查询(DNS-over-TCP/53),改进了可靠传递和消息长度,不过安全性没有改进。

Expand Down

0 comments on commit eb2f727

Please sign in to comment.