2010年07月16日

前 言

  互联网是人类智慧的结晶,20世纪的重大科技发明,当代先进生产力的重要标志。互联网深刻影响着世界经济、政治、文化和社会的发展,促进了社会生产生活和信息传播的变革。

  中国政府充分认识到互联网对于加快国民经济发展、推动科学技术进步和加速社会服务信息化进程的不可替代作用,高度重视并积极促进互联网的发展与运用。中国政府把发展互联网作为推进国家信息化建设、实现经济社会科学发展、提高科技创新能力和人们生活质量的重要手段;积极营造有利于互联网发展的政策、法规和市场环境;通过完善国家信息网络基础设施、建设国家重点信息网络工程、鼓励相关科技研发、大力培养信息技术人才、培育多元化信息通信服务市场主体等举措,不断推动中国互联网持续健康快速发展,满足人们日益增长的信息消费需求。

  中国政府大力倡导和积极推动互联网在中国的发展和广泛应用。随着互联网在中国的快速发展与普及,人们的生产、工作、学习和生活方式已经开始并将继续发生深刻的变化。目前中国已成为世界上互联网使用人口最多的国家。

  建设好、利用好、管理好互联网,关系国家经济繁荣和发展,关系国家安全与社会和谐,关系国家主权、尊严和人民根本利益。积极利用、科学发展、依法管理、确保安全是中国政府的基本互联网政策。中国政府始终坚持依法管理互联网,致力于营造健康和谐的互联网环境,构建更加可信、更加有用、更加有益于经济社会发展的互联网。

  中国政府将不断完善互联网发展与管理政策,使其更加符合互联网发展与管理的内在规律及客观需要。在实践中,中国政府十分注重借鉴各国发展与管理互联网的有益经验,并愿与世界各国一道共同促进世界互联网的繁荣发展。

  发表《中国互联网状况》白皮书,旨在介绍中国互联网发展的基本情况,说明中国政府关于互联网的基本政策以及对相关问题的基本观点,帮助公众和国际社会全面了解中国互联网发展与管理的真实状况。
一、推进互联网发展与普及

  中国政府和人民以积极的姿态迎接互联网时代的到来。在20世纪80年代中后期,中国的科研人员和学者就在国外同行的帮助下,积极尝试利用互联网。在1992年、1993年国际互联网年会等场合,中国计算机界的专家学者曾多次提出接入国际互联网的要求,并得到国际同行们的理解与支持。1994年4月,在美国华盛顿召开中美科技合作联委会会议期间,中国代表与美国国家科学基金会最终就中国接入国际互联网达成一致意见。1994年4月20日,北京中关村地区教育与科研示范网接入国际互联网的64K专线开通,实现了与国际互联网的全功能连接,这标志着中国正式接入国际互联网。

  中国把发展互联网作为推进改革开放和现代化建设事业的重大机遇。中国政府先后制定了一系列政策,规划互联网发展,明确互联网阶段性发展重点,推进社会信息化进程。1993年,中国成立国家经济信息化联席会议,负责领导国家公用经济信息通信网建设。1997年,制定《国家信息化“九五”规划和2010年远景目标》,将互联网列入国家信息基础设施建设,提出通过大力发展互联网产业,推进国民经济信息化进程。2002年,颁布《国民经济和社会发展第十个五年计划信息化专项规划》,确定中国信息化发展的重点包括推行电子政务、振兴软件产业、加强信息资源开发利用、加快发展电子商务等。2002年11月,中国共产党第十六次全国代表大会提出,以信息化带动工业化,以工业化促进信息化,走出一条新型工业化路子。2005年11月,制定了《国家信息化发展战略(2006-2020年)》,进一步明确了互联网发展的重点,提出围绕调整经济结构和转变经济增长方式,推进国民经济信息化;围绕提高治国理政能力,推行电子政务;围绕构建和谐社会,推进社会信息化等。2006年3月,全国人民代表大会审议通过《国民经济和社会发展第十一个五年规划纲要》,提出推进电信网、广播电视网和互联网三网融合,构建下一代互联网,加快商业化应用。2007年4月,中国共产党中央政治局会议提出大力发展网络文化产业,发展网络文化信息装备制造业。2007年10月,中国共产党第十七次全国代表大会确立“发展现代产业体系,大力推进信息化与工业化融合,促进工业由大变强”的发展战略。2010年1月,国务院决定加快推进电信网、广播电视网和互联网三网融合,促进信息和文化产业发展。在中国政府的积极推动及明确的政策引导下,中国互联网逐步走上全面、持续、快速发展之路。

  中国投入大量资金建设互联网基础设施。1997年至2009年,全国共完成互联网基础设施建设投资4.3万亿元人民币,建成辐射全国的通信光缆网络,总长度达826.7万公里,其中长途光缆线路84万公里。到2009年底,中国基础电信企业互联网宽带接入端口已达1.36亿个,互联网国际出口带宽达866,367Mbps,拥有7条登陆海缆、20条陆缆,总容量超过1,600Gb。中国99.3%的乡镇和91.5%的行政村接通了互联网,96.0%的乡镇接通了宽带。2009年1月,中国政府开始发放第三代移动通信(3G)牌照,目前3G网络已基本覆盖全国。移动互联网正快速发展,互联网将惠及更广泛的人群。

  互联网基础设施的建设和完善促进了互联网的普及和应用。截至2009年底,中国网民人数达到3.84亿,比1997年增长了618倍,年均增长3,195万人,互联网普及率达到28.9%,超过世界平均水平。中国境内网站达323万个,比1997年增长了2,152倍。中国拥有IPv4地址约2.3亿个,已成为世界第二大IPv4地址拥有国。中国使用宽带上网的网民达到3.46亿人,使用手机上网的网民达到2.33亿人。中国网民上网方式已从最初以拨号上网为主,发展到以宽带和手机上网为主。中国互联网发展与普及水平居发展中国家前列。

  中国政府积极推动下一代互联网研发。20世纪90年代后期,中国开始下一代互联网的研发,实施“新一代高可信网络”等一系列科技重大项目。2001年,中国第一个下一代互联网地区试验网(NFCNET)在北京建成。2003年,“中国下一代互联网示范工程”(CNGI)正式启动,标志着中国进入下一代互联网的大规模研发和建设阶段,现已建成世界上最大的IPv6示范网络,试验网所用的中小容量IPv6路由器技术、真实IPv6源地址认证技术和下一代互联网过渡技术等处于国际先进水平。中国提出的有关域名国际化、IPv6源地址认证、IPv4-IPv6过渡技术等技术方案,获得互联网工程任务组(IETF)的认可,成为互联网国际标准、协议的组成部分。

  中国互联网发展、普及和应用存在区域和城乡发展不平衡问题。受经济发展、教育和社会整体信息化水平等因素的制约,中国互联网呈现东部发展快、西部发展慢,城市普及率高、乡村普及率低的特点。截至2009年底,东部地区互联网普及率为40.0%,西部地区为21.5%;城市网民占网民总数的72.2%,农村网民占27.8%。弥合地区之间、城乡之间的“数字鸿沟”,中国还需要付出艰苦努力。

  中国互联网是在改革开放的大潮中发展起来的,它顺应了中国改革开放的要求,推进了改革开放的进程。随着中国经济社会的快速发展以及人们精神文化需求的日益增长,互联网在中国将更加普及,人们对互联网应用水平的要求将会更高。中国政府将继续致力于推动互联网的发展和普及,努力在未来5年使中国互联网的普及率达到45%,使更多人从互联网受益。

2008年12月13日

[摘要] 网络监听,可以有效地对网络数据、流量进行侦听、分析,从而排除网络故障,但它同时又带来了信息失窃等极大隐患,也因此,网络监听成为了一个普通的网络管理员想真正成长为资深的网络工程师的必经之路。
  网络监听,可以有效地对网络数据、流量进行侦听、分析,从而排除网络故障,但它同时又带来了信息失窃等极大隐患,也因此,网络监听成为了一个普通的网络管理员想真正成长为资深的网络工程师的必经之路。

  网络监听,在网络安全上一直是一个比较敏感的话题,作为 一种发展比较成熟的技术,监听在协助网络管理员监测网络传输数据,排除网络故障等方面具有不可替代的作用,因而一直倍受网络管理员的青睐。然而,在另一方面网络监听也给以太网安全带来了极大的隐患,许多的网络入侵往往都伴随着以太网内网络监听行为,从而造成口令失窃,敏感数据被截获等等连锁性安全事件。

  网络监听在安全领域引起人们普遍注意是在94年开始的,在那一年2月间,相继发生了几次大的安全事件,一个不知名的人在众多的主机和骨干网络设备上安装了网络监听软件,利用它对美国骨干互联网和军方网窃取了超过100000个有效的用户名和口令。上述事件可能是互联网上最早期的大规模的网络监听事件了,它使早期网络监听从"地下"走向了公开,并迅速的在大众中普及开来。

  关于网络监听常常会有一些有意思的问题,如:"我现在有连在网上的计算机了,我也有了窃听的软件了,那么我能不能窃听到微软(或者美国国防部,新浪网等等)的密码?

  又如:我是公司的局域网管理员,我知道hub很不安全,使用hub这种网络结构将公司的计算计互连起来,会使网络监听变得非常容易,那么我们就换掉hub,使用交换机,不就能解决口令失窃这种安全问题了么?

  这是两个很有意思的问题,我们在这里先不做回答,相信读者看完全文后会有自己正确的答案。

  基本概念:认清mac地址和ip地址

  首先,我们知道,一台接在以太网内的计算机为了和其他主机进行通讯,在硬件上是需要网卡,在软件上是需要网卡驱动程序的。而每块网卡在出厂时都有一个唯一的不与世界上任何一块网卡重复的硬件地址,称为mac地址。同时,当网络中两台主机在实现tcp/ip通讯时,网卡还必须绑定一个唯一的ip地址。下面用一个常见的unix命令ifconfig来看一看作者本人的一台正常工作的机器的网卡:

  [yiming@server/root]# ifconfig -a

  hme0: flags=863 mtu 1500

  inet 192.168.1.35 netmask ffffffe0

  ether 8:0:20:c8:fe:15

  从这个命令的输出中我们可以看到上面讲到的这些概念,如第二行的192.168.1.35是ip 地址,第三行的8:0:20:c8:fe:15是mac地址。请注意第一行的BROADCAST,MULTICAST,这是什么意思?一般而言,网卡有几种接收数据帧的状态,如unicast,broadcast,multicast,promiscuous等,unicast是指网卡在工作时接收目的地址是本机硬件地址的数据帧。Broadcast是指接收所有类型为广播报文的数据帧。Multicast是指接收特定的组播报文。Promiscuous则是通常说的混杂模式,是指对报文中的目的硬件地址不加任何检查,全部接收的工作模式。对照这几个概念,看看上面的命令输出,我们可以看到,正常的网卡应该只是接收发往自身的数据报文,广播和组播报文,请大家记住这个概念。

  对网络使用者来说,浏览网页,收发邮件等都是很平常,很简便的工作,其实在后台这些工作是依靠tcp/ip协议族实现的,大家知道有两个主要的网络体系:OSI参考模型和TCP/IP参考模型,OSI模型即为通常说的7层协议,它由下向上分别为物理层、数据链路层、网络层、传输层、会话层、表示层、应用层,而tcp/ip模型中去掉了会话层和表示层后,由剩下的5层构成了互联网的基础,在网络的后台默默的工作着。

  下面我们不妨从tcp/ip模型的角度来看数据包在局域网内发送的过程:当数据由应用层自上而下的传递时,在网络层形成ip数据报,再向下到达数据链路层,由数据链路层将ip数据报分割为数据帧,增加以太网包头,再向下一层发送。需要注意的是,以太网的包头中包含着本机和目标设备的mac地址,也即,链路层的数据帧发送时,是依靠48bits的以太网地址而非ip地址来确认的,以太网的网卡设备驱动程序不会关心ip数据报中的目的ip地址,它所需要的仅仅是mac地址。

  目标ip的mac地址又是如何获得的呢?发端主机会向以太网上的每个主机发送一份包含目的地的ip地址的以太网数据帧(称为arp数据包),并期望目的主机回复,从而得到目的主机对应的mac地址,并将这个mac地址存入自己的一个arp缓存内。

  当局域网内的主机都通过HUB等方式连接时,一般都称为共享式的连接,这种共享式的连接有一个很明显的特点:就是HUB会将接收到的所有数据向HUB上的每个端口转发,也就是说当主机根据mac地址进行数据包发送时,尽管发送端主机告知了目标主机的地址,但这并不意味着在一个网络内的其他主机听不到发送端和接收端之间的通讯,只是在正常状况下其他主机会忽略这些通讯报文而已!如果这些主机不愿意忽略这些报文,网卡被设置为promiscuous状态的话,那么,对于这台主机的网络接口而言,任何在这个局域网内传输的信息都是可以被听到的。

        隐患:混杂模式下接收所有信息

  我们不妨举一个例子来看看:我们现在有A,B两台主机,通过hub相连在一个以太网内,现在A机上的一个用户想要访问B机提供的WWW服务,那么当A机上的用户在浏览器中键入B的ip地址,得到B机提供的web服务时,从7层结构的角度上来看都发生了什么呢?

  1:首先,当A上的用户在浏览器中键入B机的地址,发出浏览请求后,A机的应用层得到请求,要求访问IP地址为B的主机。

  2:应用层于是将请求发送到7层结构中的下一层传输层,由传输层实现利用tcp对ip建立连接。

  3:传输层将数据报交到下一层网络层,由网络层来选路。

  4:由于A,B两机在一个共享网络中,IP路由选择很简单:IP数据报直接由源主机发送到目的主机。

  5:由于A,B两机在一个共享网络中,所以A机必须将32bit的IP地址转换为48bit的以太网地址,请注意这一工作是由arp来完成的。

  6:链路层的arp通过工作在物理层的hub向以太网上的每个主机发送一份包含目的地的ip地址的以太网数据帧,在这份请求报文中申明:谁是B机IP地址的拥有者,请将你的硬件地址告诉我。

  7:在同一个以太网中的每台机器都会"接收"(请注意这一点!)到这个报文,但正常状态下除了B机外其他主机应该会忽略这个报文,而B机网卡驱动程序识别出是在寻找自己的ip地址,于是回送一个arp应答,告知自己的ip地址和mac地址。

  8:A机的网卡驱动程序接收到了B机的数据帧,知道了B机的mac地址,于是以后的数据利用这个已知的MAC地址作为目的地址进行发送。同在一个局域网内的主机虽然也能"看"到这个数据帧,但是都保持静默,不会接收这个不属于它的数据帧。

  上面是一种正常的情况,如果网卡被设置为为混杂模式(promiscuous),那么第8步就会发生变化,这台主机将会默不作声的听到以太网内传输的所有信息,也就是说:窃听也就因此实现了!这会给局域网安全带来极大的安全问题,一台系统一旦被入侵并进入网络监听状态,那么无论是本机还是局域网内的各种传输数据都会面临被窃听的巨大可能性。

  实用的网络监听工具介绍

  上面我们看到,一切的关键就在于网卡被设置为混杂模式的状态,这种工作复杂吗?不幸的是,这种工作并不复杂,目前有太多的工具可以做到这一点。  自网络监听这一技术诞生以来,产生了大量的可工作在各种平台上相关软硬件工具,其中有商用的,也有free的。在google上用sniffer tools作为关键字,可以找到非常多。

  作者在这里列举一些作者喜欢的软件,供有兴趣的读者参考使用。

  Windows平台下的:

  Windump

  Windump是最经典的unix平台上的tcpdump的window移植版,和tcpdump几乎完全兼容,采用命令行方式运行,对用惯tcpdump的人来讲会非常顺手。目前版本是3.5.2,可运行在Windows 95/98/ME/Windows NT/2000/XP平台上

  Iris

  Eeye公司的一款付费软件,有试用期,完全图形化界面,可以很方便的定制各种截获控制语句,对截获数据包进行分析,还原等。对管理员来讲很容易上手,入门级和高级管理员都可以从这个工具上得到自己想要得东西。运行在Windows 95/98/ME/Windows NT/2000/XP平台上

  unix平台下的:

  tcpdump

  不多说,最经典的工具,被大量的*nix系统采用,无需多言。

  ngrep

  和tcpdump类似,但与tcpdump最大的不同之处在于,借助于这个工具,管理员可以很方便的把截获目标定制在用户名,口令等感兴趣的关键字上。

  snort

  目前很红火的免费的ids系统,除了用作ids以外,被用来sniffer也非常不错,可以借助工具或是依靠自身能力完全还原被截获的数据。

  Dsniff

  作者设计的出发点是用这个东西进行网络渗透测试,包括一套小巧好用的小工具,主要目标放在口令,用户访问资源等敏感资料上,非常有特色,工具包中的arpspoof,macof等工具可以令人满意的捕获交换机环境下的主机敏感数据。

  Ettercap

  和dsniff在某些方面有相似之处,也可以很方便的工作在交换机环境下

  提示:国内用户访问这个站点需要使用代理服务器

  Sniffit

  被广泛使用的网络监听软件,截获重点在用户的输出。

     网络监听的防范方法

  上面我们介绍了可以用来进行网络监听的软件,那么对这种不受欢迎的行为,有没有一些防范手段呢?

  上面我们知道,sniffer是发生在以太网内的,那么,很明显,首先就要确保以太网的整体安全性,因为sniffer行为要想发生,一个最重要的前提条件就是以太网内部的一台有漏洞的主机被攻破,只有利用被攻破的主机,才能进行sniffer,去收集以太网内敏感的数据信息

  其次,采用加密手段也是一个很好的办法,因为如果sniffer抓取到的数据都是以密文传输的,那对入侵者即使抓取到了传输的数据信息,意义也是不大的-比如作为telnet,ftp等安全替代产品目前采用ssh2还是安全的。这是目前相对而言使用较多的手段之一,在实际应用中往往是指替换掉不安全的采用明文传输数据的服务,如在server端用ssh,openssh等替换unix系统自带的telnet,ftp,rsh,在client端使用securecrt,sshtransfer替代telnet,ftp等。

  除了加密外,使用交换机目前也是一个应用比较多的方式,不同于工作在第一层的hub,交换机是工作在二层,也就是说数据链路层的,以CISCO的交换机为例,交换机在工作时维护着一张ARP的数据库,在这个库中记录着交换机每个端口绑定的MAC地址,当有数据报发送到交换机上时,交换机会将数据报的目的MAC地址与自己维护的数据库内的端口对照,然后将数据报发送到"相应的"端口上,注意,不同于HUB的报文广播方式,交换机转发的报文是一一对应的。对二层设备而言,仅有两种情况会发送广播报文,一是数据报的目的MAC地址不在交换机维护的数据库中,此时报文向所有端口转发,二是报文本身就是广播报文。由此,我们可以看到,这在很大程度上解决了网络监听的困扰。但是有一点要注意,随着dsniff,ettercap等软件的出现,交换机的安全性已经面临着严峻的考验!我们将在后面对这种技术进行介绍。

  此外,对安全性要求比较高的公司可以考虑kerberos,kerberos是一种为网络通信提供可信第三方服务的面向开放系统的认证机制,它提供了一种强加密机制使client端和server即使在非安全的网络连接环境中也能确认彼此的身份,而且在双方通过身份认证后,后续的所有通讯也是被加密的。在实现中也即建立可信的第三方服务器保留与之通讯的系统的密钥数据库,仅kerberos和与之通讯的系统本身拥有私钥(private key),然后通过private key以及认证时创建的session key来实现可信的网络通讯连接。