安全路由器

发布时间:2003-11-26 作者:许志军 Xu Zhijun 王东 Wang Dong 张思东 Zhang Sidong 阅读量:

文章编号:1009-6868(2001)05-0031-05 文献标识码:A 中图分类号:TN918.91

  1 概况

  随着基于互联网的业务、应用的日益增多,互联网的规模不断扩大,网络时代已经来临。为业务、应用的开展提供一个可靠、安全的数据传输保证,便成了当务之急。没有可靠、安全的传输保证,基于互联网的业务迟早会陷入崩溃的地步。

  路由器则是互联网的主要节点设备,它通过路由决定数据的转发。作为不同网络之间互相连接的枢纽,路由器系统构成了基于TCP/IP 的国际互联网络(Internet)的主体脉络,也可以说,路由器构成了 Internet 的骨架。它的处理速度是网络通信的主要瓶颈之一,它的可靠性则直接影响着网络互联的质量。因此,在园区网、地区网,乃至整个 Internet 研究领域中,路由器技术始终处于核心地位,其发展历程和方向,成为整个 Internet 研究的一个缩影。处于这样一个关键地位,路由器就不光要能够保证数据包的正确转发,还要能担负起保证合法数据安全传输的作用。

  安全路由器已逐渐成为一个开发的热点。它集数据转发、数据保护、网络保护于一身,可以有效地分隔开内外网络,既有路由器的有效组网作用,又可以具备防火墙的安全保护作用。

  安全路由器的作用主要体现在以下各方面:

  • 能够按照需要向内部局域网或外部公网转发授权包;
  • 能够对每一条链路的访问权限进行控制;
  • 能够协助对传输的数据进行加密、数据完整性、数据源认证的处理;
  • 提供内外识别地址的转变;
  • 管理方便,能够提供包括配置管理、性能管理、流量控制、安全管理等功能;
  • 确保路由信息能够安全、准确地传递;
  • 提供包括分组过滤、优先级、复用、加密、压缩等功能;
  • 对正常数据包的转发、处理效率影响尽可能小。

  2 路由器的安全威胁

  对路由器的安全威胁可以分为对路由器自身的威胁和对路由器功能的威胁两部分。

  (1)对路由器自身的威胁,如:

  • 硬件设备:设备的电磁干扰、电磁信息泄漏,以及在一些较恶劣的情况下的不稳定;
  • 操作系统:利用操作系统漏洞,如利用缓冲区溢出进行的攻击;
  • 路由器资源:对路由器访问资源的窃取和控制,如业务拒绝(DOS);
  • 路由器服务:针对提供服务的安全漏洞所进行的攻击,如远程管理的漏洞、Telnet明文传送认证信息等。

  (2)对路由器功能(准确、安全、高效地转发授权的数据包)的威胁,如:

  • 发布虚假的路由信息,使得数据被送到错误的地方;
  • 通过监听、篡改信息、重放信息包使得信息包虚假;
  • 窃听或破译没有加密的或加密强度低的信息包;
  • 通过拒绝服务攻击使攻击者过多占用共享资源,导致服务超载或系统资源耗尽,使得无法为其它用户提供合适的服务;
  • IP地址欺骗:主要包括利用虚假的地址,以虚假的回答进行响应。如:ARP(地址解析协议)欺骗攻击、DNS(域名服务系统)欺骗攻击、TCP连接欺骗盲攻击;
  • ICMP(网际报文控制协议)攻击是滥用ICMP包发布错误信息,破坏路由器正常的转发功能。如:滥用类型3--目的地不可达报文攻击,滥用类型4--源抑制报文攻击,滥用类型5--重定向消息攻击;
  • IP分片攻击利用IP分片,使非法数据流得以通过检控,从而穿过路由器进行攻击,参见RFC1858;
  • 对功能的威胁或者主动使安全路由器错误地转发或接受不希望转发或接受的包,使得这些包进入到系统内,对系统构成威胁;或者被动地利用路由器没有对包进行安全处理或处理强度低的情况,进行信息窃取。

  3 安全路由器描述

  安全路由器提供的安全服务功能是安全路由器能提供给用户什么样的安全服务。安全机制则是对安全服务的保障措施。一项安全服务的事项要通过若干项安全机制进行保障。具体安全技术则是目前在实际中已经或即将制订的安全协议和实施的安全技术。

  (1)安全路由器的结构

  图1 给出了安全路由器的一个基本框架,其中:


图1 安全路由器框架

  • 输入单元:是物理链路和输入包的进口。它要执行的是进行数据链路层的封装和解封装、路由查找,以及处理一些较高级协议等功能;
  • 输出单元:在包被发送到输出链路之前对包存贮,也要能支持数据链路层的封装和解封装,以及许多较高级协议;
  • 安全控制单元:进行安全策略的配置、协商,进行或者协助进行安全分析,根据分析结果进行安全策略的调整;
  • 路由交换单元:根据输入单元确定的路由,把数据包转发到相应的输出单元;
  • 路由控制单元:路由控制单元计算转发表实现路由协议,并运行配置和管理的软件。同时,它还处理那些目的地址不在线卡转发表中的包。

  信息包从输入单元进入安全路由器。首先在安全处理单元中依据系统的安全策略和信息包中的内容对信息包进行安全处理,根据处理结果决定是否经过路由交换单元从输出单元输出。为了保证路由器的正常处理,在此还可能对信息包进行分流,送到具有安全分析功能的服务器进行安全分析,根据分析结果,发出告警或通知安全控制单元,进行安全策略的调整。

  路由控制单元在通过路由协议进行路由信息交换时,也需要通过安全处理单元进行路由安全的保障。一些安全问题还可以送到后台安全服务器记录,以供事后追踪。

  (2)安全路由器可以提供的安全服务功能

  很多安全功能,用户也可以在自己的终端上实现。但这样对网络来说,管理太复杂,而且容易出现局部漏洞,从而对整个系统的安全构成威胁。通过路由器实现这些安全功能,可以方便地统一管理,减少对用户的技术要求。

  安全路由器应该为客户提供的安全服务包括:

  1)认证:对和路由器进行联系的对方实体或数据包的身份进行确认或识别,又分为:

  • 实体认证:保证通信的对方与其所声称的实体相符,或者根据对方提供的信息确定其身份;
  • 数据源认证:保证数据的来源与所声称的身份相符,或者能根据数据中携带的信息确定其身份。

  2)访问权限:控制对系统资源的访问权限。系统内不同的资源对不同的用户提供不同的访问级别。

  3)保密性:用来防止数据或业务流的非授权泄漏。根据要进行保密处理的数据项分为:

  • 连接保密性:为连接上的所有用户数据提供保密性;
  • 无连接保密性:为无连接的所有用户数据提供保密性;
  • 选择域保密性:为连接或无连接的所有用户数据的选择字段提供保密性;
  • 业务流保密性:为可能从业务流的观测结果中得到的信息提供保密性。

  4)完整性:发现对传输的数据进行的各种非法改变,有3种主要类型:

  • 连续完整性业务:对某个连接上所有的数据进行完整性校验;
  • 无连接完整性业务:对于无连接数据项中的所有数据进行完整性校验;
  • 选择完整性业务:仅对某个数据单元中所指定的区域进行的完整性校验。

  5)抗否认性:用来防止在通信过程中双方对自己行为的否认,可以作为事后追究的依据,根据否认方的不同分为:

  • 有源端证据的抗否认:提供数据的源端证据给数据接收者,防止发送者否认自己发送的该数据或数据项;
  • 有交付证据的抗否认:提供数据的交付证据给数据发送者,防止接收者否认自己接受过该数据或数据项。

  (3)安全路由器的安全机制保障

  为了能够提供上述的安全服务,安全路由器提供一套安全方法来保证,也就是安全路由器的安全机制。这些安全机制包括:

  • 加密机制:利用加密算法,为数据或通信业务流提供机密性;
  • 数字签名机制:对某个数据单元进行签名和对数据单元的签名进行验证;
  • 访问控制机制:使用实体的经认证的身份、信息和权利确定以及实施实体的访问权;
  • 数据完整性机制:通过附上相应的分量对单个数据单元或域进行完整性校验或对数据单元或域的一个流进行完整性校验;
  • 认证机制:使用认证信息、密码技术或实体的某些特性或控制来进行身份的验证或识别;
  • 通信业务填充机制:提供不同级别的防通信业务分析保护;
  • 路由控制机制:通过动态或预置方式安排路由,仅使用物理安全的子网、中继网或链路。

  (4)安全路由器中的安全技术

  安全路由器中的安全技术从层次上主要涉及到硬件、操作系统、各网络层次(主要链路层、网络层和部分应用层)等几方面。从防范的时序上包括事前预防、事中告警、事后追踪等各项技术。事前预防主要是事先对硬件、操作系统、各网络层次进行安全设置,使得攻击难以进行;事中告警则是在对进出的数据包进行安全分析的基础上,发现可疑点后,发出告警或进行动态策略调整,防止攻击的扩散;事后追踪则能够根据日志或其他的记录信息在事后进行分析,追踪攻击者的行迹,并协助提供攻击证据,意图通过法律手段对攻击者进行制裁。硬件的安全一方面指硬件设备本身要能够在不同温度、湿度条件下,防震、防电磁干扰、防雷、防电源波动以及在通信电缆的绝缘电阻、介电强度等方面有要求,其物理安全防护应符合GB4943-90和GB9254-88;另一方面在硬件设计上考虑对安全的辅助,能够通过硬件动态地隔离开网络,使网络可以通过物理分离达到安全目的。

  操作系统的安全很复杂,因为很多操作系统的不安全性来自于自身的漏洞。而这些漏洞可能就是由于操作系统实现时的疏忽而造成的。如:由于没有对输入的数据量进行长度控制造成的缓冲区溢出、由于用户密码管理文件的访问权限的门槛太低造成的密码文件泄漏。

  在安全路由器中应该实现的安全技术还有:

  1)链路层安全技术:针对在本地终止的PPP连接,当作为访问路由器或要实现VPDN(虚拟专用拨号网络)等业务时,就会有该层的安全要求。在PPP层要能提供实体身份认证、加密、压缩等。

  PPP安全所涉及的实体身份认证协议主要有:PAP(口令认证协议)、CHAP(质询握手认证协议)。安全的链路层协议必须保证用户名、口令非明文传输,推荐采用CHAP机制实现。验证方式可以采用本地数据库或者AAA协议。

  PPP提供的加密服务由ECP(PPP加密控制协议)来完成。通过ECP协议,PPP在链路建立完成时,可以在通信的两点之间协商合适的算法,对数据进行加密(具体见RFC1968)。由于ECP本身的协商不受保护,ECP协议也没有密钥管理的描述,这使得ECP协议的安全性存在漏洞,需要进一步完善。

  2)网络层安全技术:网络层的安全最能显示路由器的安全作用。它的作用是为IP层提供可操作的、高效的和基于密码技术的安全性。在这一层提供的安全服务包括了访问控制、无连接完整性、数据来源认证、防重放保护、加密和有限的业务流机密性。而且这些服务在IP层提供时,要为IP层或更高层协议统一提供保护。网络层安全协议目前主要支持IPSec(网际协议安全体系结构)及密钥交换协议(见RFC2401~RFC2412、RFC2451等)。另外路由的安全技术、NAT(网络地址转换)技术、IP过滤器技术也可以体现在网络层中。

  3)IPSec安全协议:对于普通的IP数据包通过使用两个业务安全协议:IP认证头(见RFC2402)、IP封装安全载荷(见RFC2406)来进行数据完整性、数据来源、防重放、加密等处理。而进行处理的安全策略参数来源于手工配置或通过IKE(网际密钥交换)进行的安全协商(见RFC2409)。

  IPSec安全协议应该实现:

?支持自动生成(IKE) 和 手工配置(SA);

  • 实现协议所要求的各种必需的算法:加密算法??如EDE-DES、IDEA、Rijidael等; HASH算法--MD5、SHA;认证方式--基于预共享密钥的认证;密钥交换--基于MODP(缺省group 1)的D-H算法;
  • 支持两种应用模式(隧道传输、透明传输);
  • 支持两种安全协议(AH、ESP);
  • 支持Main和Aggressive两种模式的IKE协商;
  • 支持PFS(完美前向保密性)。

  4)路由的安全技术:路由的安全技术主要是防止伪造路由信息。这就要求对路由信息包进行源认证、包本身的完整性校验,以确保路由信息来自于可信任方,并且没有被篡改。在实际中路由协议主要通过预配置密钥,也可以通过ISAKMP(网际安全协商和密钥管理协议)协商得到密钥(见RFC2408),以后的认证和完整性校验都以此密钥进行。

  5)NAT技术:NAT用于将一个地址、端口对映射成另一个地址、端口对,从而为终端主机提供透明路由的方法。它可以隐藏受保护网络的内部结构,通过设置映射策略对转发包进行控制,从而提高系统的安全性。NAT映射关系包括静态地址转换、动态地址转换、地址及端口转换、负载分配。静态地址转换完成一组内部IP地址到外部IP地址的一对一静态转换;动态地址转换则可以使得外部IP地址动态地映射到内部的IP地址上;地址及端口转换将不同的IP地址及传输标识符(TCP、UDP端口号,ICMP询问标识符等)转换为一个或多个外部地址的不同传输标识符。这样的转化既可以是外部地址向内部地址的映射,也可以是内部地址向外部地址的映射。通过实现上述一组或多组的映射关系,可以加强映射关系的可控性。

  6)IP过滤器技术:IP过滤器用于实现对IP层及其以上的数据包进行访问控制。访问控制的依据是若干过滤规则。

  过滤器应该有如下要求:

  • 动态性:即能根据安全反馈信息自动进行安全策略的调整;
  • 时效性;规则能够指定作用时间,以加强授权的可控性;
  • 一致性检测机制:能够检测规则之间的冲突,降低因为配置错误造成的安全漏洞;
  • 基于物理端口:过滤器要能绑定到物理端口上,这样可以减轻如IP地址欺骗等类型的攻击。

  7)管理安全技术:管理安全技术所涉及的是不属于正常通信实例,但要用来支持和控制该通信的安全方面的操作。安全路由器中的安全管理包括系统安全管理、安全服务管理、安全机制管理、安全通道管理。

  • 系统安全管理:涉及事件处理管理、安全恢复管理、安全审计管理。事件处理管理主要是报告有关违反系统安全的明显企图以及管理事件报告的策略;安全恢复管理主要是维护用于对实际或有嫌疑的安全违章作出反应、进行系统恢复的规则策略;安全审计管理主要是选定拟记录的安全事件、记录被选定事件的审计数据、收集被选的审计记录、准备安全审计报告以供事后追踪。
  • 安全服务管理:涉及的主要是特殊的安全服务。它要能为服务确定和分配安全保护目标,分配和维护为提供所需的安全服务使用的特定安全机制的选择规则,在达成管理协议前协商可使用的安全机制,通过适当的安全机制管理功能去调用特定安全机制。
  • 安全机制管理:涉及特定的安全机制,部分典型的安全机制管理功能描述如下。密钥管理:根据所要求的安全级定时生成合适的密钥、密钥的安全获取和分配、密钥的存储;加密管理:与密钥管理的交互、加密参数的确定(包括密钥的同步);数字签名管理:与密钥管理的交互、签名参数的确定(包括密钥的同步);访问控制管理:包括安全属性的分配、对访问控制表或能力表的更新;数据完整性管理:与密钥管理的交互、数据完整性参数的确定(包括密钥的同步);实体认证管理:向要求执行认证的实体散发说明性信息、口令或密钥;通信业务填充管理:填充规则的维护,如:填充的数据率、消息特征;路由选择管理:定义安全的链路和子网、指定安全路径等。
  • 安全通道管理:包括SNMP安全技术、Telnet安全技术等,这使得对安全路由器的配置、查看等管理都在和安全路由器安全通信的前提下进行。

  SNMP安全规范允许使用多种安全协议保护网络管理操作。它要利用密码技术及相关机制,对网络管理提供数据完整性、数据源认证、数据机密性保护,这些安全服务是通过摘要认证协议和对称加密协议来实现的(参见RFC1446、RFC1352)。它要能提供以下服务:为每个收到的SNMP消息在通过网络期间没有被非授权管理操作引起改变提供验证;为每个收到的SNMP消息的发送端身份进行验证;为每个最近收到的SNMP消息提供明确的产生时间;为所有先传递的来自类似源的消息的每个后续收到的SNMP消息提供明确的产生时间;必要时使每个收到的SNMP消息的内容不被泄漏。

  Telnet协议的安全要求包括机密性、完整性、用户认证。这些服务基于密码技术,可作为Telnet的安全扩展提供,或者作为一个封装的安全协议。它要能提供下列的服务:请求或响应数据的机密性;请求或响应的数据源的验证和数据完整性;请求或响应的数据源的不可抵赖性。
  安全分析是事前预防、事中告警、事后追踪的基础。它主要对进入系统的信息进行统计、分析,检测和识别系统中未授权或异常的现象。安全分析的依据主要有两种:一种是正常用户的行为模型,一种是入侵者的行为模型,即根据统计结果判断是否偏离了一个正常用户的行为,或者符合一个入侵者的行为,据此进行相应的安全处理。这里行为模型如何确立,是一个关键问题。

  (5)性能

  安全分析、安全处理本身往往都是很耗资源的,应该在安全和系统性能方面进行综合考虑,尽可能地在能够满足用户安全需求的情况下,提高安全路由器处理的性能。提高性能的措施有:

  • 加快单位处理的速度:这主要包括提高安全判断和安全处理的速度。如要加快数据包中的信息采集以及和安全策略的适配判断,可以通过优化算法或硬件来进行改善;安全处理中的各种加密算法、认证算法可以通过硬件得到加速;
  • 减少无用处理:安全路由器应该是可以配置的。根据用户的需求不同,只提供他们所需要的安全功能,避免提供对用户没有实际意义的安全功能,降低系统无谓的开销;
  • 安全并行处理:安全路由器应该能进行业务分流,把一些耗时的安全分析功能分流出去,不在主流程上进行这样的处理,从而不妨碍正常业务的开展,可以设置另外的服务器或其他安全处理设施,由它们并行进行分析,然后根据分析结果,反过来再调整安全路由器的流程、策略。

[摘要] 文章针对安全路由器进行了总体描述,包括路由器受到的威胁、安全路由器的作用、系统架构、提供的安全服务、涉及的安全机制和安全技术。

[关键词] 安全路由器 路由器威胁 安全服务 安全机制 安全技术

[Abstract] The article presents the general structure of security router, mainly referring to the threat to router ,and the function, system architecture and service of security router, as well as the security mechanism and security technologies.

[Keywords] Security router Threat to router Service of security router Security mechanism Security technology