师平 雷渭侣
广东工业大学华立学院网络工程系 广东 511325
在当前环境下,与互联网规模迅速发展相伴随的还有网络安全攻击的频繁涌现,其中危害较大的攻击有两种方式:分布式拒绝服务攻击(Distributed Denial of Service,DDoS)和蠕虫病毒。
入侵检测系统(Intrusion Detection System,IDS)技术是传统的检测安全威胁的技术,但由于其技术的局限性,只能识别已知的攻击手段,无法对未知的、新型的或没有攻击特征码的攻击手段提供预警能力。例如,DDoS攻击和变形蠕虫,都没有攻击的特征码,IDS对它们往往无能为力。
DDoS攻击和蠕虫病毒的攻击原理虽然不同,但它们也有内在的共同特点,那就是这两种网络安全攻击都会表现为网络流量或连接的突然急剧变化,造成用户的正常通信阻断或网络设备资源耗尽,进而瘫痪用户业务甚至整个互联网。如何迅速发现网络中出现的通信流量异常,并及时确定异常通信的准确技术参数,例如,攻击的来源、异常通信的具体流向和流量信息、占用的网络端口、持续时间等,这是管理员能否在短时间内对网络安全攻击作出正确响应,减少其对网络和用户业务影响的一个关键因素。
目前,比较流行的异常现象监控手段是基于简单网络管理协议SNMP(Simple Network Management Protocol)的网络异常现象监控。
1.1.1 网络管理系统包含的元素
通常,一个网络管理系统一般包含以下几个元素:
(1)网络设备节点。例如路由器、服务器等设备,每个节点都运行着一个被称为设备代理(agent)的应用进程,它是用于实现对被管理设备的各种被管理对象的信息,例如流量。进行搜集和对这些被管理对象的访问的支持。
(2)管理工作站。管理工作站运行着管理平台应用系统,实现为管理员提供对被管理对象的可视化图形界面,从而可以使管理员方便地进行管理。
(3)管理协议。管理协议是用来定义设备代理和管理工作站之间管理信息传送的规程,其中管理协议的操作是在管理框架下进行的。管理框架定义了和安全相关的认证、授权、访问控制和加密策略等各种安全防护框架。
在运行TCP/IP协议的互联网环境中,管理协议标准是简单网络管理协议SNMP,它定义了传送管理信息的协议信息格式及管理站和设备代理相互之间进行信息传送的规程。
出于业界对网络管理协议标准化的迫切要求,因特网工程业务工作组IETF于1990年发布了SNMP v1的正式请求文件RFC文档。其设计思想重点放在协议的简单性、灵活性和可扩展性上,并希望把SNMP作为一个过渡性的网络协议来实现对互联网的网络设备进行管理时遵循的标准,待OSI的通用管理入侵协议CMIP的开发、实现和标准化成熟和完善到可以在业界推广之后,再用CMIP替换SNMP。但由于各种原因,CMIP并没有替代SNMP,而SNMP发展成为网络安全管理标准。
1.1.2 SNMP的三个标准版本
SNMP发展主要有三个标准版本:SNMP v1、SNMP v2和SNMP v3。SNMP v2又分为若干个子版本,其中SNMP v2c应用最为广泛。
(1)SNMP v1。是第一个正式协议版本,在请求文件文档RFC1155-RFC1158中定义,该版本采用了基于共同体名的安全机制。
(2)SNMP v2。这个版本被称为基于共同体各的SNMP v2,使用基于共同体名的安全机制和SNMP vp做出的协议操作方面的扩充,由RFC1901-RFC1906定义。
(3)SNMP v3。该协议版本采用基于用户的安全机制,其安全机制是在SNMP v2u和SNMP v2*(“*”表示多个子版本)基础上进行大量的评议后进行了更新,并且对协议机制的逻辑功能模块进行划分而保证了良好的可扩充性,由RFC2271-RFC2275定义。
使用SNMP协议的网络管理系统和管理结构工作一般包括:管理进程通过定时向各个设备的设备代理进程发送查询请求信息来跟踪各个设备的状态;而当设备出现异常事件时,例如设备冷启动等,设备代理进程主动向管理进程发送陷阱信息,汇报出现的异常事件。这些轮询信息和陷阱信息的发送和接收规程及其格式定义都是由SNMP协议定义的;而被管理设备将其各种管理对象的信息都存放在一个称为管理信息库MIB的库结构中。
SNMP协议运行在用户数据报协议UDP之上,它利用的是UDP协议的161/162端口。其中161端口由管理进程监听,等待设备代理进程发送的异常事件报告陷阱信息,例如执行软中断(Trap)。设备的所有需要被管理的信息被看作一个各种被管理对象的集合,这些被管理对象由OSI定义在一个被称作管理信息库MIB的虚拟信息库中。
目前,基于SNMP的网络监控主要有免费的软件和专业厂商提供的软硬一体的设备。免费软件以MRTG为代表,专业一体设备以思科公司在CAT6K交换机中提供的网络分析模块NAM为代表。
多路由器流量图表绘制器MRTG(Multi Router Traffic Grapher)是一个监控网络链路流量负载的免费工具软件,它通过SNMP协议从设备得到使用设备(如交换机)的网络流量信息,并将流量负载以包含PNG格式图形的HTML文档方式显示给用户,以非常直观的形式显示流量负载,便于网络管理员对所监听的设备进行管理。目前,市场上可以进行网络管理的智能型交换机都支持SNMP协议,可以通过MRTG对网络流量进行每天和每周的统计显示,如图1和图2所示。
图1 MRTG每天流量的统计值示例
图2 MRTG每周流量的统计值示例
MRTG具有以下特点:
(1)可移植性。目前可以运行在大多数UNIX系统和Windows NT系统之上;
(2)源码开放。MRTG是用Perl编写的,源代码完全开放;
(3)具有高可移植性的SNMP支持。MRTG采用了Simon Lernen编写的具有高移植性的SNMP模块,从而不依赖于操作系统的SNMP模块的支持;
(4)支持SNMP v2c。MRTG可以读取SNMP v2c的64位的计数器,从而大大减少了计数器回转次数;
(5)可靠的接口标识。被监控的设备的接口可以用IP地址、设备描述、SNMP对接口的编号及MAC地址来标识;
(6)常量大小的日志文件。MRTG的日志不会变大,因为在这里使用了独特的数据合并算法;
(7)自动配置功能。MRTG自身有配置工具套件,使得配置过程非常简单;
(8)性能。时间敏感的部分使用C语言编写,因此,具有很好的性能;
(9)PNG格式图形。图形采用GD库直接产生PNG格式;
(10)可定制性。MRTG产生的Web页面是完全可以预先定制的。也就是说,分别进行Web页面开发。
思科的网络分析模块NAM(Network Analysis Model)是CAT6K上的一个流量分析模块,是网络异常现象监控的硬件模式,可为网络管理员提供进行智能决策的所需数据。从嵌入式到路由器和交换机之中的管理信息库MIB以及使用远程监视RMON(Remote Monitor on)MIB功能,交换探测(SwitchProbe)设备和网络分析模块中可以随时获得这些数据。当需要提供概览或进行故障诊断时,可以实时查看这些智能代理收集到的数据。此外,可以将这些数据存储到数据库中,供历史查阅、制订网络方案和进行趋势预测之用。
交换机和路由器等网络互连设备的主要用途是传送数据流和信息流。大多数交换机设备都装备了嵌入式mini-RMON代理,启动这一代理以后,它可以提供基本的网络统计数据,例如,链路利用率、分组大小分布、冲突错误分布,以及每一个网络端口的广播和组播通信流量级别。这些嵌入式mini-RMON代理还可以提供利用率的历史视图,并能够通过设备阈值、触发报警和向网络管理基站发送软中断来监视网络中的关键条件。
网络分析模块NAM可以提供OSI所有七层网络通信流的完全透明度。这意味着网络段的利用情况可以被分解到应用层和用户,并以此为基础生成报告。NAM是完全专用的网络监视设备,并不会因为执行其他的网络任务而停止对网络进行监视。
NAM模块具有以下优点:
(1)NAM提供的可视性能可以更好地优化各种网络资源来满足应用要求,使计划扩展的各项基于网络的应用更加易于实施;
(2)避免产生效率和收入的减少。通过主动式的监控和快速故障诊断,降低由于网络性能退化和待机时间导致的损失;
(3)强化网络安全性。NAM为其他网络安全机制设备,例如,入侵检测系统IDS、防火墙,这些设备提供调查取证的能力,同时可以用于探测网络流量中的异常非法入侵;
(4)嵌入网络的应用层级别可视性。在数据链路层或MAC地址层提供了端口级的流量统计,在应用层、主机、网络会话,甚至基于网络的应用服务包括服务质量QoS都提供流量分析;
(5)NAM可以按虚拟局域网VLAN而不是按源MAC地址来汇聚统计数据。
基于简单网络管理协议SNMP是目前相当流行的网络异常监控手段,是监控手段的姣姣者。它可以通过图形对网络的流量进行每天和每周进行统计显示,能够及进发现安全问题及时处理。
支持网络绘制的工具是多路由器流量表绘制器MRTG,具有可移植性、源码开放性、可靠性的接口标识、自动配置功能、PNG格式图形和或定制性等特点。
在进行网络的分析中使用了思科的网络分析模块NAM。具有可视性能、优化格式、较高的生产效率、强化网络的安全性等优点。
网络异常现象的监控,除了基于SNMP手段以外,还可用基于Netflow流量的监控及基于全球预警系统的异常监控。由于篇幅的限制,这两种手段就不在这里一一介绍了,若读者感兴趣,可查阅相就的资料。
[1]思科系统(中国)网络技术有限公司.下一代网络安全.北京邮电大学出版社.2006.
[2]思科安全监控分析和响应系统(MARS).http://www.cisco.com/global/cn/solutions/products_netsol/security/products/mars/index.
[3]IEEE802.Port-Based Access Control IEEE802.1x-2001.June 2001.
[4]Authentication Protocol(EAP)RFC2748.Standard Track.June 2004.
[5]雷渭侣,王兰波.计算机网络.北京:机械工业出版社.2008.