>>> 宇明首页| 新闻综合 | 正见新知 | 软件下载 | 影音美文 | 技术参考 | 论坛 |

*宇明旧版

闪画 雅乐 视频 九评三退 沧桑正道 其他热点 民主人权 万象大千 神传文化 软件下载

美文 笑谈 好书 秘闻内幕 天象人间 轮回漫谈 神奇预言 史前文明 科学新见 技术参考

热点新闻排行

法轮功修炼严禁性乱 中共

【章天亮】二十次准确预测

任长霞丈夫暴亡 “模范公

神七造假 中共专家承认“

中共给神韵开出惊人价码:

冲破中国电视网络封锁的P2

联合国紧急通过决议 中共

传《二奸二假》遭传讯 南

感悟神韵:两小时中展现的

【特稿】法轮功是中国政局

中国甘肃大暴动 中共疯了

我感到佛就要来临(图)

2012年前中国六个龙年大事

大纪元十周年庆典 媒体倒

【特稿】认识法轮功真相是

美太空专家揭神七疑点 拆

成功!李娜彻底击碎中共谎

大陆人观看09年神韵DVD有

章天亮:也谈郭文贵爆料的

温家宝:就是武力解决也要

央视护卡扎菲 逼急利比亚

央视春晚是杀人不见血的刀

乌坎综合:中共垮台的时间

神秘的“龙”,是虚幻还是

请不要错过2009年除夕夜之

破网软件风靡中国 警察公

抗议不如起义!山东东明组

你的婚姻和解体共产党有关

大势已去中共哪里是逃路!

听说这事后,不信神的人也

中国爆发禽流感 中共隐瞒

女杨佳杀淫官网上猛发酵

2012新年伊始 新浪微博惊

700张高考作文试卷得零0分

一位有神论者看当前金融危

 
您的位置:主页>新闻综合>其他热点>列表

美国动态网公司发布中共DNS劫持系统造成大断网技术细节

文章出处:大纪元 发布时间:2014-01-25 作者: 点击:

 
【宇明网】

1月21日,中国发生大规模的网站断网,涉及数千万用户。大陆媒体报导,境内用户访问.com、.net全球顶级域名时,指向了美国公司动态网(DIT)的IP地址。22日,DIT发表声明称,这是由于中共DNS劫持发生的大规模网站断网。以下是该公司声明全文:

中共于2002年开始使用DNS劫持技术封锁网站。动态网络技术公司(DIT)于2002年10月2日发布一份报告演示这种技 术如何运作。这些年来,我们对于中国如何使用这种DNS劫持技术有了更多的了解。2014年1月21日,中国由于DNS劫持发生大规模网站断网。我们觉得 现在是发布关于这个系统的更多信息的好时候。

什么是DNS

DNS是将域名翻译成IP地址的服务。互联网上的电 脑依靠IP地址找到彼此以互通信息。DNS服务就好像寻号台服务,把人们熟悉的人名翻译成电话号码。当用户使用浏览器比如火狐浏览器浏览网页时,比如想上 大纪元网站http://www.epochtimes.com,火狐浏览器会与DNS服务器通话,找到大纪元网站www.epochtimes.com 的IP地址。然后火狐浏览器才能上到大纪元网站。

什么是DNS劫持

当有DNS劫持发生时,用户可能会看到错误信息,或警告信息,或者上到错误的网站。

DNS 劫持的过程是这样的:一台恶意的电脑会监控用户与DNS服务器之间的对话,然后代表真正的DNS服务器给用户返回一个错误的IP地址。这个过程有点像电影 《十一罗汉》中的情节:盗贼控制了赌场的电话系统,当赌场打电话紧急求救时,盗贼接听了电话,然后派一个盗贼团队进入了赌场的金库。

这种攻击需要攻击者有能力监控用户的所有数据流,并需要CPU资源处理这些数据。这种情形在很多针对小公司网络安全的书籍中都解释过。但是这种攻击从未在网络服务商ISP范围发生过。ISP的网络更复杂,没有一个单一的点可以监控所有的数据流。

在家里演示DNS劫持

2014年1月21日发生在中国的大规模网站断网事件大部份已经恢复正常了。但是DNS劫持仍在持续中。我们可以通过被劫持的网站,了解一下断网时的情形。

2002年,DIT列出12个域名被劫持的网站。时至今日,以下网站域名仍然被劫持。这些网站如下:

www.renminbao.com
www.minghui.org
www.kanzhongguo.com
www.epochtimes.com

如果你可以操作一个位于中国的电脑。在Linux操作系统下,可以打这个指令:

host -t A epochtimes.com.dwlc 8.8.8.1

你会得到一个类似这样的回答:

epochtimes.com.dwlc has address 203.98.7.65

这个返回的IP地址是错误的,原因如下:

1)8.8.8.1 并不是一个DNS服务器。如果你在一台美国的电脑打这个指令,返回的是超时错误。

2)epochtimes.com.dwlc 并不是一个有效的域名。DNS服务器应该回答说“找不到”而不是返回一个IP地址。这个回答一定是来自长城防火墙的DNS劫持系统。

在Windows操作系统下做这个测试,可以打这个指令:

nslookup epochtimes.com.dwlc 8.8.8.1

据我们观察,DNS劫持系统可能会返回过几个不同的IP地址。这是我们收集到的一些IP地址:

159.106.121.75
203.98.7.65
243.185.187.39
37.61.54.158
46.82.174.68
59.24.3.173
78.16.49.15
8.7.198.45
93.46.8.89

这个列表会慢慢的变化,有时不同的ISP返回不同的IP地址。

以 上这个测试暴露了DNS劫持系统的一个漏洞。它会匹配“epochtimes.com”这个字符串。如果找不到“epochtimes.com”,就不会 返回假IP地址。如果域名中包括“epochtimes.com”,比如“epochtimes.com.cn”,这个域名也会被劫持。

如果DNS劫持系统的黑名单中有一个空的字符串,所有的域名都会被劫持。这就是2014年1月21日发生的事情。

可以理解,在一个文本文件中,最后加一个空行很难看得出来。

在美国演示DNS劫持

在一台美国的Linux电脑上, 打这个指令:

host -t A epochtimes.com.dwlc 163.com

163.com是中国的一个网站,不是一个DNS服务器。而且,“epochtimes.com.dwlc”这个域名根本不存在。但是,打上面这个指令会收到以下回复:

epochtimes.com.dwlc has address 203.98.7.65

这是因为DNS劫持系统有另外一个缺陷。它不能分辨DNS询问是进中国还是出中国的。它监控所有进出中国的流量,一旦发现域名与黑名单有匹配,就返回一个错误的IP地址。这样我们就可以在中国以外研究DNS劫持系统。

DNS劫持系统的部署

因为DNS劫持系统所针对的域名都在海外,部署DNS劫持系统最有效的地方是在国际网关,从那里监控所有进出中国的流量。

根据2013年12月的CNNIC报告,进出中国的流量是3400Gbps,年增长是79.3%。要监控这样一个迅速增长的流量,DNS劫持系统必须持续升级服务器和加新的CPU。

2014年1月21日,所有的域名都被指向一个自由门的IP地址,只有DNS劫持系统才有充足的资源和地理位置这么做。没有黑客有能力部署和控制资源,对3400Gbps的流量进行如此精确操作,来只改变与DNS有关的通信。

21日事件的更多细节

关 于这个所有域名都被指向一个IP地址,网上有很多关于这个IP的拥有者的信息。这些混乱的信息是因为IP地址被不同的公司层层转卖造成的。这个IP地址是 DIT用来运行自由门相关服务的。当事件发生时,并没有网站在这个IP运行。之后,我们试图在这个IP地址运行网站,但是由于进入中国的数据流被封锁,网 页在中国看不到。

关于用户体验的问题解答

事件结束了,为什么很多用户还是不能正常浏览网页?

这是DNS缓存造成的。中国的DNS服务器储存了错误的结果。在缓存被清之前,用户还是会被指向错误的地址。

我使用Google的海外DNS服务器8.8.8.8。为什么也被影响了?

DNS劫持影响所有进出中国的DNS询问。在中国,你可以在Windows电脑使用这个指令,返回的是错误的IP,这不是因为Google的8.8.8.8DNS服务器被黑了。

nslookup epochtimes.com 8.8.8.8

为什么 .cn 域名没有受影响?

因为 .cn 域名在中国国内被解析,这个过程没有经过位于国际网关的DNS劫持系统。

为什么没有ISP给一个官方的解释?

中共政府把DNS劫持系统放入每一家ISP的设施里。中共政府从不承认长城防火墙的存在,更不用说DNS劫持系统了。没有ISP敢出来确认DNS劫持系统的存在。



文章来源:编程随想的博客

前天下午(1月21日),咱们天朝发生了全国性的互联网故障,导致大量国内网站无法访问。这次故障说白了就是一次全国性大范围的域名污染。所以俺借此机 会,给大伙儿扫盲一下 DNS 的常识。既然是扫盲 DNS,也顺带说说“域名劫持”和“域名污染”这两个很容易混淆的概念。提醒一下:这两者的其中之一是 GFW 的大杀器,爱翻墙的同学有必要了解。

★DNS 是啥?


  DNS 是洋文“Domain Name System”的缩写,直译过来就是“域名系统”。

★DNS 有啥用?


  咱们每天打交道的这个互联网,其底层的基石是“IP”。IP 是“Internet Protocol”的缩写,中文就“互联网协议”(光看名字就知道这玩意儿很重要)。咱们日常用的那些互联网软件(浏览器、聊天工具、下载工具、等等)在工作时,必须依靠【IP地址】才能进行网络数据传输。
  “IP地址”是设计给软件用滴——虽然软件很容易处理,但对于人类而言,却很难记忆。于是,后来又发明了 DNS。有了 DNS,人类就不需要记住长长的一串 IP地址,而只需记住“域名”(域名通常更短,也更具有可读性)。
  比如你上网的时候,只需在地址栏输入网站的“域名”,而不用输入网站的“IP地址”。然后电脑系统会利用 DNS 来把“域名”翻译成“IP地址”。这个翻译的过程术语叫“域名解析/DNS解析”。

★域名的结构是咋样滴?


  域名是按照“树形结构”组织的。不懂得啥是“树形结构”的同学,可以对照一下电脑硬盘上的目录结构。域名的结构和目录结构很类似,目录结构是用“斜 杠”作分隔符,而域名是用小数点作分隔符。两者的主要区别在于:目录结构名称的形式是从左到右(上级在左,下级在右),而域名是从右到左(上级在右,下级 在左)。
  以俺博客的域名为例:
program-think.blogspot.com 的上级域名是 .blogspot.com
.blogspot.com 的上级域名是 .com
这里的 .com 就被称为顶级域名(Top-Level Domain,简称 TLD),跟 .com 类似的那些 .net .org .gov 也是顶级域名。还有那些以国家/地区的代码命名的(比如 .cn .tw .hk .jp 等等)也是顶级域名。

★“域名解析”是咋实现滴?


  如果你曾经配置过电脑的网卡,应该记得上面除了有IP地址、掩码等设置,还有一项设置是“DNS服务器/域名服务器”。这项设置就是用来帮助你的电脑 进行域名解析的。你可以把这个“DNS服务器”想象成114查号台。每当电脑需要翻译某个域名,就找这个域名服务器查询,然后域名服务器会告诉你的电脑, 要查询的域名对应的IP地址是啥。

  下面简单说一下,你的电脑进行域名解析的过程。
  为了叙述方便,以俺博客为例。当你在浏览器的地址栏中输入 http://program-think.blogspot.com/,然后敲回车,这时候电脑软件会进行如下一系列事情。
1. 首先根据输入的网址,提取出域名(在本例中,也就是 program-think.blogspot.com
2. 如果你在系统中配置了 Hosts 文件,那么电脑会先查询 Hosts 文件,看这个 program-think.blogspot.com 否已经在 Hosts 里面有了对应的记录。如果有,直接就可以拿到该记录中的 IP地址,过程就结束了。
3. 如果 Hosts 里面没有这个别名,那么电脑会看你有没有设置域名服务器(DNS 服务器)。如果你的系统没有设置域名服务器,那电脑就没辙了,浏览器直接会报错,说网站的域名无法解析。过程就结束了。
4. 如果你设置过“域名服务器”,那么电脑会向这个域名服务器发送一个域名查询(DNS query)的请求,然后等候域名服务器的回应。
5. 如果域名服务器始终没有回应(比如域名服务器挂了,或域名服务器的IP填错了,或请求被 GFW 拦截了),那么电脑还是没辙(浏览器会报错)。
6. 如果域名服务器回应了,那么你的电脑就可以根据域名服务器的应答信息,得到该域名的 IP地址。之后浏览器就会向这个 IP地址 对应的 Web 端口发送 HTTP 请求。

  通常情况下,电脑拿到的(DNS服务器)应答信息是正确的——也就是说,应答中的 IP地址 确实对应那个域名——这种情况下,你的网络软件就可以正常工作了。
  但是在天朝这个奇葩的国家,电脑拿到的 DNS 应答有可能是【错的】。为啥会这样捏,本文的后半部,俺会介绍一下“域名劫持”和“域名污染”。

★域名服务器如何知道这些信息?


  (本小节的内容偏技术化,技术菜鸟请仔细理解)
  刚才介绍了“客户端域名解析”的过程。接下来说说域名服务器是如何得到这些信息的。

◇域名的缓存


  大伙儿平时使用的域名服务器,技术术语叫“递归域名服务器”。“递归服务器”是面向普通网友的。刚才介绍“域名解析”的时候提到的服务器就是“递归服务器”。
  “递归服务器”的内部通常会有一个 DNS记录 的缓存——这个缓存是为了提高查询效率的。当某台电脑向递归服务器发起域名查询时,递归服务器首先看自己的缓存中有没有该域名的记录,如果有,直接就回复该记录给查询的电脑。
  万一对方想要查询的域名没找到,咋办捏?这时候就要进行缓存的同步。

◇缓存的同步


  下面就拿俺博客的域名为例,说说这种情况的处理流程。
1. 对方查询 program-think.blogspot.com 这个域名,“递归服务器”发现自己的缓存中没有
2. “递归服务器”会先去找“根域名服务器”帮忙,“根服务器”会告诉“递归服务器”说:这个域名属于 com 这个分支之下,你去找 com 这个域名的“权威服务器”,这个权威服务器的 IP地址 是 xxx。
3. 然后“递归服务器”根据拿到的这个 xxx地址,又去找“com 域名的权威服务器”。“com 域名的权威服务器”告诉它:你应该去找“blogspot.com 域名的权威服务器”,这个权威服务器的 IP地址 是 yyy
4. 然后“递归服务器”又屁颠屁颠地去找“blogspot.com 域名的权威服务器”。这时候“blogspot.com 域名的权威服务器”才会告诉它,program-think.blogspot.com 这个域名的 IP地址 到底是多少。
  大伙儿看到没有?整个过程如同“踢皮球”,效率是很低的。所以俺前面提到,“递归域名服务器”必须得有一个缓存,以此来优化效率(不用每次查询都来一次“踢皮球”)。

◇同步的周期


  说完了“域名的同步”,顺便提一下“同步的周期”。
  因为互联网上的域名信息是有可能发生变化的。比如增加了某个新域名,注销了某个旧域名,或者某个域名对应的 IP地址 变了。所以,“递归服务器”上保留的缓存中,每一条域名记录都有一个生命周期(可能是几分钟,也可能是几小时)。如果某条记录的生命周期过了,就会被删 除,然后重新同步。

★啥是“域名劫持”?


  刚才说了,域名服务器上都会保存一大堆的域名记录(每条记录包含“域名”和“IP地址”)。当收到域名查询的时候,域名服务器会从这堆记录中找到对方想要的,然后回应给对方。
  如果域名服务器上的某条记录被【人为修改】了(改成错的),那么一旦要查询这条记录,得到的就是错误的结果。这种情况称之为“域名劫持”。

★谁有“域名劫持”的企图?


  “域名劫持”通常是电信运营商(ISP)干的好事儿。很多宽带用户用的域名服务器就是 ISP 提供给你的。而天朝的 ISP 也是很奇葩的——经常耍流氓。
  举例:
  前几年曾经出现过:某个 ISP 跟百度勾结,把谷歌的流量重定向到百度。具体搞法是:该 ISP 篡改自己的域名服务器的记录,把里面跟 google.com 相关的域名记录的 IP地址 修改为百度服务器的 IP地址。如此一来,假设你用的是这个 ISP 的域名服务器,当你在浏览器输入 www.gooogle.com 的时候,你的电脑查询到的 IP地址 其实是百度的 IP地址,所以浏览器打开的是“百度”的主页。

★如何对付“域名劫持”?


  刚才说了,“域名劫持”的根源在于:域名服务器上的记录被人给改了。要对付这种耍流氓,最直接的办法就是不要使用这种流氓 ISP 提供的域名服务器,改用国外那些比较靠谱的。目前口碑最好的,大概是 Google 提供的两个域名服务器,IP地址 分别是 8.8.8.8 和 8.8.4.4 ——这俩不光是地址好记,更重要的是,不会耍流氓。

★啥是“域名污染”?


  先提醒一下:“域名污染”这个词还有其它几个别名,分别是“域名欺骗”、“域名缓存投毒”(洋文叫:DNS cache poisoning)。今后看到这几个别名,要晓得是同一个意思。
  “域名污染”的原理,简单说来是这样滴:当你的电脑向域名服务器发送了“域名查询”的请求,然后域名服务器把回应发送给你的电脑,这之间是有一个时间 差的。如果某个攻击者能够在域名服务器的“DNS应答”还没有到达你的电脑之前,先伪造一个错误的“DNS应答”发给你电脑。那么你的电脑收到的就是错误 的信息,并得到一个错误的 IP地址。

★谁有“域名污染”的企图?


  从技术上讲,只要攻击者能够位于“你”和“域名服务器”的传输线路中间,那么攻击者就有机会搞“域名污染”。能够做到这点的,可能是一个黑客/骇客, 也可能是 ISP。不过这些都不是本节聊的重点。本节的重点是 GFW——它是最有资源搞域名污染的,同时也最有意愿搞域名污染的。在《如何翻墙?》这篇全面扫盲教程中,俺提到 GFW 最有名的三板斧,其中一板斧就是“域名污染”。
  举例:
  比如某个国外网站,长年累月地抹黑咱们伟大光荣正确的党国,搞得咱们的“伟光正”很没面子,很不爽。那么朝廷的“真理部”就会给 GFW 下达封杀令——要求 GFW 全面封锁某某网站。对于 GFW 而言,要全面封掉某个网站,最简单的一个办法就是直接污染该网站的域名。用了这招之后,那些不懂翻墙的网友只要是通过【域名的方式】访问该网站,他们的电 脑进行 DNS查询 之后,多半会得到错误的结果(也就是说,查到的 IP地址 是假的);既然拿到假的 IP地址,当然就无法打开这个网站的页面啦。

★GFW 的两种“域名污染”


  刚才俺解释了“域名污染”的原理,那种形式不妨称为“直接污染”。由于 GFW 的特殊性,它不但可以做到“直接污染”,还可以做到“间接污染”。而普通的骇客顶多只能做到“直接污染”,难以做到“大范围的间接污染”。
  那么这两种污染有啥区别捏?且听俺细细道来。

◇GFW 部署在哪?


  首先有必要先扫盲一下“GFW的部署位置”。咱们天朝的互联网只有少数几个国际出口(名气较大的是:北京出口、上海出口、广州出口)。如果你要访问天 朝之外的网站,你的网络数据流就必定会经过其中的某个“国际出口”。而天朝的【每一个】国际出口都部署了 GFW 的设备。
  说到 GFW 的设备,顺便插一句:
  GFW 是洋文“Great FireWall”的缩写。很多同学(包括很多懂技术的同学)都望文生义,想当然地以为 GFW 就是某种“防火墙”设备。其实不然。GFW 是基于 IDS(IDS是“入侵监测系统”的缩写)打造的。有空的话,俺再来聊聊 GFW 本身的技术细节。

◇GFW 的直接污染


  因为 GFW 部署在天朝的国际出口。如果你用的是【国外的】域名服务器,你的“DNS请求”必定会经过国际出口;同样,域名服务器的“DNS应答”必定也会经过国际出口才能到你的电脑。这一来一回就给 GFW 提供了耍流氓的机会。
  这种污染就是俺所说的“直接污染”。

◇GFW 的间接污染


  刚才介绍了“使用国外域名服务器会被直接污染”。那如果你用的是【国内的】域名服务器捏?就会被“间接污染”。过程如下:
1. 比方说你用的是电信的 DNS服务器,然后你想要访问某个(被封杀的)反共网站。
2. 对于被封杀的网站,其网站服务器必定在国外,而且网站的域名肯定也不会使用 CN 之下的域名。所以,被封锁的网站,其上级域名的“权威域名服务器”肯定也是在国外。
3. 当你向“电信的DNS服务器”查询反共网站的域名,这台“电信的DNS服务器”就会去找这个反共网站的上一级域名对应的“权威域名服务器”去进行“域名查询”。
4. 因为是从国外进行域名查询,相关的数据流必定要经过国际出口。一旦经过国际出口,就会被 GFW 污染。
5. 如此一来,“电信的域名服务器”拿到的是已经被污染的域名记录(里面的IP是错的)。而且“电信的域名服务器”会把这条错误的记录保存在自己的域名缓存中。
6. 下次如果有另一个网友也找这台“电信的域名服务”查询这个反共网站,也会查到错误的结果。

   上述过程不断重复,最终会导致:全国所有的域名服务器,它们的缓存中只要是包含了那个反共网站的记录,记录中的 IP地址 必定是错的(这个错误的 IP地址 也就是 GFW 伪造的那个)。所以说“间接污染”是很牛逼的,可以把错误的域名记录扩散到全国。
  刚才俺说了,“域名污染”也叫“域名缓存投毒”。“投毒”一词真的非常形象——就好象在某条河流的源头下毒,从而把整条河流的水都污染。在互联网时代 搞“域名污染”是非常卑鄙下流的。因为 DNS 是互联网的基础设施,而“域名污染”直接破坏了互联网的基础设施。所以说,天朝是一个非常奇葩的国度;咱们面对的是一个做事情毫无底线的政府。

★咋对付“域名污染/域名欺骗”?


  这个话题有点大。因为有很多种招数可以对付“域名污染”。统统都写在这里,篇幅太长了。
  所以俺决定:抽空另写一篇教程,专门谈这个问题。敬请关注。

宇明固定域名 http://yuming.qxbbs.org

[读者投稿与反馈(欢迎留言!)] [返回顶部↑]

相关文章:
 

敏感时刻大批中共军车进入香港 多家中共央媒跟进

惧怕《紧急经济权力法》冻结官员在美资产?中共连夜联系美国希望

回应中共加税 川普提升5500亿中国商品关税

中共一贯言而无信 央视声称中英联合声明“过时无效”

川普:为解决中共的长期威胁 将不考虑相关代价

网传中共对付反送中运动的《宣传要则》

“金融反制”网民发起香港816银行大挤兑

杨宁:最新指示误判两件事 香港将成中共滑铁卢

港人揭央视造假 港女被警方布袋弹伤害新证曝光

“猪队友”&汽油弹 央视编造谎言被识破

[ 关 闭 本 页 ]


请使用IE5.0 以上 最佳分辨率1024*768
Copyright(C)2003-2008 YuMing site all rights reserved.
版权所有: 宇明小站 Copyright (C)2003-2008 ,保留全部权利 ,欢迎转载!
特别声明:本站新闻只代表文章作者的观点和陈述