防火长城(英语:Great Firewall of China,常用简称:GFW,中文也称中国国家防火墙或防火长城,中国大陆民众俗称防火墙、功夫网、GFW等),是对中国政府在其互联网边界审查系统(包括相关行政审查系统)的统称。此系统起步于1998年,其英文名称得自于2002年5月17日Charles R. Smith所写的一篇关于中国网络审查的文章《The Great Firewall of China》,取与Great Wall(长城)相谐的效果,简写为Great Firewall,缩写GFW。随着使用的拓广,中文「墙」和英文「GFW」有时也被用作动词,网友所说的「被墙」即指被防火长城所屏蔽。
一般情况下,防火长城主要指中国政府监控和过滤互联网国际出口上内容的软硬件系统,由服务器和路由器等设备,加上相关公司的应用程序所构成,构建类似美国的棱镜计划的 大机制,因此防火牆不是中国特有的一个专门单位,实际上大多数国家也会建立网路监管,不过其他政府的管理仅止于金融洗钱、国际诈骗等犯罪行为,与中国的审 查机制有着相当大的不同。防火长城的作用主要是监控国际网关上的通讯,对认为不符合中共官方要求的传输内容,进行干扰、阻断、屏蔽。由于中国网络审查广泛,中国国内含有「不合适」内容的网站,会受到政府直接的行政干预,被要求自我审查、自我监管,乃至关闭,故防火长城主要作用在于分析和过滤中国境外网络的资讯互相存取。中国工程院院士、北京邮电大学前校长方滨兴是防火长城关键部分的首要设计师。
然而,防火长城对网络内容的审查是否限制和违反了言论自由,一直是受争议的话题,官方说词也相当笼统。有报告认为,防火长城其实是一种圆形监狱式的全面监控,以达到自我审查的目的,因为网路的分散式架构,完全封锁言论是不可能的,事实也证明,任何人在中国大陆地区都能够在低调的情况下发表敏感言论,但是对于封锁的恐惧,许多人不希望发出的讯息会被屏蔽而选择中性的讲法或不说出来,例如一套侦测中国官方部属的DNS污染伺服器工具在GitHub(世 界最大的开源代码託管服务)上开源发布后,引起了激烈的争论。一些人认爲,此举会激怒「牆」的管理者,导致GitHub被封锁,影响牆内程序员学习交流, 所以应该删除这样的代码仓库,「保持技术社区的纯粹」。另一些人,则认爲翻牆是程序员的基本技能,表示不受影响,所以力挺该项目,并极力反对技术社区加入 「自我审查」的行列。而中共当局一直没有正式对外承认防火长城的存在,如当有记者在外交部新闻发布会上问及互联网封锁等问题的时候,发言人的答桉基本都是「中国政府鼓励和支持互联网发展,依法保障公民言论自由,包括网上言论自由。同时,中国对互联网依法进行管理,这符合国际惯例。」方滨兴曾在访问中被问及防火长城是如何运作的时候,他指这是「国家机密」。不过2015年1月与官方有密切关联的《环球时报》则发布报道曾公开宣扬其存在。可以发见官方对牆的理解随时间发展也不断改变,不仅止于过滤不合法内容,更以发展中国互联网为名,企图透过隔绝将网路国界化,视外资为经济渗透、干涉内政,这些牆存在意义的舆论宣传,逐步强化了设牆政策的合理性与正当性,但时至今日中国仍一直宣称是「依法管理以保障网路主权」。官方媒体公开发布的报道裡曾涉及防火长城的监控,从侧面证明其的确存在。
中国还有一套公开在公安部辖下的网络安全项目——金盾工程,其主要功能是处理中国公安管理的业务,涉外饭店管理,出入境管理,治安管理等,所以金盾工程和防火长城的关系一直没有明确的认定。
原理:防火长城对所有经过骨干出口路由的在UDP的53端口上的域名查询进行IDS入 侵检测,一经发现与黑名单关键词相匹配的域名查询请求,防火长城会马上伪装成目标域名的解析服务器给查询者返回虚假结果。由于通常的域名查询没有任何认证 机制,而且域名查询通常基于的UDP协议是无连接不可靠的协议,查询者只能接受最先到达的格式正确结果,并丢弃之后的结果。用户若改用TCP在53端口上 进行DNS查询,虽然不会被防火长城污染,但可能会遭遇连接重置,导致无法获得目标网站的IP地址。
IPv6协议时代部署应用的DNSSEC技术为DNS解析服务提供了解析数据验证机制,可以有效抵御劫持。
全球一共有13组根域名服务器(Root Server),2010年中国大陆有F、I、J这3个根域DNS镜像,但曾因为多次DNS污染外国网络,威胁互联网安全和自由,北京的I根域服务器被断开与国际互联网的连接。目前已恢复服务。
原理:相比起之前使用的访问控制列表(ACL)技术,现在防火长城采用了效率更高的路由扩散技术封锁特定IP地址。正常的情况下,静态路由是由管理员根据网络拓扑或 是基于其它目的而给出的一条路由,所以这条路由最起码是要正确的,这样可以引导路由器把数据包转发到正确的目的地。而防火长城的路由扩散技术中使用的静态 路由其实是一条错误的路由,而且是有意配置错误的,其目的就是为了把本来是发往某个IP地址的数据包统统引导到一个“黑洞服务器”上,而不是把它们转发到 正确目的地。这个黑洞服务器上可以什麽也不做,这样数据包就被无声无息地丢掉了。更多地,可以在服务器上对这些数据包进行分析和统计,获取更多的信息,甚 至可以做一个虚假的回应。这些错误静态路由信息会把相应的IP数据包引导到黑洞服务器上,通过动态路由协议的路由重分发功能,这些错误的路由信息可以发布到整个网络。这样对于路由器来讲现在只是在根据这条路由条目做一个常规数据包转发动作,无需再进行ACL匹配,与以前的老方法相比,大大提高了数据包的转发效率。但也有技术人员指出,从以前匹配ACL表到现在匹配路由表是“换汤不换药”的做法,依然非常耗费路由器的性能。而且中国大陆共有9个国际互联网出口和相当数量的骨干路由,通过这种方法封锁特定IP地址需要修改路由表,故需要各个ISP配合配置,所以其封锁成本也是各种封锁方法裡最高的。
一般情况下,防火长城对于中国大陆境外的「非法」网站会采取独立IP封锁技术,然而部分「非法」网站使用的是由虚拟主机服 务提供商提供的多域名、单(同)IP的主机托管服务,这就会造成了封禁某个IP地址,就会造成所有使用该服务提供商服务的其他使用相同IP地址服务器的网 站用户一同遭殃,就算是「内容健康、政治无关」的网站,也不能幸免。其中的内容可能并无不当之处,但也不能在中国大陆正常访问。
原理:防火长城配合上文中特定IP地址封锁裡路由扩散技术封锁的方法进一步精确到端口,从而使发往特定IP地址上特定端口的数据包全部被丢弃而达到封锁目的,使该IP地址上服务器的部分功能无法在中国大陆境内正常使用。
经常会被防火长城封锁的端口:
在中国移动、中国联通等部分ISP的手机IP段,所有的PPTP类型的VPN都遭到封锁。
2011年3月起,长城防火墙开始对Google部 分服务器的IP地址实施自动封锁(按时间段)某些端口,按时段对www.google.com(用户登录所有Google服务时需此域名加密验证)和 mail.google.com的几十个IP地址的443端口实施自动封锁,具体是每10或15分钟可以连通,接着断开,10或15分钟后再连通,再断 开,如此循环,使中国大陆用户和Google主机之间的连接出现间歇性中断,使其各项加密服务出现问题。Google指中国这样的封锁手法高明,因为Gmail并非被完全阻断,营造出Google服务“不稳定”的假象,表面上看上去好像出自Google本身。
2014年5月27日起,几乎所有Google服务的80和443端口被封锁。2014年12月26日起,Google数段IP被路由扩散封锁,直接导致GMAIL客户端所用的IMAP/SMTP/POP3端口也被封锁。
原理:防火长城会监控特定IP地址的所有数据包,若发现匹配的黑名单动作(例如TLS加密连接的握手),其会直接在TCP连接握手的第二步即SYN-ACK之后伪装成对方向连接两端的计算机发送RST封包(RESET)重置连接,使用户无法正常连接至服务器。
这种方法和特定IP地址端口封锁时直接丢弃数据包不一样,因为是直接切断双方连接因此封锁成本很低,故对于Google的多项(强制)加密服务例如Google文件、Google网上论坛、Google+和Google个人资料等的TLS加密连接都是采取这种方法予以封锁。
从2015年初开始,RST重置已被实时动态黑洞路由取代。
TCP重置是TCP协议的一种消息,用于重置连接。一般来说,例如服务器端在没有客户端请求的端口或者其它连接信息不符时,系统的TCP协议栈就会给客户端回复一个RESET通知消息,可见RESET功能本来用于应对例如服务器意外重启等情况。
防火长城切断TCP连接的技术实际上就是发送连接重置消息。对于防火长城而言,发送连接重置封包比直接将数据包丢弃要好,因为如果是直接丢弃数据包 的话客户端并不知道具体网络状况,基于TCP协议的重发和超时机制,客户端就会不停地等待和重发,加重防火长城审查的负担,但当客户端收到RESET消息 时就可以知道网络被断开不会再等待了。而实际上防火长城通过将TCP连接时服务器发回的SYN/ACK封包中服务器向用户发送的序列号改为0从而使客户端 受骗认为服务器重置了连接而主动放弃向服务器发送请求,故这种封锁方式不会耗费太多防火长城的资源而效果很好,成本也相当的低。
有关技术已被申请为发明专利。
本发明提供了一种阻断TCP连接的方法和装置;方法包括:保存各TCP连接的连接信息;所述TCP连接的连接信息包括该TCP协议连接的:客户端信 息、服务端信息、请求方向TCP等待序列号和应答方向TCP等待序列号;抓取TCP封包,找到该TCP封包所属TCP连接的连接信息,根据所抓取的TCP 封包更新该连接信息中的请求方向TCP等待序列号和应答方向TCP等待序列号;如果所抓取的TCP封包为需要阻断的TCP封包,则根据更新后的、该TCP 封包所属TCP连接的连接信息生成RST封包,并发送给该TCP连接的客户端和服务端。本发明可以进行准确而持续的阻断,从而能在大流量环境下的高效阻断 非法TCP连接。
Host: www.youtube.com
”)时,则会马上伪装成对方向连接两端的计算机发送RST封包(Reset)干扰两者间正常的TCP连 接,进而使请求的内容无法继续查看。如果防火长城在数据流中发现了特殊的内文关键词(如「falun」等)时,其也会试图打断当前的连接,从而有时会出现 网页开启一部分后突然停止的情况。在任何阻断发生后,一般在随后的90秒内同一IP地址均无法浏览对应IP地址相同端口上的内容。因为防火长城的存在,大量境外网站无法在中国大陆境内正常访问,于是大陆网民开始逐步使用各类翻墙软件突破防火长城的封锁。针对网上各类突破防火长 城的翻墙软件,防火长城也在技术上做了应对措施以减弱翻墙软件的穿透能力。通常的做法是利用上文介绍的各种封锁技术以各种途径打击翻墙软件,最大限度限制 翻墙软件的穿透和传播。
同时根据中国大陆网民反映,防火长城现已有能力对基于PPTP和L2TP协议的VPN连接进行监控和封锁,这使得大陆网民突破防火长城的封锁变得更加困难。2015年1月起,部分国外VPN服务在中国大陆无法正常使用,这些VPN使用的是IPSec、L2TP/IPSec和PPTP协议。
而每年每到特定的关键时间点(敏感时期)防火长城均会加大网络审查和封锁的力度,部分破网软件就可能因此无法正常连接或连接异常缓慢,甚至中国境内和境外的正常网络连接也会受到干扰:
从2011年5月6日起,中国大陆境内很多互联网公司以及高校、学院、科研单位的对外网络连接都出现问题,包括中国科学院。有分析指断网可能是因为防火长城已经具有了探测和分析大量加密流量并对用户IP地址执行封锁的能力,而各大机构的出口被封也在其中。具体表现为:当用户使用了破网(翻墙)软件后,其所在的公共网络IP地址会被临时封锁,所有的国际网站都无法访问,包括MSN、iTunes Store等,而访问国内网站却正常,但如果使用境外的DNS解析域名则将会由于DNS服务器被封锁导致无法解析任何域名,国内网站也会无法打开。也有分析指,此举是中国当局在测试逐步切断大部分人访问国际网站的措施,以试探用户反应并最终达到推行网络「白名单」制,也就是凡没有在名单上的企业或团体其网络域名将不能解析,一般用户也无法访问。而中共党机关报《人民日报》旗下的《环球时报》英文版则引述方滨兴指,一些ISP必须为自己的用户支付国际流量费用,因此这些公司「有动机」去阻碍用户访问国外网站。一位工信部官员说,用户碰到这些情况应先检查自己和网站的技术问题。
2012年10月下旬,Google位于北京的服务器被国家级骨干路由器长时间干扰连接,包括中国大陆境内用户在内访问时返回“连接超时”错误,造成大量基于Hosts技术利用Google北京服务器作为反向代理访问Google服务的用户和软件无法正常使用,例如GoAgent。测试指出数据包经过部分国家级骨干路由器时被选择性丢弃,造成与服务器连接的丢包率飙升,甚至有部分用户反映被完全阻断与服务器之间的连接。
深度封包检测(Deep packet inspection,DPI)是一种于应用层对网路上传递的资料进行侦测与处理的技术,被广泛用于入侵检测、流量分析及数据挖掘。就字面意思考虑,所谓「深度」是相对于普通的报文检测而言的——相较普通的报文检测,DPI可对报文内容和协议特征进行检测。
在中国大陆,DPI一度被ISP用于追踪用户行为以改善其广告推送业务的精准性,而最近则被国外视为防火长城城赖以检测关键词及嗅探加密流量的重要技术之一。基于必要的硬件设施、适宜的检测模型及相应的模式匹配算法,防火长城能够精确且快速地从实时网络环境中判别出有悖于预期标准的可疑流量,并对此及时作出审查者所期望的应对措施。
华为公司曾被媒体指责涉及向伊拉克政府提供DPI所依赖的硬件支持以帮助后者开展网络审查工作。
IPv6(互联网通信协议第6版)是被指定为IPv4继任者的下一代互联网协议版本。在IPv4网络,当时的网络设计者认为在网络协议栈的底层并不重要,安全性的责任在应用层。但是即使应用层数据本身是加密的,携带它的IP数据仍会泄漏给其他参与处理的进程和系统,造成IP数据包容易受到诸如信息包探测(如防火长城的关键字阻断)、IP欺骗、连接截获等手段的会话劫持攻击。
正常情况下,邮件服务器之间传输邮件或者数据不会进行加密,故防火长城能轻易过滤进出境内外的大部分邮件,当发现关键字后会通过伪造RST封包阻断 连接。而因为这通常都发生在数据传输中间,所以会干扰到内容。也有网友根据防火长城会过滤进出境邮件的特性,寻找到防火长城部署的位置。
2007年7月17日,大量使用中国国内邮件服务商的用户与国外通信出现了退信、丢信等普遍现象,症状为:
对此,新浪的 解释是「近期互联网国际线路出口不稳定,国内多数大型邮件服务提供商均受到影响,在此期间您与国外域名通信可能会出现退信、丢信等现象。为此,新浪VIP 邮箱正在采取措施,力争尽快妥善解决该问题。」而万网客户服务中心的解释是「关于近期国内互联网国际出口存在未知的技术问题导致国内用户与国外通信可能会 出现退信、丢信等普遍现象,万网公司高度重视,一直积极和国家相关机构汇报沟通,并组织了精良的技术力量努力寻找解决方桉。」
2014年12月26日,有很多中国大陆网民反映说一度无法通过客户端登录到Gmail。在此之前,国内一些用户可以通过IMAP、SMTP和POP3接收、下载邮件;据路透社报道谷歌旗下的Gmail业务已经被当局封锁。12月30日,Gmail已在中国大陆境内恢复部分功能。但Gmail网页版仍被屏蔽。
大炮(英语:Great Cannon)是中华人民共和国的网路攻击工具的名称,藉由拦截大量网路流量,对特定目标网站发动分散式阻断服务攻击(DDoS)。从2015年3月26日至31日的对GitHub发起旁观者攻击(英语:Man-on-the-side attack可认为是大炮的第一次重要应用。
第三方研究者指出,此次攻击采用了HTTP劫持,百度的JS脚本文件被中间人植入了攻击GitHub的代码,其功能是每隔2秒加载一次GreatFire或纽约时报中文网的帐号主页。百度已否认自身产品存在安全问题。。这次攻击导致GitHub在全球范围内的访问速度下降。外界普遍相信这是中国政府所为,但中国政府予以否认。 3月28日(UTC+8)起,GitHub在中国大陆十分不稳定,多数情况下无法访问。截止29日,攻击者共使用了四种DDoS攻击技术:
根据系统状态讯息页面的显示,已于3月31日停止了网路攻击,该日凌晨0:09分(UTC)已经稳定。GitHub在其Twitter与微博予以了证实。至此,此网路攻击共持续了五天。
据估计,防火长城可能拥有数百台曙光4000L服务器。
所有境外的网站都会受到关键词过滤的影响,故可能会出现暂时无法访问的情况。以下这些类型的网站被封锁的主要原因是因为其网站上发布中国政府不能接受的政治内容或未经国内政治审查过的新闻(比如中国2003年的SARS事件在中国政府揭露事实真相前关于SARS的相关报道和讨论)等方面的内容,有些综合性或技术性的网站只是含有少量的或可能牵涉到这些信息而被整体封锁。
被固定封锁或干扰的网站类型包括:
而一些知名的门户入口类、技术类、购物类、慈善类网站也经常被封锁,或被干扰得时断时续:
至于国际媒体几乎无一例外被封锁过,一般英文媒体在大陆召开高层会议或发生较大敏感事件会被短暂封锁,台湾泛蓝媒体(如联合报、中国时报、中天电视和中华电视公司等)有时会被短暂解封,其他大部分海外中文媒体会被长期封锁或干扰(有部分能打开首页,但无法点阅新闻内容):
防火长城对在中国大陆各ISP设置的黑名单基本上是同步和一致的,但有个别网站会有差别,例如:
即使同样是被封锁的网站,它们的被封锁手段和程度可能有很大区别。例如中文维基百科仅是被域名污染,通过修改Hosts文件即可正常访问(但2015年12月4日至6日期间,维基百科默认IP的443端口被封锁,导致各语言维基百科均无法访问),而法轮功网站明慧网则是既污染了域名又封锁了IP,无法通过Hosts来进行访问。
奥运会结束数月后,中国政府对海外新闻网站的封锁又重新开始。至2008年12月,重新被封锁的网站包括德国之声、BBC、美国之音、法广、澳广、加拿大广播电台等新闻机构的中文网站。此外,根据总部在美国的非盈利维权组织“自由之家”16日发布的新闻稿,这次遭中国政府封闭的还有一些被视为敏感的网站,包括无国界记者、《亚洲周刊》和《明报》等。中华人民共和国外交部发言人刘建超表示,中国总体上是采取对外开放的政策,但是中国和其他国家一样,对于网站还是要依法做必要的管理,某些网站确实存在违反中国法律的事情。有评论认为,当局此次收紧舆论控制是为了防止经济危机进一步转化为社会与政治危机。
2010年3月,当美国和智利的用户试图访问Facebook、Youtube、Twitter等网站时,由于他们的域名查询请求转交给DNS根服 务器i.root-servers.net在中国的节点处理,而这些网站在中国被封锁,结果用户收到了错误的DNS解析信息。这意味着防火长城的DNS污 染已影响到中国境外的国际互联网。
2014年11月,由北京主办的亚太经合组织(APEC)会议的新闻中心,提供的网络服务不过滤任何网站,记者可自由登入Facebook、Twitter、Google、英国广播公司等外国网站,是当局首次在大型国际活动期间全面开放互联网。外交部发言人华春莹在例行记者会上表示:「中国互联网是开放的,我们将依法进行管理。如我们承诺过的,有关部门将为峰会圆满举行竭尽全力。媒体中心设施齐全,是专门为高标准提供相关服务而建造,包括互联网服务」。
2015年11月第二届世界互联网大会期间,大会组织者向与会者提供了一套特殊的用户名和密码,用此用户名和密码登陆专用无线网络后,同样可以自由浏览境外网站,但如果直接使用当地的互联网络,依然无法浏览这些网站。
2015年4月26日,大炮对开放原始码网站wpkg.org与旅游网站ptraveler.com发动了攻击,凡是用中国IP浏览嵌入了Facebook Connect按钮脚本的网站,皆会被重新导向至这两个网站。
在2015年9月17日左右,新浪微博用户 @唐巧_boy 发布微博声称Xcode有可能被第三方代码注入,而在社交平台上引起轩然大波。乌云网后续发布相关的知识库文章。
受到XcodeGhost影响的应用程序众多,其中包括微信、网易云音乐、滴滴打车等知名度较高的应用。苹果公司对此事进行了公开声明,并对于部分感染App进行了紧急下架处理。后部分下架应用程序的厂商重新编译之后才得以重新上架。
虽然防火长城与该事件没有直接关系,但是因为防火长城的存在,苹果公司的App Store等服务在中国大陆存在访问缓慢的问题,导致部分开发者选择了从非正规的第三方渠道下载套件,同时XcodeGhost的作者通过在大陆地区各大 苹果开发社交网站散布自己带有后门框架的Xcode来诱使开发人员使用,从而埋下隐患。
此外中国官方通过一系列措施,使一些翻墙工具的开发者迫于压力放弃开发,例如2015年8月下旬,Shadowsocks的作者迫于警方压力删除了自己的项目,GoAgent的作者则自行将项目删除。
在中国使用的技术中,可以探查网民通讯内容的深度包检测技术(DPI)趋近成熟,初期虽然机器需要时间对加密报文算法结构等加以学习,但日后有很大希望成功实现实时监视通讯内容,银行及所有企业的资讯将能被检测并抽取出明文,严重威胁企业在华利益。
基于DPI获取的信息,GFW有能力更快捷高效地为设在外地(如港澳特区以及台湾)的外商伺服器植入木马,同时基于使翻牆者与伺服器通信停止的DDoS攻击、干扰阻断连接的DNS污染等攻击手段打击各地程序员的开发交流,导致国际网路损失。
封锁所採用的技术手段已不限于阻止获取信息面,而是能转而用于掌握网路意识形态、话语权的对决,乃是金融与经济等资料保密与资讯通畅的战争,甚至会波及基础建设的日常运作(如密码等被窃取)等,对此,原视中国网路审查为内政问题的美国等,自2015年中起宣布将对中国大陆官方的网路封锁行为进行第三方介入。如果外商没有遵守本地法律,甚至连单纯的商业活动都会被防火长城封锁,例如谷歌公司除了敏感性的Google搜索之外,其他无关功能如谷歌地球服务等亦在中国大陆受到封锁。同时在网路媒体的部分也因为版权的法规问题,如果想使用本就免费的串流服务,也存在着需要翻牆进入中国大陆网路的「边境管制」现象。
来源:wikipedia
Android版SpeedUp VPN,基于ShadowsocksRb,与SSR和Shadowsocks协议兼容,内置免费SSR服务器。 如果您对内置SSR VPN服务器不满意,则可以自行添加或导入任何SSR和Shadowsocks服务器使用。