IDS简介
IDS是Intrusion Detection System的缩写,即入侵检测系统,主要用于检测Hacker或Cracker通过网络进行的入侵行为。IDS的运行方式有两种,一种是在目标主机上运行以监测其本身的通信信息,另一种是在一台单独的机器上运行以监测所有网络设备的通信信息,比如Hub、路由器。
当有某个事件与一个已知攻击的信号相匹配时,多数IDS都会告警。一个基于anomaly(异常)的IDS会构造一个当时活动的主机或网络的大致轮廓,当有一个在这个轮廓以外的事件发生时,IDS就会告警,例如有人做了以前他没有做过的事情的时候,例如,一个用户突然获取了管理员或根目录的权限。有些IDS厂商将此方法看做启发式功能,但一个启发式的IDS应该在其推理判断方面具有更多的智能。
攻击(Attack)可以理解为试图渗透系统或绕过系统的安全策略,以获取信息、修改信息以及破坏目标网络或系统功能的行为。以下列出IDS能够检测出的最常见的Internet攻击类型:
●攻击类型1-DOS(Denial Of Service attack,拒绝服务攻击):DOS攻击不是通过黑客手段破坏一个系统的安全,它只是使系统瘫痪,使系统拒绝向其用户提供服务。其种类包括缓冲区溢出、通过洪流(flooding)耗尽系统资源等等。
●攻击类型2-DDOS(Distributed Denial of Service,分布式拒绝服务攻击):一个标准的DOS攻击使用大量来自一个主机的数据向一个远程主机发动攻击,却无法发出足够的信息包来达到理想的结果,因此就产生了DDOS,即从多个分散的主机一个目标发动攻击,耗尽远程系统的资源,或者使其连接失效。
●攻击类型3-Smurf:这是一种老式的攻击,但目前还时有发生,攻击者使用攻击目标的伪装源地址向一个smurf放大器广播地址执行ping操作,然后所有活动主机都会向该目标应答,从而中断网络连接。以下是10大smurf放大器的参考资料URL: [url]http://www.powertech.no/smurf/[/url] target=_blank> [url]http://www.powertech.no/smurf/[/url]
●攻击类型4-Trojans(特洛伊木马):Trojan这个术语来源于古代希腊人攻击特洛伊人使用的木马,木马中藏有希腊士兵,当木马运到城里,士兵就涌出木马向这个城市及其居民发起攻击。在计算机术语中,它原本是指那些以合法程序的形式出现,其实包藏了恶意软件的那些软件。这样,当用户运行合法程序时,在不知情的情况下,恶意软件就被安装了。但是由于多数以这种形式安装的恶意程序都是远程控制工具,Trojan这个术语很快就演变为专指这类工具,例如BackOrifice、SubSeven、NetBus等等。
除了对攻击发出警报,有些IDS还能自动抵御这些攻击。抵御方式有很多:首先,可以通过重新配置路由器和防火墙,拒绝那些来自同一地址的信息流;其次,通过在网络上发送reset包切断连接。但是这两种方式都有问题,攻击者可以反过来利用重新配置的设备,其方法是:通过伪装成一个友方的地址来发动攻击,然后IDS就会配置路由器和防火墙来拒绝这些地址,这样实际上就是对“自己人”拒绝服务了。发送reset包的方法要求有一个活动的网络接口,这样它将置于攻击之下,一个补救的办法是:使活动网络接口位于防火墙内,或者使用专门的发包程序,从而避开标准IP栈需求。
IDS分类
IDS有许多不同类型的,以下分别列出:
●IDS分类1-Application IDS(应用程序IDS):应用程序IDS为一些特殊的应用程序发现入侵信号,这些应用程序通常是指那些比较易受攻击的应用程序,如Web服务器、数据库等。有许多原本着眼于操作系统的基于主机的IDS,虽然在默认状态下并不针对应用程序,但也可以经过训练,应用于应用程序。例如,KSE(一个基于主机的IDS)可以告诉我们在事件日志中正在进行的一切,包括事件日志报告中有关应用程序的输出内容。应用程序IDS的一个例子是Entercept的Web Server Edition。
●IDS分类2-Consoles IDS(控制台IDS):为了使IDS适用于协同环境,分布式IDS代理需要向中心控制台报告信息。现在的许多中心控制台还可以接收其它来源的数据,如其它产商的IDS、防火墙、路由器等。将这些信息综合在一起就可以呈现出一幅更完整的攻击图景。有些控制台还将它们自己的攻击特征添加到代理级别的控制台,并提供远程管理功能。这种IDS产品有Intellitactics Network Security Monitor和Open Esecurity Platform。
●IDS分类3-File Integrity Checkers(文件完整性检查器):当一个系统受到攻击者的威胁时,它经常会改变某些关键文件来提供持续的访问和预防检测。通过为关键文件附加信息摘要(加密的杂乱信号),就可以定时地检查文件,查看它们是否被改变,这样就在某种程度上提供了保证。一旦检测到了这样一个变化,完整性检查器就会发出一个警报。而且,当一个系统已经受到攻击后,系统管理员也可以使用同样的方法来确定系统受到危害的程度。以前的文件检查器在事件发生好久之后才能将入侵检测出来,是“事后诸葛亮”,最近出现的许多产品能在文件被访问的同时就进行检查,可以看做是实时IDS产品了。该类产品有Tripwire和Intact。
●IDS分类4-Honeypots(蜜罐):关于蜜罐,前面已经介绍过。蜜罐的例子包括Mantrap和Sting。
●IDS分类5-Host-based IDS(基于主机的IDS):这类IDS对多种来源的系统和事件日志进行监控,发现可疑活动。基于主机的IDS也叫做主机IDS,最适合于检测那些可以信赖的内部人员的误用以及已经避开了传统的检测方法而渗透到网络中的活动。除了完成类似事件日志阅读器的功能,主机IDS还对“事件/日志/时间”进行签名分析。许多产品中还包含了启发式功能。因为主机IDS几乎是实时工作的,系统的错误就可以很快地检测出来,技术人员和安全人士都非常喜欢它。现在,基于主机的IDS就是指基于服务器/工作站主机的所有类型的入侵检测系统。该类产品包括Kane Secure Enterprise和Dragon Squire。
●IDS分类6-Hybrid IDS(混合IDS):现代交换网络的结构给入侵检测操作带来了一些问题。首先,默认状态下的交换网络不允许网卡以混杂模式工作,这使传统网络IDS的安装非常困难。其次,很高的网络速度意味着很多信息包都会被NIDS所丢弃。Hybrid IDS(混合IDS)正是解决这些问题的一个方案,它将IDS提升了一个层次,组合了网络节点IDS和Host IDS(主机IDS)。虽然这种解决方案覆盖面极大,但同时要考虑到由此引起的巨大数据量和费用。许多网络只为非常关键的服务器保留混合IDS。有些产商把完成一种以上任务的IDS都叫做Hybrid IDS,实际上这只是为了广告的效应。混合IDS产品有CentraxICE和RealSecure Server Sensor。
●IDS分类7-Network IDS(NIDS,网络IDS):NIDS对所有流经监测代理的网络通信量进行监控,对可疑的异常活动和包含攻击特征的活动作出反应。NIDS原本就是带有IDS过滤器的混合信息包嗅探器,但是近来它们变得更加智能化,可以破译协议并维护状态。NIDS存在基于应用程序的产品,只需要安装到主机上就可应用。NIDS对每个信息包进行攻击特征的分析,但是在网络高负载下,还是要丢弃些信息包。网络IDS的产品有SecureNetPro和Snort。
●IDS分类8-Network Node IDS(NNIDS,网络节点IDS):有些网络IDS在高速下是不可靠的,装载之后它们会丢弃很高比例的网络信息包,而且交换网络经常会防碍网络IDS看到混合传送的信息包。NNIDS将NIDS的功能委托给单独的主机,从而缓解了高速和交换的问题。虽然NNIDS与个人防火墙功能相似,但它们之间还有区别。对于被归类为NNIDS的个人防火墙,应该对企图的连接做分析。例如,不像在许多个人防火墙上发现的“试图连接到端口xxx”,一个NNIDS会对任何的探测都做特征分析。另外,NNIDS还会将主机接收到的事件发送到一个中心控制台。NNIDS产品有BlackICE Agent和Tiny CMDS。
●IDS分类9-Personal Firewall(个人防火墙):个人防火墙安装在单独的系统中,防止不受欢迎的连接,无论是进来的还是出去的,从而保护主机系统。注意不要将它与NNIDS混淆。个人防火墙有ZoneAlarm和Sybergen。
●IDS分类10-Target-Based IDS(基于目标的IDS):这是不明确的IDS术语中的一个,对不同的人有不同的意义。可能的一个定义是文件完整性检查器,而另一个定义则是网络IDS,后者所寻找的只是对那些由于易受攻击而受到保护的网络所进行的攻击特征。后面这个定义的目的是为了提高IDS的速度,因为它不搜寻那些不必要的攻击。
IDS性能指标
对于IDS,用户会关注每秒能处理的网络数据流量、每秒能监控的网络连接数等指标。但除了上述指标外,其实一些不为一般用户了解的指标也很重要,甚至更重要,例如每秒抓包数、每秒能够处理的事件数等。 </P>
1.每秒数据流量(Mbps或Gbps)
每秒数据流量是指网络上每秒通过某节点的数据量。这个指标是反应网络入侵检测系统性能的重要指标,一般涌Mbps来衡量。例如10Mbps, 100Mbps和1Gbps。
网络入侵检测系统的基本工作原理是嗅探(Sniffer),它通过将网卡设置为混杂模式,使得网卡可以接收网络接口上的所有数据。
如果每秒数据流量超过网络传感器的处理能力,NIDS就可能会丢包,从而不能正常检测攻击。但是NIDS是否会丢包,不主要取决于每秒数据流量,而是主要取决于每秒抓包数。
2.每秒抓包数(pps)
每秒抓包数是反映网络入侵检测系统性能的最重要的指标。因为系统不停地从网络上抓包,对数据包作分析和处理,查找其中的入侵和误用模式。所以,每秒所能处理的数据包的多少,反映了系统的性能。业界不熟悉入侵检测系统的往往把每秒网络流量作为判断网络入侵检测系统的决定性指标,这种想法是错误的。每秒网络流量等于每秒抓包数乘以网络数据包的平均大小。由于网络数据包的平均大小差异很大时,在相同抓包率的情况下,每秒网络流量的差异也会很大。例如,网络数据包的平均大小为1024字节左右,系统的性能能够支持10,000pps的每秒抓包数,那么系统每秒能够处理的数据流量可达到78Mbps,当数据流量超过78Mbps时,会因为系统处理不过来而出现丢包现象;如果网络数据包的平均大小为512字节左右,在10,000pps的每秒抓包数的性能情况下,系统每秒能够处理的数据流量可达到40Mbps,当数据流量超过40Mbps时,就会因为系统处理不过来而出现丢包现象。
在相同的流量情况下,数据包越小,处理的难度越大。小包处理能力,也是反映防火墙性能的主要指标。
3.每秒能监控的网络连接数
网络入侵检测系统不仅要对单个的数据包作检测,还要将相同网络连接的数据包组合起来作分析。网络连接的跟踪能力和数据包的重组能力是网络入侵检测系统进行协议分析、应用层入侵分析的基础。这种分析延伸出很多网络入侵检测系统的功能,例如:检测利用HTTP协议的攻击、敏感内容检测、邮件检测、Telnet会话的记录与回放、硬盘共享的监控等。
4.每秒能够处理的事件数
网络入侵检测系统检测到网络攻击和可疑事件后,会生成安全事件或称报警事件,并将事件记录在事件日志中。每秒能够处理的事件数,反映了检测分析引擎的处理能力和事件日志记录的后端处理能力。有的厂商将反映这两种处理能力的指标分开,称为事件处理引擎的性能参数和报警事件记录的性能参数。大多数网络入侵检测系统报警事件记录的性能参数小于事件处理引擎的性能参数,主要是Client/Server结构的网络入侵检测系统,因为引入了网络通信的性能瓶颈。这种情况将导致事件的丢失,或者控制台响应不过来了.