专利名称:用于通过网络安全地更新脆弱系统的装置和方法
技术领域:
本发明涉及计算机安全领域,更具体地涉及一种用于通过网络安全地 更新脆弱系统的装置和方法。
背景技术:
由互联网蠕虫造成的安全事件正在变成对个人计算机和企业IT系统 的重大威胁。根据美国计算机紧急事件响应小组/协调中心(CERT/CC) 的报告,2003年度报告的脆弱性(vulnerability)共达3,784个,而该年度 报告的安全事件共达137,529起,并且该数量正在ijyt增加着。2003 4# 虐的著名的"Blaster"蠕虫引起了成百万计算机的崩溃,对个人和企业造 成了巨大的损失。大多数脆弱性是由有缺陷的软件造成的。如果恶意的黑客利用这些脆 弱性(已报告的和未报告的)并散发蠕虫,则会发生安全亊件。例如, "Blaster"蠕虫就利用了在微软安全公报MS03-026中描述的微软DCOM RPC接口中的脆弱性。使互联网蠕虫造成的威胁最小化的最实用的方法之一是时刻关注互联 网安全才艮告,并经常给系统打补丁,以消除系统所存在的脆弱性。然而, 由于通常软件系统本身的极端复杂性,存在如此多的已报告的脆弱性和所 需要的补丁(例如,来自微软公司的就有数十个甚至可能数百个安全补丁 ), 以致于让普通用户下载每个需要的安全更新,并手动打补丁,这几乎是不 可能的。因此,很多软件厂商提供了在线更新系统,例如微软的Windows Update、 Symantec Live Update等。在这种系统中, 一个特殊的客户端软 件将确定需要什么更新,并自动从更新站点下栽它们。通过网络进行实时更新具有易于管理的优点,但不幸的是,在脆弱系 统通过网络进行在线更新的同时,却极有可能受到蠕虫的攻击。尤其对于零日攻击(0-day attacking)的情况或新安装的系统来说,在线更新有可 能是一场灾难。零日攻击是指在一种安全脆弱性被公布的同一 日,利用这 种安全脆弱性进行蠕虫等攻击的行为。由于此时尚不存在对该安全脆弱性 的更新补丁,因此当系统进行针对其他脆弱性的安全更新时,就无法防御 该零日攻击。而对新安装的系统来说,由于它还没有以任何安全更新打过 补丁,所以它对于所有已报告的安全漏洞和蠕虫来说将是脆弱的。当它连 接到网络以便下栽更新时,4W可能在其完成更新之前已被蠕虫感染。在 企业的内联网中,情况更是如此。在IGA2004年IT威旨会上,"IBM 网络内永不消亡的蠕虫"被列为第二个威胁。对这个问题的一种补救措施是在脆弱系统连接到网络并下载更新时, 用 一临时的防火墙将其隔离并使其对所有其他机器为不可见。另 一种可能 的方法是在不脆弱的系统(例如,已打过补丁的Linux盒(box)主机、 或Windows盒主机)中手动下载更新,并以除了网络之外的任何手段(例 如,USB盘、CDR等)复制这些更新。但这两种方法对用户来说都很不 方便。前者需要重新配置网络或安装专用于在线更新的防火墙,而后者则 失去了自动更新的方便省时的优点。可以设想另一种纯软件的解决方案,例如通过操作系统中的一防火墙 ;溪块来过滤掉有可能来自蠕虫的所有特殊的网络包。但这种解决方案难以 支持遗留操作系统,并且也增加了由于该模块或其他操作系统模块的有缺 陷实现而带来的风险。因此,显然需要一种更为方便和安全的通过网络安全地更新脆弱系统 的装置及方法。发明内容在本发明中,当脆弱系统连接到网络以下载安全更新时,利用或激活 一种根据本发明的装置。该装置介于脆弱系统和网络之间,并将仅允许从系统到外部网络的传出连接,而通过过滤掉特殊网络包(例如,TCPSYN 包、或所有的UDP包)来禁止传入连接。该装置将阻挡来自蠕虫的恶意网 络包,并保护系统免受网络攻击。根据本发明的一个方面,提供了一种用于通过网络安全地更新脆弱系 统的装置,该装置位于该系统和该网络之间,并实现为专用硬件,其包括与该系统连接的内部接口;与该网络连接的外部接口;以及至少一个过滤模块,用于过滤掉特定的传入网络包以阻挡可能的网络攻击。根据本发明的另一个方面,还提供了一种用于通过网络安全地更新脆弱系统的方法,该方法包括以下步骤在该系统和该网络之间设置上述的 装置;以及经由该装置通过网络对该系统进行安全更新。根据本发明的再一个方面,还提供了一种用于通过网络安全地更新脆 弱系统的方法,该包括以下步骤由该脆弱系统通过网络向更新服务器发 出更新请求,来进行更新;以及过滤掉特定的传入网络包以阻挡可能的网 络攻击。与现有技术的解决方案相比,本发明具有以下优点与纯软件的实现(例如,操作系统的防火墻模块)相比,本发明的装 置是独立于操作系统的,并因此减少了最终用户支持多个操作系统的成本, 并消除了由于该模块或其他操作系统模块的有缺陷实现而造成的风险。本发明的装置对于用户和软件是透明的,并因此非常方便。它不需要 为在线更新而特别地重新配置网络或安装防火墻,并且也避免了通过网络 手动下栽更新。由于过滤规则很简单,该装置可以非常低的成本实现。
在所附权利要求中阐述了被认为是本发明的特点的新颖特征。但是, 通过在结合附图阅读时参照下面对说明性实施例的详细说明将最好地理解 发明本身以及其优选使用模式、另外的目标以及优点,但应理解到附图仅 示出本发明的典型实施例,而不应被认为是限制本发明的范围,其中图1示出了根据本发明的实施例的用于通过网络安全地更新脆弱系统的装置的示意性框图;以及图2示出了根据本发明的实施例的用于通过网络安全地更新脆弱系统 的方法的示意性流程图。
具体实施方式
以下参照附图对本发明的用于通过网络安全地更新脆弱系统的装置的 实施例进行详细描述,但应指出的是,下文中描述仅用于示例和说明的目 的,而不构成对本发明的限制。在下文中描述中了大量技术细节以便更清 楚地解释本发明,并使本领域中的技术人员能够据此实现本发明,但这并 不意味着本发明的实现必须依赖于这些细节;相反,可实现本发明而没有 所述的一些特征,或具有附加的或不同的特征。在此说明书内的对"一个实施例"、"优选实施例"、"实施例"或 类似语言的提及是指与该实施例相联系地说明的特定特征、结构或特性被 包含在本发明的至少一个实施例内。因此,在此整个说明书内的出现的短 语"一个实施例"或"优选实施例"可能但并不一定均指相同的实施例。 此外,本发明的所描述的特征、结构或特性可以任何合适的方式被组合在 一个或多个实施例内。本发明的用于通过网络安全地更新脆弱系统的装置有两个主要实施 例。 一个实施例是介于该系统和网络之间的独立设备。另一个实施例是物 理存在于该系统的网络接口卡或其他部件上的嵌入模块。图1示出了根据本发明的一个实施例的用于通过网络安全地更新脆弱 系统的装置100的示意性框图。如图所示,该通过网络安全地更新脆弱系 统的装置ioo是一独立设备,位于该需要更新的计算机系统与网络之间, 并优选地位于该需要更新的计算机系统附近。作为另一种选择,该装置100 也可位于连接到多个计算机系统的集线器或其他设备附近,用于通过网络安全地更新该多个计算机系统。或者,该装置IOO也可以位于内部网络与外部网络之间,并位于网络防火墙、代理服务器或网关等设备附近,这样该用于通过网络安全地更新脆弱系统的装置100将用于通过外部网络安全地更新内部网络内的多个脆弱计算机系统。如本领域的技术人员可理解的,所述脆弱系统是指任何需要进行安全更新的计算机系统或数字处理系统,包括但不限于个人计算机、工作站、 应用服务器、代理服务器、网关、路由器等等。所述网络是指任何计算机 网络,包括但不限于局域网、广域网、内联网、因特网、无线网络等等。如图所示,该用于通过网络安全地更新脆弱系统的装置100包括与该 待进行安全更新的计算机系统连接的内部接口 101,与网络连接的外部接 口 102,以及至少一个过滤才莫块103,所述过滤模块通过过滤掉特殊的网 络包以阻挡可能的网络攻击。作为独立设备的该装置100可被实现为位于待更新的脆弱计算机系统 的网络接口卡和电缆之间的插座插头对(类似于适配器),或被实现为一种特殊网络电缆,从而方便该设备与计算机系统的连接及其使用。当然, 本发明并不局限于此。当本发明的该装置100实现为插头插座对时,内部接口 101与待进行 安全更新的计算机系统的网络接口卡相连,外部接口 102与不安全的外部 网络相连。内部接口 101的硬件形式例如为RJ45型的网线插头,外部接 口 102的硬件形式例如为RJ45型的网线插座。当然,也可以采用其他形 式的插头插座。当本发明的装置100实现为特殊电缆时,内部接口 101与待进行安全 更新的网络接口卡相连,外部接口 102与不安全的外部网络相连。内部接 口 101与外部接口 102的》更件形式例如均为RJ45型的网线插头。当然, 也可以采用其他形式的网络插头。应指出的是,在本发明的优选实施例中,所述内部接口 IOI和外部接 口 102只是简单的硬件连接装置,用于连接本发明的装置100与待进行安全更新的计算机系统以及外部网络之间的连接作用,以便能够经由本发明 的装置100在待进行安全更新的计算机系统和外部网络之间交换数据包, 而其本身不对流经本发明的装置100的数据包进行任何处理,因此所述内部接口 101和外部接口 102可以是任何标准的或非标准的硬件连接形式。 当然,所述内部接口 IOI和外部接口 102本身也可以具有一定的数据处理 功能例如数据緩沖等,此时其可以是具有一定的硬件或软件构造的较复杂 的功能模块。来自待进行安全更新的计算机系统的与请求进行安全更新相关的传出 包通过内部接口 101^皮传递到本发明的装置100内部,并通过外部接口 102 4皮传递到外部网络,然后通过外部网络4皮传递到相应的安全更新服务器。 而来自安全更新服务器的包含安全更新数据的数据包以及任何其他传入数 据包经由外部网络102被传递到本发明的装置100内部,并由过滤模块103 进行根据本发明的处理,即过滤掉可能恶意的特殊数据包,并允许来自安 全更新服务器的包含安全更新数据的数据包通过。然后,过滤后的来自安 全更新服务器的包含安全更新数据的数据包通过所述内部接口 101被传递 到待进行安全更新的脆弱计算机系统。过滤模块103可被配置为过滤掉所有传入的TCP SYN包来禁止所有 传入的连接。这将阻止需要建立到计算机系统的TCP连接的网络攻击,由 于大多数网络攻击都需要首先通过TCP SYN包建立到计算机系统的连接, 这可以防止大部分网络攻击。过滤模块103也可被配置为过滤掉所有传入的UDP包来阻止对UDP 服务的网络攻击。由于绝大多数蠕虫都是通过TCP和UDP端口进行攻击,因此同时过 滤掉TCP SYN和UDP可以防止绝大多数网络蠕虫病毒攻击。如本领域的技术人员可理解的,过滤模块103可通过分析TCP报文段 的首部中的同步比特SYN来判断该TCP包是否为TCP SYN包,并可通 过分析IP数据报首部中的"协议"字段来判断该包是TCP包还是UDP包。过滤模块103既可以以ASIC芯片的形式实现,又可以以固件的形式 实现。考虑到成本和性能的问题,过滤模块103优选地以ASIC芯片的形 式实现。优选地,本发明的用于通过网络安全地更新脆弱系统的装置100还包括一物理开关104,该物理开关用来控制过滤模块103的过滤级别,所述 过滤级别例如包括,仅过滤掉TCP SYN包,或过滤掉TCP SYN包和所有 的UDP包。优选地,该用于通过网络安全地更新脆弱系统的装置100还包括一监 视模块105,该监视模块105监视由被保护的计算机系统所发起的所有传 出连接,即监视由所述内部接口 101传递到所述外部接口 102的所有传出 包。当监#雄块105检测到一个由被保护的计算机系统传出的TCP SYN 包时,将把该包的目的地址及目的端口记录下来,并利用主动通知或者等 待过滤模块103查询的方式通知过滤模块103。此后,当过滤模块103接 收到一个传入的TCP包时,会检测该TCP包的源地址及源端口 ,并只允 许与所记录目的地址及目的端口相符的包通过。相应地,由所述物理开关 104控制的所述过滤模块103的过滤级别还包括过滤掉不属于任何传出的 所有传入包,并仅允许与由该被保护的计算机系统发起的传出连接相关的 包进入该计算机系统。此外,该监辆摸块105可被配置为监视并记录属于 某一个或一些安全更新的传出连接,从而使得所述过滤模块103仅允许与 该一个或一些安全更新相关的包通过,例如,通过限制传入的包的源IP地 址或端口为所记录的属于所述安全更新的传出的TCP SYN包的目的地址 及目的端口。优选地,该用于通过网络安全地更新脆弱系统的装置100可通过一物 理存在证据来激活/去激活,所述物理存在证据例如为物理开关中的挡位 等。与纯软件选项不同,物理存在证据可确保该装置能够被激活而没有任 何可能有缺陷的软件受到来自网络的攻击,并且确保没有软件能够基改该 装置。所述用于激活/去激活该装置100的物理开关既可以共用上述用于控 制过滤模块103的过滤级别的物理开关104,此时^f吏用该物理开关104中 的一个档位来激活/去激活该装置100,也可以是一专用于激活/去激活该装 置100的物理开关。当受到本发明的装置100保护的脆弱系统将通过网络进行安全更新 时,可通过该物理存在证据激活/去激活本发明的该装置100,从而允许来自安全更新服务器的包含安全更新数据的数据包通过该装置100 it^受保 护的脆弱系统,以进行安全更新,此时将临时禁止该脆弱系统向外部网络 提供服务。当安全更新完成后,可通过该物理存在证据来去激活本发明的 该装置100,从而数据包可经由本发明的装置100在该受保护系统和外部网络之间正常地传递,从而该受保护系统可向外部网络提供服务或进行其 他数据交换。所述物理开关104可以是一个多选开关,它有多个档位用于控制是否 进行过滤以及过滤的级别。例如,档位0-不进行过滤;档位1-仅过滤 TCP SYN包;档位2 -过滤TCP SYN包及UDP包;档位3 -过滤TCP SYN 包及UDP包并且仅允许由该系统发起的任何传出连接相关的包。优选地, 该物理开关104为手动操作。过滤模块103通过读取该物理开关104的状 态来选择过滤级别。以上描述了本发明的用于通过网络安全地更新脆弱系统的装置100的 实现为独立设备的实施例,本发明的用于通过网络安全地更新脆弱系统的 装置100也可实现为网络接口卡或其他计算机部件内的嵌入模块。当本发 明的装置100实现为网,口卡或其他计算机部件内的嵌入模块时,其内 部结构与本发明的装置100的上述实现为独立设备的实施例相似。下面仅 描述本发明的装置100实现为网络接口卡的嵌入模块的实施例与该装置 100的上述实现为独立设备的实施例之间的不同之处,其相同部分不再赘 述。当本发明的装置ioo实现为网^口卡的嵌入模块时,所述内部接口101与原网M口卡的外部接口相连,所述外部接口 102与不安全的外部 网络相连。内部接口 101与外部接口 102的硬件形式均为芯片引脚。所述用来激活/去激活本发明的装置100的物理存在证据既可以为物 理开关中的档位,也可以为BIOS设置中的选项。根据本发明的另一方面,还提供了一种用于通过网络安全地更新脆弱 系统的方法,该方法包括以下步骤在该系统和该网络之间i殳置上述本发 明的用于通过网络安全地更新脆弱系统的装置;以及经由该装置通过网络对该系统进行安全更新。根据本发明的再一个方面,还提供了一种用于通过网络安全地更新脆弱系统的方法。图2示出了该用于通过网络安全地更新脆弱系统的方法。 如图所示,该方法包括以下步骤在步骤201,由该脆弱系统通过网络向 更新服务器发出更新请求,来进行更新。在步骤203,过滤拌特定的传入 网络包以阻挡可能的网络攻击。其中所述过滤步骤优选地可过滤掉所有传 入的TCP SYN包,或过滤掉所有传入的TCP SYN包以及所有传入的UDP 包。优选地,该方法还可包括步骤202,该步骤监视所有由该脆弱系统发 起的传出连接;并且在这种情况下,所述过滤步骤203可包括仅允许与监 视到的由该脆弱系统发起的任何传出连接相关的包进行该系统。优选地, 所述过滤步骤203还包括仅允许与特定安全更新相关的包it^该系统。优选地,该方法由专用的硬件执行,所述专用硬件例如位于网^:口 卡和电缆之间的插座插头对、特殊的网络电缆、网^口卡内的嵌入模块 等。当然,该方法也可由计算机软件与通用计算机硬件的结合来执行。的装置和方法,如本领域的技术人员可理解的,可对所述的装置和方法进 行多种修改而不背离本发明的基本精神和范围,例如,可在本发明的装置 中添加新的模块、修改现有模块、合并现有模块、进一步细分一些模块、 去除一些模块、改变模块之间的连接关系等,或在本发明的方法中添加新 的步骤、合并现有步骤、进一步细分一些步驟、去除一些步骤、改变步骤 之间的执行顺序等,这些修改均可处于本发明的范围之内;本发明的范围 由所附权利要求限定。
权利要求
1. 一种用于通过网络安全地更新脆弱系统的装置,该装置位于该系统和该网络之间,并实现为专用硬件,该装置包括与该系统连接的内部接口;与该网络连接的外部接口;以及至少一个过滤模块,用于过滤掉特定的传入网络包以阻挡可能的网络攻击。
2. 根据权利要求l的装置,还包括物理开关,用于控制所述 过滤模块的过滤级别。
3. 根据权利要求1或2的装置,还包括监视模块,用于监视所有由该系统发起的传出连接。
4. 根据权利要求2的装置,其中所述过滤级别包括 过滤掉所有传入的TCP SYN包;以及 过滤掉所有传入的TCP SYN包和所有传入的UDP包。
5. 根据权利要求3的装置,其中所述过滤级别包括 过滤掉所有传入的TCP SYN包;过滤掉所有传入的TCP SYN包和所有传入的UDP包;以及 仅允许与所述监视模块监视到的由该系统发起的任何传出连 接相关的包进入该系统。
6. 根据权利要求5的装置,其中所述过滤级别还包括 仅允许与特定安全更新相关的包进入该系统。
7. 根据权利要求1-6中任何一个权利要求的装置,其中该装 置可使用物理存在证据来激活/去激活。
8. 根据权利要求7的装置,其中所述物理存在证据是物理开 关中的档位或BIOS设置中的选项。
9. 根据权利要求1-6中任何一个权利要求的装置,其中所述 过滤模块为ASIC芯片。
10. 根据权利要求1-6中任何一个权利要求的装置,其中所述 过滤模块为固件。
11. 根据权利要求1-10的装置,其中该装置为独立设备。
12. 根据权利要求11的装置,其中该独立设备为位于网络接 口卡和电缆之间的插座插头对。
13. 根据权利要求11的装置,其中该独立设备为特殊的网络 电缆。
14. 根据权利要求1 - 10的装置,其中该装置为网络接口卡内 的嵌入模块。
15. 根据权利要求11或14的装置,其中该装置位于所述脆弱 系统处。
16. 根据权利要求11或14的装置,其中该装置位于多个脆弱 系统的网关处。
17. —种用于通过网络安全地更新脆弱系统的方法,该方法包 括以下步骤在该系统和该网络之间设置根据权利要求1-16中任何一个 的装置;以及经由该装置通过网络对该系统进行安全更新。
18. —种用于通过网络安全地更新脆弱系统的方法,包括以下 步骤由该脆弱系统通过网络向更新服务器发出更新请求,来进行 更新;以及过滤掉特定的传入网络包以阻挡可能的网络攻击。
19. 根据权利要求18的方法,其中该方法由位于网络接口卡 和电缆之间的插座插头对、特殊的网络电缆、网络接口卡内的嵌入模块中的任何一个执行。
20. 根据权利要求19的方法,其中所述过滤步骤包括过滤掉 所有传入的TCP SYN包。
21. 根据权利要求19或20的方法,其中所述过滤步骤还包括 过滤掉所有传入的UDP包。
22. 根据权利要求19的方法,还包括监视所有由该脆弱系统 发起的传出连接的步骤;并且所述过滤步骤包括仅允许与监视到 的由该脆弱系统发起的任何传出连接相关的包进入该系统。
23. 根据权利要求22的方法,其中所述过滤步骤还包括仅允 许与特定安全更新相关的包进入该系统。
全文摘要
本发明提供了一种用于通过网络安全地更新脆弱系统的装置,其位于该系统和该网络之间,实现为专用硬件,并包括与系统连接的内部接口;与网络连接的外部接口;以及过滤模块,用于过滤掉特定的传入网络包以阻挡可能的网络攻击。该装置还可包括物理开关,用于控制过滤级别。优选地,过滤级别包括过滤掉所有传入的TCP SYN包;过滤掉所有传入的TCP SYN包和UDP包;以及仅允许与由该系统发起的任何传出连接相关的包进入。优选地,该装置可使用物理存在证据来激活/去激活。优选地,物理存在证据是物理开关中的档位或BIOS设置中的选项。该装置既可实现为位于网络接口卡和电缆之间的插座插头对、特殊的网络电缆等独立设备,又可实现为网络接口卡内的嵌入模块。
文档编号H04L12/24GK101227314SQ200710004248
公开日2008年7月23日 申请日期2007年1月18日 优先权日2007年1月18日
发明者叶航军, 伟 李, 琳 罗, 郝大明 申请人:国际商业机器公司