首页 > 范文大全 > 正文

互联网安全 化无序为有序

开篇:润墨网以专业的文秘视角,为您筛选了一篇互联网安全 化无序为有序范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

新型的蠕虫病毒往往借助P2P(对等)技术在互联网上肆虐。传统的防火墙等安全软件技术是为保护单点系统设计的,而且其对病毒和蠕虫的检测速度也往往比需求低几个数量级。一种基于网络熵的新安全技术有望解决这一难题。

Storm蠕虫敲响

互联网安全警钟

去年,一种新蠕虫Storm开始席卷互联网。虽然它还没有引起主流媒体的太大注意,但已经让安全人士寝食难安。Storm比之前的蠕虫狡猾多了,因为它采用P2P技术及其他新手法来规避检测,肆意传播。

Storm通过潜伏代码潜入计算机,潜伏代码可用来破坏公司的整个网络。

如今市面上的网络安全软件产品提供的防御很有限。它们使用防火墙和软件补丁,前者只能阻止未授权用户访问,后者只在发现蠕虫或病毒独特模式后才能起到保护作用。等到这个费力的手工编码过程完成,蠕虫早有足够的时间来传播、衍变或者被改进。

从后知后觉

到预先防范

互联网需要一种新的安全防范办法。网络安全研究人员正在开发一种软件,它能迅速检测出源自蠕虫、病毒及其他攻击的众多入侵,又没有比例很高的假警报,这个问题困扰着许多传统互联网安全产品。这种新软件在几秒内、而不是几小时或者几天内就能发现异常网络行为,哪怕在运行速度达每秒100亿比特的骨干网上。这意味着,软件的速度快得足以阻挡几分钟内传播全球的威胁: 面对这么快的传播速度,目前负责监控的防火墙无能为力。

这新一代算法基于与熵(entropy)这种热力学概念有关的理念。作为热力学理论的基础,熵常被定义为系统无序的度量,可追溯到150多年前。但作为信息理论的一个概念,熵只有60年的历史,而且只是近十年前才开始应用到数据通信领域。

实际上,基于熵的防御能奏效是因为蠕虫的恶意活动势必会改变网络上数据流的特征。数据流的这些变化会改变网络熵,网络熵用来衡量网络上数据移动的可预测性和随机性之间变化的波动。

目前,许多人在探索数据流随机性的种种奥秘,希望抢在网络攻击者的前头进行防范,包括英特尔、微软、波士顿大学和马萨诸塞大学的研究人员已经开始进行早期的研究。虽然加州芒廷维尤的Narus公司的商用产品是目前惟一把熵应用到网络安全上的,但相信这种方法会在接下来的几年里大行其道。

摒弃弊端

利用熵以及衡量网络有序与无序所出现变化的算法可以比传统方法更早地发现蠕虫。

首先,要弄清楚流量每时每刻在网络上如何传送。网络安全系统在大型互联网服务提供商或者运营商的数据中心里工作。它们收集来自网络上诸多关键位置(节点)的流量数据。这些数据提供了有关流量特征的细节,如流量中数据包的源和目的IP地址、源和目的端口号、协议类型、每个数据的字节数以及数据包之间的间隔时间。

熵算法先根据流量特征为网络的正常行为建立档案(profile)。这份档案可充当检测异常情况的基准。Narus的系统还能收集来自网络上路由器的其他数据。把路由器的所有这些统计数据关联起来,核实算法发现的异常情况,查明根本原因,甚至建议采取哪些缓解措施来清理流量。

如今,各大运营商收集一些同样的数据,但大体上依赖“基于行为”的系统来保护骨干网。这种系统采用的算法主要在网络上的某几个点(大型公司和互联网服务提供商在此处连接到运营商)关注流量变化。比如在拒绝服务攻击期间,单一源(攻击者的计算机)和单一目的地(受害者的互联网服务器)之间的流量会激增,这表明流量企图涌向该目的地,让用户无法正常连接。攻击者为了在最大范围内搞破坏,会劫持网上的未保护机器,植入代码,让这些机器充当“僵尸机器”,从而扩大攻击范围。这些计算机实际上构成了“僵尸网络”,机器数以万计,经协调后可从多处发动攻击。这就叫分布式拒绝服务攻击,它在持续几分钟甚至几秒钟的时间内有针对性地实施破坏。

基于行为的传统系统可在客户链路处发现流量突增的这种现象,并立即提醒运营商。当然,“猫捉老鼠”的游戏刚开始。随后,攻击者会想出巧妙的新方法,隐藏行踪,避免被人发现。比如有些入侵者拼命耗用放在受害者网络内部的Web服务器的资源。它们不是向服务器发送大批流量,而只是确认哪些网页最容易耗用内存和CPU周期(如含有视频片段的网页),然后协调大批僵尸机器,专门频繁访问这些网页。

这种情况下,进入网络的总流量看似正常,不过攻击却得逞了,因为它导致服务降级,甚至终止服务。同样,洪水般的垃圾邮件会让邮件服务器招架不住。

许多网络运营商针对这几种攻击采取的对策是,把基于行为的系统的阈值调低,试图发现流量中更细微的变化。但这种阈值变化往往会带来误报,即系统常把流量的非恶性波动误以为是攻击。

另一方面,由于恶意网络异常是由人造成的,所以必然会影响自然的“随机性”即熵。发现了熵的这些变化,也就能发现异常流量。因此,安全系统必须不断监控实际的网络熵本身。

网络熵:

抑制蠕虫的新利器

信息熵最初由美国应用数学家Claude Shannon在1948年提出,用于研究传输消息中的信息量。如果数字信号的两个状态: 0和1在信号中出现的概率完全一样,那么下一个会收到哪个比特的不确定性就能最大化。另一方面,如果1的出现概率较高,那么下一个会收到哪个比特的不确定性要低一些。也就是说,如果下一个比特是1的可能性较大,那么熵就会减小。

网上的流量模式同样如此。更确切地说,只要观察数据网络上的流量,就能从中得到大量信息。如果我们观察足够全面,就能得到进出数据包的历史平均数,注意到一些重要特征,比如网络从哪些地址收到数据包、网络把数据包发到哪些地址。我们还能注意到在一天的不同时间段发送了多少数据包、使用哪些互联网协议以及总流量。在任何一个时间,网络上流量的概率分布将呈现出不同的曲线。实际上,曲线形状表明了系统的熵。如果曲线形状保持一致,那么熵很高。如果出现尖峰,就表明出现了低概率事件,熵相应很低。

互联网流量是动态、不断变化的。不过在一段时间内(如一年),会出现一些一致的模式。有时季节和地理因素也会影响模式。想利用这些模式发现异常活动,第一步是为每个特征生成概率分布。这些分布综合起来后,就能为流量建立独特档案,并且生成相应网络的“指纹”以及所谓的内部状态,即这些网络特征的总和。

如果我们长时间监控及衡量系统,就能知道哪些内部状态与合法的互联网流量有关。网络上出现的任何恶意活动都会改变流量性质,因为其指定、预谋的结果有别于网络的任何正常状态。即使攻击像是恪守网络规范的活动,如下载大量音乐文件,网络的指纹也会不同寻常,因为它多少有别于网络既定的使用模式,即使流量方面没什么不同,时间段、源地址、两者组合或者其他特征也会有所不同。

说来难以相信,互联网流量具有随机性和结构性的双重特点; 蠕虫会改变两者,让流量在某些方面看上去比正常流量还要一致或者有结构性; 而在另一些方面看上去更随机。

流入服务器的数据包似乎来自随机位置。举例说,网页请求通常来自网上各地方的网民。当然,有些人和有些网络的请求会比较多,但它们的分布图通常是相当一致的曲线。不过要是蠕虫在网上肆虐,来自被感染主机的数据包不断增加,最终占总流量的很大部分,那么这些主机的地址会不成比例地出现在任何分布图上―这表明多少流量来自某个源。

在蠕虫感染期间,已中招的主机会在很短时间内连接到其他许多主机。被感染主机建立的开启连接会占多数,熵随之减小。同样,数据包流中的目标IP地址会比正常流量中的IP地址随机得多。也就是说,目的地IP地址的分布会更分散,导致网络熵较高。

大多数恶意攻击往往会寻找及利用实现的互联网协议存在的某些漏洞。其中最重要的两种协议是下载网页的超文本传输协议(HTTP)和传输电子邮件的简单邮件传输协议(SMTP)。除了协议外,某些操作系统端口也用来发送及接收流量。

也有可能在端口层面生成指纹。攻击者会发送数据包,企图查看数据包是否收到、得到了什么响应,从而扫描查找特定的漏洞。这种扫描往往指向某个目标的目的地端口。如果这种扫描引起的流量成了总网络流量的重要部分,可以生成不同寻常的指纹。最后,恶意蠕虫活动的流量大小(流量中的数据包数量)会更占主导地位,会改变正常网络操作期间观察到的流量大小的概率分布。

“震荡波”蠕虫是网络史上传播范围最广、被研究最透彻的蠕虫之一,它就是针对特定端口的典型攻击。

“震荡波”每次活动生成独特的网络指纹。信息熵能够提取构成指纹分布的形状突然出现的任何变化。攻击者基本上无法控制与指纹有关的信息熵,因而也无法掩藏攻击行踪。

事后进行的分析发现,“震荡波”蠕虫严重影响了一家北美大型无线服务提供商网络的信息熵。统计发现白天的流量高得多,而信息熵白天高、夜间低的特征体现了这点。“震荡波”蠕虫侵入这家无线运营商的网络后,基于行为的安全系统在网络上出现的流量比正常值高出30倍后才发现了蠕虫。基于行为的系统无法发现攻击苗头,因为一台被感染机器生成的流量少得可忽略不计。不过几分钟内,这一台机器就能感染另外10台机器,而10台机器每台又能感染10台,每台生成各自的数据。等到基于行为的系统发出警报,流量已大得使网络陷于瘫痪。

“震荡波”迅速感染了大约2万台计算机。虽然很快出现了补丁,但蠕虫发动了多轮进攻,在短短一个月时间内衍生出了另外九个变种,感染了另外数十万台机器。

防御“震荡波”的传统机制最终取得了成效。不过要是能及早发现这个蠕虫,比如借助基于网络熵的系统,“震荡波”造成的破坏会极其有限,衍生的变种可能也更少。

魔道试比高

如果传统的防御要竭力跟上传统病毒的步伐,那么遇到Strom蠕虫这些更加狡猾的新型攻击,它们会远远落在后头。

Storm与早期蠕虫有很大不同。首先,它非常成功地诱使人们点击附件,它采用某种巧妙的社会工程学伎俩―即使用与热门的新闻话题有关的标题栏和文件名。

更重要的是,Storm巧妙地隐藏了其网络活动。Storm先查找用户已经在使用哪些端口和协议。要是发现了文件共享程序,如电驴这种交换音乐和视频的流行程序,就使用该程序的端口和协议来扫描网络。传统的入侵检测系统发现不了通过该端口的这种活动小幅增多的现象。Storm还查看文件共享程序在与哪些IP地址交换数据,而不是突然与一大批新的IP地址进行通信(这很容易被发现)。

最后,传统蠕虫会尽快传播,生成的指纹容易被网络熵安全系统发现。另一方面,Storm有潜伏模式和激活模式。比方说,每隔10分钟它会试图收集信息。然后潜伏下来,随后伺机而动。

我们如何对付这个可怕的隐患呢?就像处理所有蠕虫一样,我们可以查找网络熵的变化。毕竟,Storm仍得改变用户行为方面的某些特征,这些改变是能够发现的。举例说,在Strom激活的10分钟内,受害者的计算机会发送大量电子邮件,多得异常,通常是每分钟大约30封电子邮件,即10分钟激活阶段内大约发送300封。没人会发送这么多的电子邮件。而且,电子邮件通过通常不传送电子邮件流量的端口发出去。这些都会改变网络熵。

受害者与主计算机的通信也会有别于以前的使用模式,几天甚至几周都保持连接,流量却很小。另外,如果同一网络上的两台计算机都沦为Storm的受害者,它们的行为突然惊人地相似,而之前它们大不相同(可能一个下载大量电视节目,另一个不是这样),也要考虑这是Strom在作祟。

不管怎样,Storm都会改变受害者计算机流量的网络熵。比如,电子邮件活动的增加使流量偏向于端口25(通常的电子邮件端口)来传输,这会减小熵,因为端口25的活动变得更加容易预测: 电子邮件是发送,而不是接收。

基于行为的传统互联网安全服务器无法足够准确、及时地发现这些攻击,从而无法缓解攻击、阻止攻击得手。如今的运营商及其他各大网络提供商需要一种新的安全方案,能够异常迅速地关联流量数据。基于信息熵的系统具有这功能,而这些关键网络的安全也就有了保障。(沈建苗 编译)

链接一

熵和网络熵

在热力学中,熵指物理系统(如一杯冰水、气球中的气体或太阳系)的现状出现的变化。它是“分子无序”的度量。1877年,奥地利物理学家Ludwig Boltzmann设想用一种概率方法来衡量气体分子集合的熵。Boltzmann证明了集合的熵与这种气体拥有的微观状态数成比例。

什么是分子的结构呢?不妨考虑气温,气温由分子移动的平均速度决定。室温可能是20℃,但有些分子的移动速度会很快,比如门开后突然吸入的气流。熵体现了哪些分子以哪种速度移动的不确定性。

就一组特定的宏观量如温度和体积而言,熵衡量系统(这里指室内空气)的概率反映了在不同可能状态下分布的程度。举个简单的例子,如果掷一副骰子,会有11种不同结果,而有些结果的概率较高。可能性和概率的完整数组就是概率分布(probability distribution)―比如得到2只有一种可能,而得到6有五种可能、得到7有六种可能。同样,室内的每个气体分子有许多不同的可能位置和速度。

就一个骰子可能结果分布的熵而言,每种可能结果都有同样概率(1/6),所以概率分布是平的。这种情况下,分布结果没什么可以预测的。它们是完全随机的,这种分布的熵非常高―实际达到了最大值。以两个骰子为例,有几种可能组合或者结果的概率要高于另几种组合。比如说,7的概率比11的概率高得多。所以如果把两个骰子掷25次,结果比把一个骰子掷25次的随机性小。换一种说法是,两个骰子系统的熵小于一个骰子系统。据此能更可靠地猜出特定结果。

所有可能位置和速度的数组形成了气体的分布概率。因为熵理论其实旨在根据一系列结果概率来描述系统的结构,所以就能把高或低的熵与结果的高或低概率联系起来。所以,热力学上的熵(就像气体分子处于预测状态的概率)与我们对某系统了解的信息量大致相当。

链接二

病毒和蠕虫的攻击机理

病毒是种程序,可自我复制,在用户不知道的情况下感染计算机。它常常会破坏计算机的文件甚至硬件本身。同样,蠕虫也是自我复制的计算机程序,使用网络把蠕虫副本从一台计算机(名为“主机”)发送到网络上的其他计算机。蠕虫经常通过耗用带宽来危害网络。

电子邮件蠕虫这种最常见的蠕虫传播缓慢,原因是用户点击附件后才会被感染或者传播蠕虫。Storm通过各种途径植入到主机上,而最常见的途径是电子邮件附件。但并不是所有蠕虫都是通过电子邮件传播的: 2004年,“震荡波”(Sasser)这个臭名昭著的蠕虫利用了微软Windows的网络漏洞,指令被感染系统下载并执行病毒代码。这种蠕虫的传播速度确实很快。虽然“震荡波”之后没出现过灾难性的蠕虫,但网络安全系统仍得防范这种攻击,因为我们根本不知道下一个蠕虫会何时突然袭击。

面对可能迅速出现、防火墙无力应对的攻击,许多公司和政府如今依靠出售通信带宽给自己的互联网及其他服务提供商,以便网络流量进入之前先“清理”。全球最大的运营商正在竭力这么做,包括AT&T、BT、韩国电信、NTT和Verizon。它们是互联网的支柱,每天承载着全球的大部分流量。但它们拥有世界上最庞大、最复杂的网络,因而流量检查起来绝非易事。

首先,这些全球性网络有几百个出入口。如BT Global Services在全球170个国家开展业务,在每个国家就要为成千上万的大公司和服务提供商提供连接。不过,防火墙及其他安全技术旨在保护每一条“链路”即互联网连接―每家公司的广域网在此处与运营商交换数据。其次,防火墙设备运行于公司网络的速度,而不是AT&T和NTT等运营的那种骨干网。而公司网络的运行速度通常在1Gbps以下。为这种网络设计的商用防火墙产品根本无力保护含有数千条链路、链路核心速率快10到100倍的网络。