若将防火墙比喻为办公室门口的警卫,检查每一位进出者的身份,那么入侵检测系统就像是网上的警报器,当有人入侵时,它指出入侵者何在,他们正在做什么?防火墙只有对网上某个单一的点有作用,而且也只会检查每个进出网络封包的合法性。一旦入侵者攻破了防火墙,那么他就可以在你的局域网内随意通行,这正说明了入侵检测系统的重要性。检测入侵者的方法很多,许多专家建议应把这些方法适当组合,而非依赖单一的解决方案。
以主机为基础
Tripwire也许是目前最著名的入侵检测系统(它于1992年由Eugene Spafford和Gene Kim联手开发)。这个入侵检测系统是安装在电脑上的智能代理程序,它能检查系统是否有任何不寻常的改动,并验证关键文件是否被更改。
在安装操作系统后,就应该安装这个智能代理程序,它会记录每项重要系统文件的属性,包括错误修正码,以后,这个代理程序就会定期检阅重要文件的属性,并报告任何可能的改变。
另外一种入侵检测方式是检查所有进出主机的封包,它的运作方式就像个人的防火墙一样,如发现任何可疑的封包,它就会发出警告。这种类型的产品包括Symantec的Intruder Alert以及CyberSafe的Centrax。
以网络为基础
以网络为基础的入侵检测系统会仔细检查局域网内所有流通的封包,并把可疑的封包记录下来。这种入侵检测系统会搜查封包上有无被入侵者改过的痕迹,它会比较封包中的实际内容,并依照建立的攻击模式,检查封包是否改动。例如:这个系统可能会检查这个封包是否属于“有意要变更系统文件”的模式。
还有些攻击者会以通讯协议的漏洞作为发动攻击的基础。这些攻击者通常会寻找网络最脆弱的地方,一一探明所有正在运行但容易被入侵的各类服务器。这种攻击者的特征是,他们会试着联结某些网络的通讯端口,通常在那些端口上的服务都容易被攻击,例如:在port 80的HTTP。
还有一种攻击模式是使用格式错误或不合逻辑的TCP/IP封包的标头,像是攻击者可能会试着送出一个封包,同时要求服务器打开或关上网络的连线,对某些入侵检测系统而言,这种封包可能会被归类为一种阻绝服务的攻击事件。
目前市场上的网络入侵检测系统包括Cisco的Secure Intrusion Detection System、以及Internet Security System的RealSecure、和Symantec的NetProwler。
入侵检测系统还可被归类为以知识为基础和以行为做基础的侦测系统。大部分商业化的系统都是以知识为基础的,它们会比较任何系统的改变或网上流通的封包,是否满足某些攻击模式的特征,这种系统很少会发出假警报,但它们也有缺点,就是只能侦测出已知的攻击模式,对那些新的攻击模式它们就束手无策了。因此,使用者必须经常更新系统对攻击方面的知识。
那些以行为做基础的入侵检测系统则会监控每一个动作,监控系统及网络的活动中找出所有不寻常的动作,作为辨认攻击行动的基础。一旦发现某个攻击事件,它就会发出警报——但通常是假警报。假警报对这种入侵检测系统来说是“常事”,但这类系统最可贵的地方,在于它可能察觉出那些新型的攻击模式。
还有另外一种入侵检测的方式,就是诱饵法。它是一个完全独立的系统,专门让入侵者攻击,网管可以使用这种诱饵来处理所有进入的封包,任何要入侵这个诱饵系统主机的攻击者,往往会很容易“得手”,于是,网管就有充分的时间来追踪或记录攻击者的行为,而不会手忙脚乱。
入侵检测系统的建设需要详尽规划,以主机为基础的入侵检测系统必须要安装在干净的操作系统上,否则就可能让入侵者侵入到检测系统安装前就已经存在的程序里。
还有一件更重要的事,就是你必须对入侵事件建立一套清楚完整的处理流程。一般来说,当你发现入侵者时便拔掉主机电源,不能算是好方法。
在最好的情况下,建议你把入侵者留在系统中,并联系执法单位,以将其绳之以法。在执行这种操作时不要太慌张,发现入侵时的处理过程和程序应该在事前就准备好,你的目的是希望入侵者进不来,但一旦他已入侵,就要有能力侦测并锁定他。
|