版权归原作者所有,如有侵权,请联系我们

[科普中国]-入侵监测

科学百科
原创
科学百科为用户提供权威科普内容,打造知识科普阵地
收藏

发展

1980年James P.Anderson写了一份题为《计算机安全威胁监控与监视》的技术报告,首次提出了“威胁”等术语。这里所指的“威胁”与入侵的含义基本相同,将入侵或威胁定义为:潜在的、有预谋的、未经授权的访问,企图致使系统不可靠或无法使用。1984年到1986年乔治敦大学的Dorothy Denning和SRI公司计算机科学实验室的Peter Neumann研究出了一个抽象的实时入侵检测系统模型——入侵检测专家系统IDEs(Intrusion Detection Expert Systems)。这是第一个在一个应用中运用了统计和基于规则两种技术的系统,是入侵检测研究中最有影响的一个系统,并将入侵检测作为一个新的安全防御措施提出。1989年,加州大学戴维斯分校的Todd Heberlein写了一篇题为“A Network Security Monitor”的论文,提出监控器用于捕获TCP/IP分组,第一次直接将网络流作为审计数据来源,因而可以在不将审计数据转换成统一格式的情况下监控异种主机,网络入侵检测从此诞生。2

原理入侵检测的原理,是从一组数据中检测出符合某一特点的数据。

(1)异常入侵检测原理

构筑异常检测原理的入侵检测系统,首先要建立系统或用户的正常行为模式库,不属于该库的行为被视为异常行为。但是,入侵性活动并不总是与异常活动相符合,而是存在下列4种可能性:入侵性非异常;非入侵性且异常;非入侵性非异常;入侵性且异常。

另外,设置异常的门槛值不当,往往会导致IDS许多误报警或者漏检的现象。IDS给安全管理员造成了系统安全假象,漏检对于重要的安全系统来说是相当危险的。

(2)误用入侵检测原理

误用入侵检测依赖于模式库。误用人侵检测能直接检测出模式库中已涵盖的入侵行为或不可接受的行为,而异常入侵检测是发现同正常行为相违背的行为。误用入侵检测的主要假设是具有能够被精确地按某种方式编码的攻击。通过捕获攻击及重新整理,可确认入侵活动是基于同一弱点进行攻击的入侵方法的变种。误用人侵检测主要的局限性是仅仅可检测已知的弱点.对检测未知的入侵可能用处不大.2

检测步骤**(1)**信息收集。入侵检测的第一步是信息收集,内容包括系统、网络、数据及用户活动的状态和行为。而且,需要在计算机网络系统中的若干不同关键点(不同网段和不同主机)收集信息,这除了尽可能扩大检测范围的因素外,还有一个重要的因素就是从一个源来的信息有可能看不出疑点,但从几个源来的信息的不一致性却是可疑行为或入侵的昂好标识。

当然,入侵检测很大程度上依赖于收集信息的可靠性和正确性,因此,很有必要只昶用所知道的真正的和精确的软件来报告这些信息。因为黑客经常替换软件以搞混和移走这些信息,例如替换被程序调用的子程序、库和其他工具。黑客对系统的修改可能使系统功能失常并看起来跟正常的一样,而实际上不是。例如,UNIX系统的PS指令可以被替换为一个不显示侵入过程的指令,或者是编辑器被替换成一个读取不同于指定文件的文件(票客隐藏了初始文件并用另一版本代替)。这需要保证用来检测网络系统的软件的完整性,特别是入侵检测系统软件本身应具有相当强的坚固性,防止被篡改而收集到错误的信息。

(2)信号分析。对上述四类收集到的有关系统、网络、数据及用户活动的状态和行为等信息,一般通过三种技术手段进行分析:模式匹配、统计分析和完整性分析。其中前两种方法用于实时的入侵检测,而完整性分析则用于事后分析。1

分类按功能分类1)基于主机的检测:对于这一类的检测通常是通过主机系统的日志和管理员的设置来检测。在系统的日志里记录了进入系统的ID、时间以及行为等。这些可通过打印机打印出来,以便进一步分析。管理员的设置包括用户权限、工作组、所使用的权限等。如果这些与管理员的设置有不同之处,说明系统有可能被入侵。

2)基于网络检测:网络入侵者通常利用网络的漏洞进入系统,如TCP/IP协议的三次握手,就给入侵者提供入侵系统的途径。任何一个网络适配器都具有收听其它数据包的功能。它首先检查每个数据包目的地址,只要符合本机地址的包就向上一层传输,这样,通过对适配器适当的配置,就可以捕获同一个子网上的所有数据包。所以,通常将入侵检测系统放置在网关或防火墙后,用来捕获所有进出的数据包,实现对所有的数据包进行监视。

3)基于内核的检测:基于内核的检测是从操作系统的内核收集数据,作为检测入侵或异常行为的依据。这种检测策略的特点是具有良好的检测效率和数据源的可信度。对于这种检测,要求操作系统具有开放性和原码公开性。目前基于这种检测的主要是针对开发与原码的Linux系统。2

按方法分类1)基于行为的检测:基于行为的检测是根据使用者的行为或资源使用状况的正常程度来判断是否入侵,而不依赖于具体行为是否出现来检测,所以又称为异常检测。它首先总结正常操作应该具有的特征(用户轮廓),当用户活动与正常行为有重大偏离时即被认为是入侵。因为不需要对每种入侵行为进行定义,所以能有效检测未知的入侵,漏报率低,误报率高。

2)基于知识的检测:基于知识的检测是指运用已知的方法,根据定义好的入侵模式,通过判断这些入侵模式是否出现来检测。因为有很大一部分的入侵是利用系统的脆弱性,所以通过分析入侵的特征、条件、排列以及相关事件就能描述入侵行为的迹象。这种方法是依据具体的特征库进行判断,所以检测准确度很高,误报率低、漏报率高。对于已知的攻击,它可以详细、准确地报告出攻击类型,但是对未知攻击却效果有限,而且特征库必须不断更新。2

功能大多数的IDS程序可以提供关于网络流量非常详尽的分析,它们可以监视任何定义好的流量。大多数的程序对FTP、HTTP和Telnet流量都有缺省的设置,还有其他的流量像NetBus,本地和远程登录失败等,用户也可以自己定制策略。下面讨论一些常见的检测技巧。

网络流量管理像Computer Associates’ eTrust Intrusiofl Detection(以前是SessionWall)、Axent IntruderAlert和ISS RealSecure等IDS程序,允许记录、报告和禁止几乎所有形式的网络访问。还可以用这些程序来监视某一台主机的网络流量,eTrust Intrusion Detection可以读取这台主机上用户最后访问的Web页。

如果定义了策略和规则,便可以获得FTP、SMTP、Telnet和任何其他的流量。这种规则有助于追查该连接和确定网络上发生过什么,现在正在发生什么。这些程序在需要确定网络中策略实施的一致性情况时,是非常有效的工具。

虽然IDS是安全管理人员或审计人员非常有价值的工具,但公司的雇员同样可以安装像eTrust Intrusion Detection或Intrude Alert这样的程序来访问重要的信息。攻击者不仅可以读取未加密的邮件,还可以嗅探密码和收集重要的协议方面的信息。所以,首要的工作是要检查在网络中是否有类似的程序在运行。3

系统扫描前面讲到如何应用不同的策略来加强有效的安全,这项任务需要在网络中不同的部分实施控制,从操作系统到扫描器、IDS程序和防火墙。许多安全专家将这些程序和IDS结合起来,系统完整性检查、广泛地记录日志、黑客“监狱”和引诱程序都是可以同IDS前后配合的有效工具。3

追踪IDS所能做到的不仅仅是记录事件,它还可以确定事件发生的位置,这是许多安全专家购买IDS的主要原因。通过追踪来源,可以更多地了解攻击者。这些经验不仅可以记录下攻击过程,同时也有助于确定解决方案。3