米葫芦网

IDS的交换机局限问题的分析与对策(1)

热度:11℃ 发布时间:2024-11-16 16:36:42

一、面临的问题
入侵检测系统(Intrusion Detection System, IDS)是近两年热起来的安全产品,它在网络安全体系中所发挥的作用是可以检测到入侵行为并报警。这里所说的入侵行为涵盖范围很广,不仅包括黑客攻击,还包括各种网络异常行为,如内部网络机密信息泄漏和非法使用网络资源等等。
为了保障网络的安全,要使用很多安全产品,有防病毒、防火墙、服务器安全加固、加密传输和身份认证等等。和它们相比,IDS具有更多的智能特性,能够判定出网络入侵行为并报警和实时阻断。
但是这两年,厂商、媒体和网站一直是从正面宣传IDS的功能,却回避IDS的缺陷。在众多的缺陷中,交换机的数据镜像、VLAN给网络入侵检测系统(NIDS)的运用带来很大的麻烦。而众多的IDS厂商却避而不谈,这必然会误导用户,使用户无法实现自身安全价值的最大化。
二、问题的分析
由于共享式集线器(HUB)可以进行网络监听,将给网络安全带来极大的威胁,故而现在网络,尤其是高速网络基本上都采用交换机(Switch),从而给网络入侵检测系统的网络监听带来麻烦。
1.问题之一:交换机端口镜像
要了解入侵检测系统在交换机环境中监听的问题,需要了解集线器和交换机在工作原理上的不同。集线器没有连接的概念,而是将每一个数据包发送到集线器的除了该数据包进来的端口外的每一个端口。然而,交换机是基于连接,当交换机上的一个临时连接进来一个数据包时,交换机会将数据包发送给连接的目的端口,接着从目的端口转发出去。所以在集线器环境中,我们能够将网络入侵检测系统的传感器接在任意端口;而对于交换机,必须确信传感器能够“看”到所需的网络流量。
这时就需要在交换机上设置专门监听端口。监听端口是交换机上配置的一个非凡端口,SPAN(Switch Port Analyzer)通常用来察看网络的使用情况,SPAN端口通常也被称为监听(Spy)端口或镜像(Mirror)端口。
交换机会将指定端口的通信数据镜像到该监听端口,这样网络传感器就可以捕捉到指定端口的数据。例如图1所示,我们为了监听交换机和资源主机之间的连接,就需要告诉交换机将资源主机的端口的数据镜像到IDS的端口。这种方法可以对传输的数据、接收的数据和上述两者起作用。某些交换机不支持镜像端口功能,某些交换机不能将100%的数据传输给镜像端口,因此即使IDS配置了针对特定攻击的检测规则,该攻击也会被漏掉。而且,交换机在同一时刻,只能镜像一个端口,所以监控多个机器将会变得很困难和不可能。

图1:交换机端口镜像监听
此外,在交换环境,端口镜像还有如下缺陷:
●通常连接到交换机时都是全双工的,即在100MB的交换机上双向流量可能达到200MB,但监听端口的流量最多达到100MB,从而导致交换机丢包;
●为了节省交换机端口,很可能配置为一个交换机端口监听多个其它端口,在正常的流量下,监听端口能够全部监听,但在受到攻击的时候,网络流量可能加大,从而使被监听的端口流量总和超过监听端口的上限,引起交换机丢包;
●一般的交换机在负载较大的时候,监听端口的速度赶不上其它端口的速度,从而导致交换机丢包。假如一个监听端口要监听所有交换机端口的数据,那么交换机的丢包现象会更加严重;
●增加监听端口即意味做需要更多的交换机端口,这可能需要购买额外的交换机,甚至修改网络结构(例如原来在一台交换机上的一个VLAN现在需要分布到两台交换机上);
●不同厂商、不同型号的交换机对镜像端口支持功能的强弱是不同的。有的交换机能够将任意端口设置为镜像端口,有的交换机只能将某个端口设置为镜像端口(如端口1);有的交换机在镜像端口上可以监听所有端口的数据,有的交换机在镜像端口上同时只能监听某一个端口;
●支持监听的交换机比不支持的交换机要贵许多,很多网络在设计时并没有考虑到网络监听的需求,购买的交换机并不支持网络监听,或者监听性能不好,从而在预备安装NIDS的时候需要更换交换机。
网友评论
评论
发 布

更多软件教程
  • 软件教程推荐
更多+
Greenfoot设置中文的方法

Greenfoot设置中文的方法

Greenfoot是一款简单易用的Java开发环境,该软件界面清爽简约,既可以作为一个开发框使用,也能够作为集成开发环境使用,操作起来十分简单。这款软件支持多种语言,但是默认的语言是英文,因此将该软件下载到电脑上的时候,会发现软件的界面语言是英文版本的,这对于英语基础较差的朋友来说,使用这款软件就会...

07-05

Egret UI Editor修改快捷键的方法

Egret UI Editor修改快捷键的方法

Egret UI Editor是一款开源的2D游戏开发代码编辑软件,其主要功能是针对Egret项目中的Exml皮肤文件进行可视化编辑,功能十分强大。我们在使用这款软件的过程中,可以将一些常用操作设置快捷键,这样就可以简化编程,从而提高代码编辑的工作效率。但是这款软件在日常生活中使用得不多,并且专业性...

07-05

KittenCode新建项目的方法

KittenCode新建项目的方法

KittenCode是一款十分专业的编程软件,该软件给用户提供了可视化的操作界面,支持Python语言的编程开发以及第三方库管理,并且提供了很多实用的工具,功能十分强大。我们在使用这款软件进行编程开发的过程中,最基本、最常做的操作就是新建项目,因此我们很有必要掌握新建项目的方法。但是这款软件的专业性...

07-05

Thonny设置中文的方法

Thonny设置中文的方法

Thonny是一款十分专业的Python编辑软件,该软件界面清爽简单,给用户提供了丰富的编程工具,具备代码补全、语法错误显示等功能,非常的适合新手使用。该软件还支持多种语言,所以在下载这款软件的时候,有时候下载到电脑中的软件是英文版本的,这对于英语基础较差的小伙伴来说,使用这款软件就会变得十分困难,...

07-05

最新软件下载